diff --git a/packages/maker/deb/src/MakerDeb.ts b/packages/maker/deb/src/MakerDeb.ts index a2cd819149..38bbbbdaad 100644 --- a/packages/maker/deb/src/MakerDeb.ts +++ b/packages/maker/deb/src/MakerDeb.ts @@ -31,7 +31,7 @@ export default class MakerDeb extends MakerBase { // eslint-disable-next-line global-require, import/no-unresolved const installer = require('electron-installer-debian'); - const outDir = path.resolve(makeDir); + const outDir = path.resolve(makeDir, 'deb', targetArch); await this.ensureDirectory(outDir); const { packagePaths } = await installer({ diff --git a/packages/maker/deb/test/MakerDeb_spec.ts b/packages/maker/deb/test/MakerDeb_spec.ts index 61fade8e00..c3ef232c5b 100644 --- a/packages/maker/deb/test/MakerDeb_spec.ts +++ b/packages/maker/deb/test/MakerDeb_spec.ts @@ -54,7 +54,7 @@ describe('MakerDeb', () => { arch: debianArch(process.arch as ForgeArch), options: {}, src: dir, - dest: makeDir, + dest: path.join(makeDir, 'deb', process.arch), rename: undefined, }); expect(maker.config).to.deep.equal(config); @@ -80,7 +80,7 @@ describe('MakerDeb', () => { productName: 'Debian', }, src: dir, - dest: makeDir, + dest: path.join(makeDir, 'deb', process.arch), rename: undefined, }); }); diff --git a/packages/maker/flatpak/src/MakerFlatpak.ts b/packages/maker/flatpak/src/MakerFlatpak.ts index 1ed4ce26ed..bd5071d732 100644 --- a/packages/maker/flatpak/src/MakerFlatpak.ts +++ b/packages/maker/flatpak/src/MakerFlatpak.ts @@ -34,7 +34,7 @@ export default class MakerFlatpak extends MakerBase { const installer = require('@malept/electron-installer-flatpak'); const arch = flatpakArch(targetArch); - const outDir = path.resolve(makeDir, 'flatpak'); + const outDir = path.resolve(makeDir, 'flatpak', arch); await this.ensureDirectory(outDir); const flatpakConfig = Object.assign({}, this.config, { diff --git a/packages/maker/flatpak/test/MakerFlatpak_spec.ts b/packages/maker/flatpak/test/MakerFlatpak_spec.ts index d1961115d5..bf1045057b 100644 --- a/packages/maker/flatpak/test/MakerFlatpak_spec.ts +++ b/packages/maker/flatpak/test/MakerFlatpak_spec.ts @@ -52,10 +52,11 @@ describe('MakerFlatpak', () => { dir, makeDir, appName, targetArch, packageJSON, }); const opts = eifStub.firstCall.args[0]; + const expectedArch = flatpakArch(process.arch as ForgeArch); expect(opts).to.deep.equal({ - arch: flatpakArch(process.arch as ForgeArch), + arch: expectedArch, src: dir, - dest: path.resolve(makeDir, 'flatpak'), + dest: path.resolve(makeDir, 'flatpak', expectedArch), }); }); @@ -72,13 +73,14 @@ describe('MakerFlatpak', () => { dir, makeDir, appName, targetArch, packageJSON, }); const opts = eifStub.firstCall.args[0]; + const expectedArch = flatpakArch(process.arch as ForgeArch); expect(opts).to.deep.equal({ - arch: flatpakArch(process.arch as ForgeArch), + arch: expectedArch, options: { productName: 'Flatpak', }, src: dir, - dest: path.resolve(makeDir, 'flatpak'), + dest: path.resolve(makeDir, 'flatpak', expectedArch), }); }); }); diff --git a/packages/maker/rpm/src/MakerRpm.ts b/packages/maker/rpm/src/MakerRpm.ts index 7a072594c8..bcbcd73f10 100644 --- a/packages/maker/rpm/src/MakerRpm.ts +++ b/packages/maker/rpm/src/MakerRpm.ts @@ -31,7 +31,7 @@ export default class MakerRpm extends MakerBase { // eslint-disable-next-line global-require, import/no-unresolved const installer = require('electron-installer-redhat'); - const outDir = path.resolve(makeDir); + const outDir = path.resolve(makeDir, 'rpm', targetArch); await this.ensureDirectory(outDir); const { packagePaths } = await installer({ diff --git a/packages/maker/rpm/test/MakerRpm_spec.ts b/packages/maker/rpm/test/MakerRpm_spec.ts index 78791ef195..0061e00d24 100644 --- a/packages/maker/rpm/test/MakerRpm_spec.ts +++ b/packages/maker/rpm/test/MakerRpm_spec.ts @@ -53,7 +53,7 @@ describe('MakerRpm', () => { expect(opts).to.deep.equal({ arch: rpmArch(process.arch as ForgeArch), src: dir, - dest: makeDir, + dest: path.join(makeDir, 'rpm', process.arch), rename: undefined, }); }); @@ -77,7 +77,7 @@ describe('MakerRpm', () => { productName: 'Redhat', }, src: dir, - dest: makeDir, + dest: path.join(makeDir, 'rpm', process.arch), rename: undefined, }); }); diff --git a/packages/maker/snap/src/MakerSnap.ts b/packages/maker/snap/src/MakerSnap.ts index b521bcb2e0..d0315d54b2 100644 --- a/packages/maker/snap/src/MakerSnap.ts +++ b/packages/maker/snap/src/MakerSnap.ts @@ -22,7 +22,7 @@ export default class MakerSnap extends MakerBase { // eslint-disable-next-line global-require const installer = require('electron-installer-snap'); - const outPath = path.resolve(makeDir, 'snap'); + const outPath = path.resolve(makeDir, 'snap', targetArch); await this.ensureDirectory(outPath); diff --git a/packages/maker/snap/test/MakerSnap_spec.ts b/packages/maker/snap/test/MakerSnap_spec.ts index 8367aa310c..063f87b77a 100644 --- a/packages/maker/snap/test/MakerSnap_spec.ts +++ b/packages/maker/snap/test/MakerSnap_spec.ts @@ -51,7 +51,7 @@ describe('MakerSnap', () => { expect(opts).to.deep.equal({ arch: process.arch, src: dir, - dest: path.resolve(makeDir, 'snap'), + dest: path.resolve(makeDir, 'snap', process.arch), }); }); @@ -69,7 +69,7 @@ describe('MakerSnap', () => { expect(opts).to.deep.equal({ arch: process.arch, src: dir, - dest: path.resolve(makeDir, 'snap'), + dest: path.resolve(makeDir, 'snap', process.arch), description: 'Snap description', }); }); diff --git a/packages/maker/zip/src/MakerZIP.ts b/packages/maker/zip/src/MakerZIP.ts index d1e0a0f901..af309a353d 100644 --- a/packages/maker/zip/src/MakerZIP.ts +++ b/packages/maker/zip/src/MakerZIP.ts @@ -20,6 +20,7 @@ export default class MakerZIP extends MakerBase { makeDir, appName, packageJSON, + targetArch, targetPlatform, }: MakerOptions) { // eslint-disable-next-line global-require @@ -27,7 +28,7 @@ export default class MakerZIP extends MakerBase { const zipDir = ['darwin', 'mas'].includes(targetPlatform) ? path.resolve(dir, `${appName}.app`) : dir; - const zipPath = path.resolve(makeDir, `${path.basename(dir)}-${packageJSON.version}.zip`); + const zipPath = path.resolve(makeDir, 'zip', targetPlatform, targetArch, `${path.basename(dir)}-${packageJSON.version}.zip`); await this.ensureFile(zipPath); await promisify(zip)(zipDir, zipPath);