build: add arm64 macOS publish jobs (#24652)
* build: add arm64 macOS publish jobs * update ci-release-build to run new arm64 macOS publish jobs * fixup circleci config validate issues Co-authored-by: John Kleinschmidt <jkleinsc@github.com>
This commit is contained in:
parent
a12602dbc3
commit
589968f9fc
3 changed files with 117 additions and 22 deletions
|
@ -37,10 +37,18 @@ parameters:
|
|||
type: boolean
|
||||
default: false
|
||||
|
||||
run-osx-publish-arm64:
|
||||
type: boolean
|
||||
default: false
|
||||
|
||||
run-mas-publish:
|
||||
type: boolean
|
||||
default: false
|
||||
|
||||
run-mas-publish-arm64:
|
||||
type: boolean
|
||||
default: false
|
||||
|
||||
run-linux-publish:
|
||||
type: boolean
|
||||
default: false
|
||||
|
@ -145,6 +153,7 @@ env-mas: &env-mas
|
|||
env-mas-apple-silicon: &env-mas-apple-silicon
|
||||
GN_EXTRA_ARGS: 'target_cpu = "arm64" is_mas_build = true'
|
||||
MAS_BUILD: 'true'
|
||||
TARGET_ARCH: arm64
|
||||
|
||||
# Misc build configuration options.
|
||||
env-enable-sccache: &env-enable-sccache
|
||||
|
@ -1764,7 +1773,7 @@ jobs:
|
|||
<<: *env-enable-sccache
|
||||
UPLOAD_TO_S3: << pipeline.parameters.upload-to-s3 >>
|
||||
steps:
|
||||
- electron-publish:
|
||||
- electron-publish:
|
||||
attach: false
|
||||
checkout: true
|
||||
|
||||
|
@ -1776,7 +1785,7 @@ jobs:
|
|||
<<: *env-enable-sccache
|
||||
UPLOAD_TO_S3: << pipeline.parameters.upload-to-s3 >>
|
||||
steps:
|
||||
- electron-publish:
|
||||
- electron-publish:
|
||||
attach: true
|
||||
checkout: false
|
||||
|
||||
|
@ -1828,7 +1837,7 @@ jobs:
|
|||
<<: *env-32bit-release
|
||||
UPLOAD_TO_S3: << pipeline.parameters.upload-to-s3 >>
|
||||
steps:
|
||||
- electron-publish:
|
||||
- electron-publish:
|
||||
attach: false
|
||||
checkout: true
|
||||
|
||||
|
@ -1842,7 +1851,7 @@ jobs:
|
|||
<<: *env-32bit-release
|
||||
UPLOAD_TO_S3: << pipeline.parameters.upload-to-s3 >>
|
||||
steps:
|
||||
- electron-publish:
|
||||
- electron-publish:
|
||||
attach: true
|
||||
checkout: false
|
||||
|
||||
|
@ -1895,7 +1904,7 @@ jobs:
|
|||
GCLIENT_EXTRA_ARGS: '--custom-var=checkout_arm=True --custom-var=checkout_boto=True --custom-var=checkout_requests=True'
|
||||
UPLOAD_TO_S3: << pipeline.parameters.upload-to-s3 >>
|
||||
steps:
|
||||
- electron-publish:
|
||||
- electron-publish:
|
||||
attach: false
|
||||
checkout: true
|
||||
|
||||
|
@ -1909,7 +1918,7 @@ jobs:
|
|||
<<: *env-32bit-release
|
||||
UPLOAD_TO_S3: << pipeline.parameters.upload-to-s3 >>
|
||||
steps:
|
||||
- electron-publish:
|
||||
- electron-publish:
|
||||
attach: true
|
||||
checkout: false
|
||||
|
||||
|
@ -1969,7 +1978,7 @@ jobs:
|
|||
GCLIENT_EXTRA_ARGS: '--custom-var=checkout_arm64=True --custom-var=checkout_boto=True --custom-var=checkout_requests=True'
|
||||
UPLOAD_TO_S3: << pipeline.parameters.upload-to-s3 >>
|
||||
steps:
|
||||
- electron-publish:
|
||||
- electron-publish:
|
||||
attach: false
|
||||
checkout: true
|
||||
|
||||
|
@ -1982,7 +1991,7 @@ jobs:
|
|||
<<: *env-enable-sccache
|
||||
UPLOAD_TO_S3: << pipeline.parameters.upload-to-s3 >>
|
||||
steps:
|
||||
- electron-publish:
|
||||
- electron-publish:
|
||||
attach: true
|
||||
checkout: false
|
||||
|
||||
|
@ -2031,7 +2040,21 @@ jobs:
|
|||
GCLIENT_EXTRA_ARGS: '--custom-var=checkout_boto=True --custom-var=checkout_requests=True'
|
||||
UPLOAD_TO_S3: << pipeline.parameters.upload-to-s3 >>
|
||||
steps:
|
||||
- electron-publish:
|
||||
- electron-publish:
|
||||
attach: false
|
||||
checkout: true
|
||||
|
||||
osx-publish-arm64:
|
||||
<<: *machine-mac-large-arm
|
||||
environment:
|
||||
<<: *env-mac-large-release
|
||||
<<: *env-release-build
|
||||
<<: *env-enable-sccache
|
||||
<<: *env-apple-silicon
|
||||
GCLIENT_EXTRA_ARGS: '--custom-var=checkout_boto=True --custom-var=checkout_requests=True'
|
||||
UPLOAD_TO_S3: << pipeline.parameters.upload-to-s3 >>
|
||||
steps:
|
||||
- electron-publish:
|
||||
attach: false
|
||||
checkout: true
|
||||
|
||||
|
@ -2043,7 +2066,20 @@ jobs:
|
|||
<<: *env-enable-sccache
|
||||
UPLOAD_TO_S3: << pipeline.parameters.upload-to-s3 >>
|
||||
steps:
|
||||
- electron-publish:
|
||||
- electron-publish:
|
||||
attach: true
|
||||
checkout: false
|
||||
|
||||
osx-publish-arm64-skip-checkout:
|
||||
<<: *machine-mac-large-arm
|
||||
environment:
|
||||
<<: *env-mac-large-release
|
||||
<<: *env-release-build
|
||||
<<: *env-enable-sccache
|
||||
<<: *env-apple-silicon
|
||||
UPLOAD_TO_S3: << pipeline.parameters.upload-to-s3 >>
|
||||
steps:
|
||||
- electron-publish:
|
||||
attach: true
|
||||
checkout: false
|
||||
|
||||
|
@ -2112,11 +2148,25 @@ jobs:
|
|||
GCLIENT_EXTRA_ARGS: '--custom-var=checkout_boto=True --custom-var=checkout_requests=True'
|
||||
UPLOAD_TO_S3: << pipeline.parameters.upload-to-s3 >>
|
||||
steps:
|
||||
- electron-publish:
|
||||
- electron-publish:
|
||||
attach: false
|
||||
checkout: true
|
||||
|
||||
mas-publish-skip-checkout:
|
||||
mas-publish-arm64:
|
||||
<<: *machine-mac-large-arm
|
||||
environment:
|
||||
<<: *env-mac-large-release
|
||||
<<: *env-mas-apple-silicon
|
||||
<<: *env-release-build
|
||||
<<: *env-enable-sccache
|
||||
GCLIENT_EXTRA_ARGS: '--custom-var=checkout_boto=True --custom-var=checkout_requests=True'
|
||||
UPLOAD_TO_S3: << pipeline.parameters.upload-to-s3 >>
|
||||
steps:
|
||||
- electron-publish:
|
||||
attach: false
|
||||
checkout: true
|
||||
|
||||
mas-publish-x64-skip-checkout:
|
||||
<<: *machine-mac-large
|
||||
environment:
|
||||
<<: *env-mac-large-release
|
||||
|
@ -2125,7 +2175,20 @@ jobs:
|
|||
<<: *env-enable-sccache
|
||||
UPLOAD_TO_S3: << pipeline.parameters.upload-to-s3 >>
|
||||
steps:
|
||||
- electron-publish:
|
||||
- electron-publish:
|
||||
attach: true
|
||||
checkout: false
|
||||
|
||||
mas-publish-arm64-skip-checkout:
|
||||
<<: *machine-mac-large-arm
|
||||
environment:
|
||||
<<: *env-mac-large-release
|
||||
<<: *env-mas-apple-silicon
|
||||
<<: *env-release-build
|
||||
<<: *env-enable-sccache
|
||||
UPLOAD_TO_S3: << pipeline.parameters.upload-to-s3 >>
|
||||
steps:
|
||||
- electron-publish:
|
||||
attach: true
|
||||
checkout: false
|
||||
|
||||
|
@ -2429,6 +2492,18 @@ workflows:
|
|||
- mas-publish:
|
||||
context: release-env
|
||||
|
||||
publish-osx-arm64:
|
||||
when: << pipeline.parameters.run-osx-publish-arm64 >>
|
||||
jobs:
|
||||
- osx-publish-arm64:
|
||||
context: release-env
|
||||
|
||||
publish-mas-arm64:
|
||||
when: << pipeline.parameters.run-mas-publish-arm64 >>
|
||||
jobs:
|
||||
- mas-publish-arm64:
|
||||
context: release-env
|
||||
|
||||
publish-macos:
|
||||
when: << pipeline.parameters.run-macos-publish >>
|
||||
jobs:
|
||||
|
@ -2436,7 +2511,13 @@ workflows:
|
|||
- osx-publish-x64-skip-checkout:
|
||||
requires:
|
||||
- mac-checkout
|
||||
- mas-publish-skip-checkout:
|
||||
- mas-publish-x64-skip-checkout:
|
||||
requires:
|
||||
- mac-checkout
|
||||
- osx-publish-arm64-skip-checkout:
|
||||
requires:
|
||||
- mac-checkout
|
||||
- mas-publish-arm64-skip-checkout:
|
||||
requires:
|
||||
- mac-checkout
|
||||
|
||||
|
|
|
@ -15,19 +15,21 @@ const appVeyorJobs = {
|
|||
'electron-woa': 'electron-woa-release'
|
||||
};
|
||||
|
||||
const circleCIJobs = [
|
||||
const circleCIPublishWorkflows = [
|
||||
'linux-publish',
|
||||
'macos-publish'
|
||||
];
|
||||
|
||||
const circleCIJobs = circleCIPublishWorkflows.concat([
|
||||
'linux-arm-publish',
|
||||
'linux-arm64-publish',
|
||||
'linux-ia32-publish',
|
||||
'linux-x64-publish',
|
||||
'mas-publish',
|
||||
'osx-publish'
|
||||
];
|
||||
|
||||
const circleCIPublishWorkflows = [
|
||||
'linux-publish',
|
||||
'macos-publish'
|
||||
];
|
||||
'mas-publish-arm64',
|
||||
'osx-publish',
|
||||
'osx-publish-arm64'
|
||||
]);
|
||||
|
||||
const vstsArmJobs = [
|
||||
'electron-arm-testing',
|
||||
|
|
|
@ -97,17 +97,22 @@ function check (condition, statement, exitIfFail = false) {
|
|||
function assetsForVersion (version, validatingRelease) {
|
||||
const patterns = [
|
||||
`chromedriver-${version}-darwin-x64.zip`,
|
||||
`chromedriver-${version}-darwin-arm64.zip`,
|
||||
`chromedriver-${version}-linux-arm64.zip`,
|
||||
`chromedriver-${version}-linux-armv7l.zip`,
|
||||
`chromedriver-${version}-linux-ia32.zip`,
|
||||
`chromedriver-${version}-linux-x64.zip`,
|
||||
`chromedriver-${version}-mas-x64.zip`,
|
||||
`chromedriver-${version}-mas-arm64.zip`,
|
||||
`chromedriver-${version}-win32-ia32.zip`,
|
||||
`chromedriver-${version}-win32-x64.zip`,
|
||||
`chromedriver-${version}-win32-arm64.zip`,
|
||||
`electron-${version}-darwin-x64-dsym.zip`,
|
||||
`electron-${version}-darwin-x64-symbols.zip`,
|
||||
`electron-${version}-darwin-x64.zip`,
|
||||
`electron-${version}-darwin-arm64-dsym.zip`,
|
||||
`electron-${version}-darwin-arm64-symbols.zip`,
|
||||
`electron-${version}-darwin-arm64.zip`,
|
||||
`electron-${version}-linux-arm64-symbols.zip`,
|
||||
`electron-${version}-linux-arm64.zip`,
|
||||
`electron-${version}-linux-armv7l-symbols.zip`,
|
||||
|
@ -120,6 +125,9 @@ function assetsForVersion (version, validatingRelease) {
|
|||
`electron-${version}-mas-x64-dsym.zip`,
|
||||
`electron-${version}-mas-x64-symbols.zip`,
|
||||
`electron-${version}-mas-x64.zip`,
|
||||
`electron-${version}-mas-arm64-dsym.zip`,
|
||||
`electron-${version}-mas-arm64-symbols.zip`,
|
||||
`electron-${version}-mas-arm64.zip`,
|
||||
`electron-${version}-win32-ia32-pdb.zip`,
|
||||
`electron-${version}-win32-ia32-symbols.zip`,
|
||||
`electron-${version}-win32-ia32.zip`,
|
||||
|
@ -133,20 +141,24 @@ function assetsForVersion (version, validatingRelease) {
|
|||
'electron.d.ts',
|
||||
'hunspell_dictionaries.zip',
|
||||
`ffmpeg-${version}-darwin-x64.zip`,
|
||||
`ffmpeg-${version}-darwin-arm64.zip`,
|
||||
`ffmpeg-${version}-linux-arm64.zip`,
|
||||
`ffmpeg-${version}-linux-armv7l.zip`,
|
||||
`ffmpeg-${version}-linux-ia32.zip`,
|
||||
`ffmpeg-${version}-linux-x64.zip`,
|
||||
`ffmpeg-${version}-mas-x64.zip`,
|
||||
`ffmpeg-${version}-mas-arm64.zip`,
|
||||
`ffmpeg-${version}-win32-ia32.zip`,
|
||||
`ffmpeg-${version}-win32-x64.zip`,
|
||||
`ffmpeg-${version}-win32-arm64.zip`,
|
||||
`mksnapshot-${version}-darwin-x64.zip`,
|
||||
`mksnapshot-${version}-darwin-arm64.zip`,
|
||||
`mksnapshot-${version}-linux-arm64-x64.zip`,
|
||||
`mksnapshot-${version}-linux-armv7l-x64.zip`,
|
||||
`mksnapshot-${version}-linux-ia32.zip`,
|
||||
`mksnapshot-${version}-linux-x64.zip`,
|
||||
`mksnapshot-${version}-mas-x64.zip`,
|
||||
`mksnapshot-${version}-mas-arm64.zip`,
|
||||
`mksnapshot-${version}-win32-ia32.zip`,
|
||||
`mksnapshot-${version}-win32-x64.zip`,
|
||||
`mksnapshot-${version}-win32-arm64-x64.zip`,
|
||||
|
|
Loading…
Reference in a new issue