diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index e889f15740..bd251d3dbd 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -6,6 +6,9 @@ on: release_tag_name: description: 'Release Tag Name (vX.X.X)' required: true + browser_extension_ref: + description: 'Browser Extension ref (defaults to `master`):' + default: master jobs: @@ -88,7 +91,7 @@ jobs: snapcraft logout - windows: + windows-signed: runs-on: windows-latest needs: setup steps: @@ -164,14 +167,6 @@ jobs: SIGNING_CERT_NAME: ${{ secrets.SIGNING_CERT_NAME }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - name: Rename appx files for store - shell: pwsh - run: | - Copy-Item "./dist/Bitwarden-${{ env.PACKAGE_VERSION }}-ia32.appx" ` - -Destination "./dist/Bitwarden-${{ env.PACKAGE_VERSION }}-ia32-store.appx" - Copy-Item "./dist/Bitwarden-${{ env.PACKAGE_VERSION }}-x64.appx" ` - -Destination "./dist/Bitwarden-${{ env.PACKAGE_VERSION }}-x64-store.appx" - - name: Deploy to Chocolatey shell: pwsh run: | @@ -186,7 +181,6 @@ jobs: choco push - name: Upload Chocolatey nupkg release asset - id: upload-macos-checksum uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -197,6 +191,66 @@ jobs: asset_content_type: application + windows-store: + runs-on: windows-latest + needs: setup + steps: + - name: Set up Node + uses: actions/setup-node@v1 + with: + node-version: '10.x' + + - name: Set Node options + run: echo "NODE_OPTIONS=--max_old_space_size=4096" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append + shell: pwsh + + - name: Set up environment + shell: pwsh + run: | + choco install checksum --no-progress + + - name: Print environment + run: | + node --version + npm --version + choco --version + + - name: Checkout repo + uses: actions/checkout@v2 + + - name: Load package version + run: ./.github/scripts/load-version.ps1 + shell: pwsh + + - name: Install Node dependencies + run: npm install + + - name: Run linter + run: npm run lint + + - name: Build, Sign & Release + run: npm run dist:win:ci + + - name: Upload unsigned ia32 Windows Store release asset + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ needs.setup.outputs.release_upload_url }} + asset_name: Bitwarden-${{ env.PACKAGE_VERSION }}-ia32-store.appx + asset_path: ./dist/Bitwarden-${{ env.PACKAGE_VERSION }}-ia32.appx + asset_content_type: application + + - name: Upload unsigned x64 Windows Store release asset + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ needs.setup.outputs.release_upload_url }} + asset_name: Bitwarden-${{ env.PACKAGE_VERSION }}-x64-store.appx + asset_path: ./dist/Bitwarden-${{ env.PACKAGE_VERSION }}-x64.appx + asset_content_type: application + macos: runs-on: macos-latest needs: setup @@ -266,6 +320,7 @@ jobs: uses: actions/checkout@v2 with: repository: 'bitwarden/browser' + ref: ${{ github.event.inputs.browser_extension_ref }} path: 'dist-safari/browser' - name: Build Safari extension diff --git a/sign.js b/sign.js index 107f048d46..9f8277c02f 100644 --- a/sign.js +++ b/sign.js @@ -1,8 +1,7 @@ exports.default = async function(configuration) { if ( parseInt(process.env.ELECTRON_BUILDER_SIGN) === 1 && - configuration.path.slice(-4) == ".exe" && - !(configuration.path.includes('win-unpacked') || configuration.path.includes('win-ia32-unpacked')) + configuration.path.slice(-4) == ".exe" ) { console.log(`[*] Signing file: ${configuration.path}`) require("child_process").execSync(