Skip to content

Commit

Permalink
test: snap classic confinement can't be used on Mac because of Docker…
Browse files Browse the repository at this point in the history
… issue
  • Loading branch information
develar committed Jan 30, 2018
1 parent 20c12be commit 61a9fc5
Show file tree
Hide file tree
Showing 4 changed files with 10 additions and 37 deletions.
4 changes: 1 addition & 3 deletions docker/base/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,12 @@ RUN curl -L https://yarnpkg.com/latest.tar.gz | tar xvz && mv yarn-* /yarn && ln
apt-get update -y && \
# add repo for git-lfs
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | bash && \
# libsecret-1-0 for keytar
# git ssh for using as docker image on CircleCI
# python for node-gyp
# rpm is required for FPM to build rpm package
# libpng16-16 is required for libicns1_0.8.1-3.1 (on xenial)
# TODO remove graphicsmagick (3 months after electron-builder 19.53.0)
# libgtk2.0-dev for snap desktop-gtk2 (see /~https://github.com/ubuntu/snapcraft-desktop-helpers/blob/master/snapcraft.yaml#L248)
apt-get install --no-install-recommends -y libsecret-1-0 git snapcraft qtbase5-dev bsdtar build-essential autoconf libssl-dev icnsutils libopenjp2-7 graphicsmagick gcc-multilib g++-multilib libgnome-keyring-dev lzip rpm python libcurl3 git git-lfs ssh libpng16-16 unzip libgtk2.0-dev && \
apt-get install --no-install-recommends -y git snapcraft qtbase5-dev bsdtar build-essential autoconf libssl-dev icnsutils libopenjp2-7 gcc-multilib g++-multilib lzip rpm python libcurl3 git git-lfs ssh libpng16-16 unzip libgtk2.0-dev && \
# libicns
curl -O http://mirrors.kernel.org/ubuntu/pool/universe/libi/libicns/libicns1_0.8.1-3.1_amd64.deb && dpkg --install libicns1_0.8.1-3.1_amd64.deb && unlink libicns1_0.8.1-3.1_amd64.deb && \
git lfs install && \
Expand Down
9 changes: 4 additions & 5 deletions packages/electron-builder-lib/src/winPackager.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import BluebirdPromise from "bluebird-lst"
import { Arch, asArray, exec, execWine, InvalidConfigurationError, log, use } from "builder-util"
import { parseDn } from "builder-util-runtime"
import { createHash } from "crypto"
Expand Down Expand Up @@ -29,23 +28,23 @@ export class WinPackager extends PlatformPackager<WindowsConfiguration> {
const platformSpecificBuildOptions = this.platformSpecificBuildOptions
if (platformSpecificBuildOptions.certificateSubjectName != null || platformSpecificBuildOptions.certificateSha1 != null) {
if (platformSpecificBuildOptions.sign != null) {
return BluebirdPromise.resolve(null)
return Promise.resolve(null)
}
return this.vm.value.then(vm => getCertificateFromStoreInfo(platformSpecificBuildOptions, vm))
}

const certificateFile = platformSpecificBuildOptions.certificateFile
if (certificateFile != null) {
const certificatePassword = this.getCscPassword()
return BluebirdPromise.resolve({
return Promise.resolve({
file: certificateFile,
password: certificatePassword == null ? null : certificatePassword.trim(),
})
}

const cscLink = process.env.WIN_CSC_LINK || this.packagerOptions.cscLink
if (cscLink == null) {
return BluebirdPromise.resolve(null)
return Promise.resolve(null)
}

return downloadCertificate(cscLink, this.info.tempDirManager, this.projectDir)
Expand All @@ -59,7 +58,7 @@ export class WinPackager extends PlatformPackager<WindowsConfiguration> {

private _iconPath = new Lazy(() => this.getOrConvertIcon("ico"))

readonly vm = new Lazy<VmManager>(() => process.platform === "win32" ? BluebirdPromise.resolve(new VmManager()) : getWindowsVm(this.debugLogger))
readonly vm = new Lazy<VmManager>(() => process.platform === "win32" ? Promise.resolve(new VmManager()) : getWindowsVm(this.debugLogger))

readonly computedPublisherSubjectOnWindowsOnly = new Lazy<string | null>(async () => {
const cscInfo = await this.cscInfo.value
Expand Down
8 changes: 4 additions & 4 deletions test/out/linux/__snapshots__/snapTest.js.snap
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ Object {
],
},
},
"confinement": "strict",
"confinement": "classic",
"description": "Test Application (test quite “ #378)",
"grade": "stable",
"icon": "snap/gui/icon.png",
Expand Down Expand Up @@ -74,7 +74,7 @@ Object {
],
},
},
"confinement": "strict",
"confinement": "classic",
"description": "Test Application (test quite “ #378)",
"grade": "stable",
"icon": "snap/gui/icon.png",
Expand Down Expand Up @@ -130,7 +130,7 @@ Object {
],
},
},
"confinement": "strict",
"confinement": "classic",
"description": "Test Application (test quite “ #378)",
"grade": "stable",
"icon": "snap/gui/icon.png",
Expand Down Expand Up @@ -187,7 +187,7 @@ Object {
],
},
},
"confinement": "strict",
"confinement": "classic",
"description": "Test Application (test quite “ #378)",
"grade": "stable",
"icon": "snap/gui/icon.png",
Expand Down
26 changes: 1 addition & 25 deletions test/src/linux/snapTest.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,31 +9,6 @@ if (process.env.SNAP_TEST === "false") {

const snapTarget = Platform.LINUX.createTarget("snap")

// test.skip("platform", app({
// targets: snapTarget,
// config: {
// extraMetadata: {
// name: "sep-p",
// },
// productName: "Sep P",
// linux: {
// executableName: "Sep"
// },
// snap: {
// ubuntuAppPlatformContent: "ubuntu-app-platform1",
// },
// },
// effectiveOptionComputed: async ({snap, desktopFile}) => {
// delete snap.parts.app.source
// delete snap.parts.extra.source
// expect(snap).toMatchSnapshot()
//
// const content = await readFile(desktopFile, "utf-8")
// expect(content).toMatchSnapshot()
// return false
// },
// }))

test.ifAll.ifDevOrLinuxCi("snap", app({
targets: snapTarget,
config: {
Expand All @@ -56,6 +31,7 @@ test.ifAll.ifDevOrLinuxCi("default stagePackages", async () => {
snap: {
stagePackages: p,
plugs: p,
confinement: "classic",
}
},
effectiveOptionComputed: async ({snap}) => {
Expand Down

0 comments on commit 61a9fc5

Please sign in to comment.