diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index cce2b35c8..838202639 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -10,11 +10,11 @@ env: PARTICLE_WINDOWS_SIGNING_PASS: ${{ secrets.PARTICLE_WINDOWS_SIGNING_PASS }} jobs: - call-tests: - uses: ./.github/workflows/tests.yml - secrets: inherit + #call-tests: + # uses: ./.github/workflows/tests.yml + # secrets: inherit build: - needs: call-tests + #needs: call-tests runs-on: ubuntu-latest # Choose an appropriate runner steps: - uses: actions/checkout@v3 @@ -58,13 +58,20 @@ jobs: - name: 'Install makensis (apt)' run: sudo apt update && sudo apt install -y nsis nsis-pluginapi + - name: Download and unzip osslsigncode binary + run: | + mkdir osslsigncode + curl -LJO https://github.com/mtrojnar/osslsigncode/releases/download/2.6/osslsigncode-2.6-ubuntu-20.04.zip + unzip osslsigncode-2.6-ubuntu-20.04.zip -d osslsigncode + chmod +x osslsigncode/bin/osslsigncode + - name: Sign Windows package run: | - npm run sign:win + npm run sign:win -- particle-cli-win-x64 $(pwd)/osslsigncode/bin/osslsigncode - name: Generate Windows installer run: | - npm run generate:win-installer + npm run generate:win-installer $(pwd)/osslsigncode/bin/osslsigncode - name: Save Cache uses: actions/cache@v3 diff --git a/scripts/generate-win-installer.js b/scripts/generate-win-installer.js index 299e95cf8..c169f08a6 100644 --- a/scripts/generate-win-installer.js +++ b/scripts/generate-win-installer.js @@ -1,6 +1,6 @@ const fs = require('fs-extra'); const execa = require('execa'); - +const osslsigncode = process.argv[2] || 'osslsigncode'; (async () => { // generate ParticleCLISetup installer const args = [ @@ -10,6 +10,6 @@ const execa = require('execa'); await fs.move('./installer/windows/ParticleCLISetup.exe', './build/ParticleCLISetup.exe', { overwrite: true }); console.log('Generated ParticleCLISetup installer'); console.log('Signing Windows Installers'); - await execa('node', ['./scripts/win-sign.js', 'ParticleCLISetup'], { stdio: 'inherit' }); + await execa('node', ['./scripts/win-sign.js', 'ParticleCLISetup', osslsigncode], { stdio: 'inherit' }); console.log('done'); })(); diff --git a/scripts/win-sign.js b/scripts/win-sign.js index b0afee115..83e0a2d5e 100644 --- a/scripts/win-sign.js +++ b/scripts/win-sign.js @@ -8,7 +8,7 @@ const log = require('../src/lib/log').info; const logErrorAndExit = require('../src/lib/log').error; const BUILD_DIR = path.join(__dirname, '..', 'build'); const particleBuildName = process.argv[2] || 'particle-cli-win-x64'; - +const osslsigncode = process.argv[3] || 'osslsigncode'; (async () => { try { @@ -61,7 +61,7 @@ function winSign(exe, params) { exe.signed ]; - return execa('osslsigncode', args); + return execa(`${osslsigncode}`, args); } function getSigningParams(pkgJSON, tmpDir) {