macos-publish.yml 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. name: Publish MacOS
  2. on:
  3. workflow_dispatch:
  4. inputs:
  5. build-image-sha:
  6. type: string
  7. description: 'SHA for electron/build image'
  8. default: 'bc2f48b2415a670de18d13605b1cf0eb5fdbaae1'
  9. required: true
  10. upload-to-storage:
  11. description: 'Uploads to Azure storage'
  12. required: false
  13. default: '1'
  14. type: string
  15. run-macos-publish:
  16. description: 'Run the publish jobs vs just the build jobs'
  17. type: boolean
  18. default: false
  19. jobs:
  20. checkout-macos:
  21. runs-on: electron-arc-linux-amd64-32core
  22. container:
  23. image: ghcr.io/electron/build:${{ inputs.build-image-sha }}
  24. options: --user root
  25. volumes:
  26. - /mnt/cross-instance-cache:/mnt/cross-instance-cache
  27. - /var/run/sas:/var/run/sas
  28. env:
  29. GCLIENT_EXTRA_ARGS: '--custom-var=checkout_mac=True --custom-var=host_os=mac'
  30. steps:
  31. - name: Checkout Electron
  32. uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
  33. with:
  34. path: src/electron
  35. fetch-depth: 0
  36. - name: Checkout & Sync & Save
  37. uses: ./src/electron/.github/actions/checkout
  38. with:
  39. generate-sas-token: 'true'
  40. publish-x64-darwin:
  41. uses: ./.github/workflows/pipeline-segment-electron-build.yml
  42. needs: checkout-macos
  43. with:
  44. environment: production-release
  45. build-runs-on: macos-14-xlarge
  46. target-platform: macos
  47. target-arch: x64
  48. target-variant: darwin
  49. is-release: true
  50. gn-build-type: release
  51. generate-symbols: true
  52. upload-to-storage: ${{ inputs.upload-to-storage }}
  53. secrets: inherit
  54. publish-x64-mas:
  55. uses: ./.github/workflows/pipeline-segment-electron-build.yml
  56. needs: checkout-macos
  57. with:
  58. environment: production-release
  59. build-runs-on: macos-14-xlarge
  60. target-platform: macos
  61. target-arch: x64
  62. target-variant: mas
  63. is-release: true
  64. gn-build-type: release
  65. generate-symbols: true
  66. upload-to-storage: ${{ inputs.upload-to-storage }}
  67. secrets: inherit
  68. publish-arm64-darwin:
  69. uses: ./.github/workflows/pipeline-segment-electron-build.yml
  70. needs: checkout-macos
  71. with:
  72. environment: production-release
  73. build-runs-on: macos-14-xlarge
  74. target-platform: macos
  75. target-arch: arm64
  76. target-variant: darwin
  77. is-release: true
  78. gn-build-type: release
  79. generate-symbols: true
  80. upload-to-storage: ${{ inputs.upload-to-storage }}
  81. secrets: inherit
  82. publish-arm64-mas:
  83. uses: ./.github/workflows/pipeline-segment-electron-build.yml
  84. needs: checkout-macos
  85. with:
  86. environment: production-release
  87. build-runs-on: macos-14-xlarge
  88. target-platform: macos
  89. target-arch: arm64
  90. target-variant: mas
  91. is-release: true
  92. gn-build-type: release
  93. generate-symbols: true
  94. upload-to-storage: ${{ inputs.upload-to-storage }}
  95. secrets: inherit