name: Publish Windows on: workflow_dispatch: inputs: build-image-sha: type: string description: 'SHA for electron/build image' default: '933c7d6ff6802706875270bec2e3c891cf8add3f' required: true upload-to-storage: description: 'Uploads to Azure storage' required: false default: '1' type: string run-windows-publish: description: 'Run the publish jobs vs just the build jobs' type: boolean default: false permissions: {} jobs: checkout-windows: runs-on: electron-arc-centralus-linux-amd64-32core permissions: contents: read container: image: ghcr.io/electron/build:${{ inputs.build-image-sha }} options: --user root --device /dev/fuse --cap-add SYS_ADMIN volumes: - /mnt/win-cache:/mnt/win-cache - /var/run/sas:/var/run/sas env: CHROMIUM_GIT_COOKIE_WINDOWS_STRING: ${{ secrets.CHROMIUM_GIT_COOKIE_WINDOWS_STRING }} GCLIENT_EXTRA_ARGS: '--custom-var=checkout_win=True' TARGET_OS: 'win' ELECTRON_DEPOT_TOOLS_WIN_TOOLCHAIN: '1' outputs: build-image-sha: ${{ inputs.build-image-sha }} steps: - name: Checkout Electron uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 with: path: src/electron fetch-depth: 0 - name: Checkout & Sync & Save uses: ./src/electron/.github/actions/checkout with: generate-sas-token: 'true' target-platform: win publish-x64-win: uses: ./.github/workflows/pipeline-segment-electron-build.yml permissions: contents: read needs: checkout-windows with: environment: production-release build-runs-on: electron-arc-centralus-windows-amd64-16core target-platform: win target-arch: x64 is-release: true gn-build-type: release generate-symbols: true upload-to-storage: ${{ inputs.upload-to-storage }} secrets: inherit publish-arm64-win: uses: ./.github/workflows/pipeline-segment-electron-build.yml permissions: contents: read needs: checkout-windows with: environment: production-release build-runs-on: electron-arc-centralus-windows-amd64-16core target-platform: win target-arch: arm64 is-release: true gn-build-type: release generate-symbols: true upload-to-storage: ${{ inputs.upload-to-storage }} secrets: inherit publish-x86-win: uses: ./.github/workflows/pipeline-segment-electron-build.yml permissions: contents: read needs: checkout-windows with: environment: production-release build-runs-on: electron-arc-centralus-windows-amd64-16core target-platform: win target-arch: x86 is-release: true gn-build-type: release generate-symbols: true upload-to-storage: ${{ inputs.upload-to-storage }} secrets: inherit