Bug fixes
This commit is contained in:
parent
f85753fd9b
commit
511bd9a131
3 changed files with 33 additions and 19 deletions
6
.github/workflows/release-matrix.yml
vendored
6
.github/workflows/release-matrix.yml
vendored
|
|
@ -9,7 +9,7 @@ jobs:
|
|||
strategy:
|
||||
matrix:
|
||||
build_type: [ ubuntu, macos, windows ]
|
||||
gui: [ true, false ]
|
||||
gui: [ gui, cli ]
|
||||
runs-on: ${{ matrix.build_type }}-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
|
|
@ -38,8 +38,8 @@ jobs:
|
|||
uses: actions/upload-release-asset@v1
|
||||
with:
|
||||
upload_url: ${{ github.event.release.upload_url }}
|
||||
asset_name: ${{ env.PACKAGE_NAME }}-${{ env.PACKAGE_VERSION }}-${{ matrix.build_type }}.7z
|
||||
asset_path: ./lib/_builds/${{ env.PACKAGE_NAME }}-${{ env.PACKAGE_VERSION }}-${{ matrix.build_type }}64.7z
|
||||
asset_name: multi-downloader-nx-${{ matrix.build_type }}-{{ matrix.gui }}.7z
|
||||
asset_path: ./lib/_builds/multi-downloader-nx-${{ matrix.build_type }}64-{{ matrix.gui }}.7z
|
||||
asset_content_type: application/x-7z-compressed
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ import pkg from '../package.json';
|
|||
import modulesCleanup from 'removeNPMAbsolutePaths';
|
||||
import { exec } from 'pkg';
|
||||
import { execSync } from 'child_process';
|
||||
import { sep } from 'path';
|
||||
|
||||
const buildsDir = './_builds';
|
||||
const nodeVer = 'node16-';
|
||||
|
|
@ -13,19 +14,32 @@ const nodeVer = 'node16-';
|
|||
const isGUI = process.argv[3] === 'true';
|
||||
|
||||
if (isGUI) {
|
||||
buildGUI();
|
||||
buildGUI(buildType);
|
||||
} else {
|
||||
buildBinary(buildType);
|
||||
}
|
||||
})();
|
||||
|
||||
async function buildGUI() {
|
||||
async function buildGUI(buildType: string) {
|
||||
execSync('npx electron-forge make');
|
||||
const path = ['out', 'make'];
|
||||
const makerDir = fs.readdirSync(path.join(sep));
|
||||
if (makerDir.length !== 1)
|
||||
throw new Error(`Illegal state ${makerDir.join(sep)}`);
|
||||
path.push(makerDir[0]);
|
||||
const arch = fs.readdirSync(path.join(sep));
|
||||
if (arch.length !== 1)
|
||||
throw new Error(`Illegal state ${arch.join(sep)}`);
|
||||
path.push(arch[0]);
|
||||
execSync(`7z a -t7z "../../../../${buildsDir}/multi-downloader-nx-${buildType}-gui.7z" .`,{
|
||||
stdio:[0,1,2],
|
||||
cwd: path.join(sep)
|
||||
});
|
||||
}
|
||||
|
||||
// main
|
||||
async function buildBinary(buildType: string) {
|
||||
const buildStr = `${pkg.name}-${pkg.version}`;
|
||||
const buildStr = `multi-downloader-nx`;
|
||||
const acceptableBuilds = ['windows64','ubuntu64','macos64'];
|
||||
if(!acceptableBuilds.includes(buildType)){
|
||||
console.error('[ERROR] unknown build type!');
|
||||
|
|
@ -35,7 +49,7 @@ async function buildBinary(buildType: string) {
|
|||
if(!fs.existsSync(buildsDir)){
|
||||
fs.mkdirSync(buildsDir);
|
||||
}
|
||||
const buildFull = `${buildStr}-${buildType}`;
|
||||
const buildFull = `${buildStr}-${buildType}-cli`;
|
||||
const buildDir = `${buildsDir}/${buildFull}`;
|
||||
if(fs.existsSync(buildDir)){
|
||||
fs.removeSync(buildDir);
|
||||
|
|
|
|||
24
package.json
24
package.json
|
|
@ -76,18 +76,18 @@
|
|||
"start": "cd lib && electron-forge start",
|
||||
"docs": "ts-node modules/build-docs.ts",
|
||||
"tsc": "ts-node tsc.ts",
|
||||
"prebuild-windows-false": "npm run tsc false false",
|
||||
"prebuild-ubuntu-false": "npm run tsc false false",
|
||||
"prebuild-macos-false": "npm run tsc false false",
|
||||
"build-windows-false": "cd lib && node modules/build windows64",
|
||||
"build-ubuntu-false": "cd lib && node modules/build ubuntu64",
|
||||
"build-macos-false": "cd lib && node modules/build macos64",
|
||||
"prebuild-windows-true": "npm run tsc",
|
||||
"prebuild-ubuntu-true": "npm run tsc",
|
||||
"prebuild-macos-true": "npm run tsc",
|
||||
"build-windows-true": "cd lib && node modules/build notNeeded true",
|
||||
"build-ubuntu-true": "cd lib && node modules/build notNeeded true",
|
||||
"build-macos-true": "cd lib && node modules/build notNeeded true",
|
||||
"prebuild-windows-cli": "npm run tsc false false",
|
||||
"prebuild-ubuntu-cli": "npm run tsc false false",
|
||||
"prebuild-macos-cli": "npm run tsc false false",
|
||||
"build-windows-cli": "cd lib && node modules/build windows64",
|
||||
"build-ubuntu-cli": "cd lib && node modules/build ubuntu64",
|
||||
"build-macos-cli": "cd lib && node modules/build macos64",
|
||||
"prebuild-windows-gui": "npm run tsc",
|
||||
"prebuild-ubuntu-gui": "npm run tsc",
|
||||
"prebuild-macos-gui": "npm run tsc",
|
||||
"build-windows-gui": "cd lib && node modules/build windows64 true",
|
||||
"build-ubuntu-gui": "cd lib && node modules/build ubuntu64 true",
|
||||
"build-macos-gui": "cd lib && node modules/build macos64 true",
|
||||
"eslint": "eslint *.js modules",
|
||||
"eslint-fix": "eslint *.js modules --fix",
|
||||
"pretest": "npm run tsc",
|
||||
|
|
|
|||
Loading…
Reference in a new issue