@@ -36,138 +36,6 @@ concurrency:
3636 group : " ${{ github.workflow }}-${{ ((github.ref == 'refs/heads/try' || github.ref == 'refs/heads/try-perf') && github.sha) || github.ref }}"
3737 cancel-in-progress : true
3838jobs :
39- pr :
40- name : " PR - ${{ matrix.name }}"
41- env :
42- PR_CI_JOB : 1
43- CI_JOB_NAME : " ${{ matrix.name }}"
44- CARGO_REGISTRIES_CRATES_IO_PROTOCOL : sparse
45- HEAD_SHA : " ${{ github.event.pull_request.head.sha || github.sha }}"
46- DOCKER_TOKEN : " ${{ secrets.GITHUB_TOKEN }}"
47- SCCACHE_BUCKET : rust-lang-ci-sccache2
48- TOOLSTATE_REPO : " https://github.com/rust-lang-nursery/rust-toolstate"
49- CACHE_DOMAIN : ci-caches.rust-lang.org
50- if : " github.event_name == 'pull_request'"
51- continue-on-error : " ${{ matrix.name == 'mingw-check-tidy' }}"
52- strategy :
53- matrix :
54- include :
55- - name : mingw-check
56- os : ubuntu-20.04-4core-16gb
57- env : {}
58- - name : mingw-check-tidy
59- os : ubuntu-20.04-4core-16gb
60- env : {}
61- - name : x86_64-gnu-llvm-16
62- env :
63- ENABLE_GCC_CODEGEN : " 1"
64- os : ubuntu-20.04-16core-64gb
65- - name : x86_64-gnu-tools
66- os : ubuntu-20.04-16core-64gb
67- env : {}
68- timeout-minutes : 600
69- runs-on : " ${{ matrix.os }}"
70- steps :
71- - name : disable git crlf conversion
72- run : git config --global core.autocrlf false
73- - name : checkout the source code
74- uses : actions/checkout@v4
75- with :
76- fetch-depth : 2
77- - name : configure the PR in which the error message will be posted
78- run : " echo \" [CI_PR_NUMBER=$num]\" "
79- env :
80- num : " ${{ github.event.number }}"
81- if : " success() && !env.SKIP_JOB && github.event_name == 'pull_request'"
82- - name : add extra environment variables
83- run : src/ci/scripts/setup-environment.sh
84- env :
85- EXTRA_VARIABLES : " ${{ toJson(matrix.env) }}"
86- if : success() && !env.SKIP_JOB
87- - name : decide whether to skip this job
88- run : src/ci/scripts/should-skip-this.sh
89- if : success() && !env.SKIP_JOB
90- - name : ensure the channel matches the target branch
91- run : src/ci/scripts/verify-channel.sh
92- if : success() && !env.SKIP_JOB
93- - name : collect CPU statistics
94- run : src/ci/scripts/collect-cpu-stats.sh
95- if : success() && !env.SKIP_JOB
96- - name : show the current environment
97- run : src/ci/scripts/dump-environment.sh
98- if : success() && !env.SKIP_JOB
99- - name : install awscli
100- run : src/ci/scripts/install-awscli.sh
101- if : success() && !env.SKIP_JOB
102- - name : install sccache
103- run : src/ci/scripts/install-sccache.sh
104- if : success() && !env.SKIP_JOB
105- - name : select Xcode
106- run : src/ci/scripts/select-xcode.sh
107- if : success() && !env.SKIP_JOB
108- - name : install clang
109- run : src/ci/scripts/install-clang.sh
110- if : success() && !env.SKIP_JOB
111- - name : install tidy
112- run : src/ci/scripts/install-tidy.sh
113- if : success() && !env.SKIP_JOB
114- - name : install WIX
115- run : src/ci/scripts/install-wix.sh
116- if : success() && !env.SKIP_JOB
117- - name : disable git crlf conversion
118- run : src/ci/scripts/disable-git-crlf-conversion.sh
119- if : success() && !env.SKIP_JOB
120- - name : checkout submodules
121- run : src/ci/scripts/checkout-submodules.sh
122- if : success() && !env.SKIP_JOB
123- - name : install MSYS2
124- run : src/ci/scripts/install-msys2.sh
125- if : success() && !env.SKIP_JOB
126- - name : install MinGW
127- run : src/ci/scripts/install-mingw.sh
128- if : success() && !env.SKIP_JOB
129- - name : install ninja
130- run : src/ci/scripts/install-ninja.sh
131- if : success() && !env.SKIP_JOB
132- - name : enable ipv6 on Docker
133- run : src/ci/scripts/enable-docker-ipv6.sh
134- if : success() && !env.SKIP_JOB
135- - name : disable git crlf conversion
136- run : src/ci/scripts/disable-git-crlf-conversion.sh
137- if : success() && !env.SKIP_JOB
138- - name : ensure line endings are correct
139- run : src/ci/scripts/verify-line-endings.sh
140- if : success() && !env.SKIP_JOB
141- - name : ensure backported commits are in upstream branches
142- run : src/ci/scripts/verify-backported-commits.sh
143- if : success() && !env.SKIP_JOB
144- - name : ensure the stable version number is correct
145- run : src/ci/scripts/verify-stable-version-number.sh
146- if : success() && !env.SKIP_JOB
147- - name : run the build
148- run : src/ci/scripts/run-build-from-ci.sh
149- env :
150- AWS_ACCESS_KEY_ID : " ${{ env.CACHES_AWS_ACCESS_KEY_ID }}"
151- AWS_SECRET_ACCESS_KEY : " ${{ secrets[format('AWS_SECRET_ACCESS_KEY_{0}', env.CACHES_AWS_ACCESS_KEY_ID)] }}"
152- TOOLSTATE_REPO_ACCESS_TOKEN : " ${{ secrets.TOOLSTATE_REPO_ACCESS_TOKEN }}"
153- if : success() && !env.SKIP_JOB
154- - name : create github artifacts
155- run : src/ci/scripts/create-doc-artifacts.sh
156- if : success() && !env.SKIP_JOB
157- - name : upload artifacts to github
158- uses : actions/upload-artifact@v3
159- with :
160- name : " ${{ env.DOC_ARTIFACT_NAME }}"
161- path : obj/artifacts/doc
162- if-no-files-found : ignore
163- retention-days : 5
164- if : success() && !env.SKIP_JOB
165- - name : upload artifacts to S3
166- run : src/ci/scripts/upload-artifacts.sh
167- env :
168- AWS_ACCESS_KEY_ID : " ${{ env.ARTIFACTS_AWS_ACCESS_KEY_ID }}"
169- AWS_SECRET_ACCESS_KEY : " ${{ secrets[format('AWS_SECRET_ACCESS_KEY_{0}', env.ARTIFACTS_AWS_ACCESS_KEY_ID)] }}"
170- if : " success() && !env.SKIP_JOB && (github.event_name == 'push' || env.DEPLOY == '1' || env.DEPLOY_ALT == '1')"
17139 auto :
17240 name : " auto - ${{ matrix.name }}"
17341 env :
@@ -583,10 +451,116 @@ jobs:
583451 strategy :
584452 matrix :
585453 include :
586- - name : dist-x86_64-linux
454+ - name : dist-apple-various
587455 env :
588- CODEGEN_BACKENDS : " llvm,cranelift"
589- os : ubuntu-20.04-16core-64gb
456+ SCRIPT : " ./x.py dist bootstrap --include-default-paths --host='' --target=aarch64-apple-ios,x86_64-apple-ios,aarch64-apple-ios-sim"
457+ RUST_CONFIGURE_ARGS : " --enable-sanitizers --enable-profiler --set rust.jemalloc"
458+ RUSTC_RETRY_LINKER_ON_SEGFAULT : 1
459+ MACOSX_DEPLOYMENT_TARGET : 10.12
460+ SELECT_XCODE : /Applications/Xcode_15.2.app
461+ NO_LLVM_ASSERTIONS : 1
462+ NO_DEBUG_ASSERTIONS : 1
463+ NO_OVERFLOW_CHECKS : 1
464+ os : macos-13
465+ - name : dist-apple-various-2
466+ env :
467+ SCRIPT : " ./x.py dist bootstrap --include-default-paths --host='' --target=aarch64-apple-ios,x86_64-apple-ios,aarch64-apple-ios-sim"
468+ RUST_CONFIGURE_ARGS : " --enable-sanitizers --enable-profiler --set rust.jemalloc"
469+ RUSTC_RETRY_LINKER_ON_SEGFAULT : 1
470+ MACOSX_DEPLOYMENT_TARGET : 10.12
471+ SELECT_XCODE : /Applications/Xcode_15.2.app
472+ NO_LLVM_ASSERTIONS : 1
473+ NO_DEBUG_ASSERTIONS : 1
474+ NO_OVERFLOW_CHECKS : 1
475+ os : macos-13
476+ - name : dist-apple-various-3
477+ env :
478+ SCRIPT : " ./x.py dist bootstrap --include-default-paths --host='' --target=aarch64-apple-ios,x86_64-apple-ios,aarch64-apple-ios-sim"
479+ RUST_CONFIGURE_ARGS : " --enable-sanitizers --enable-profiler --set rust.jemalloc"
480+ RUSTC_RETRY_LINKER_ON_SEGFAULT : 1
481+ MACOSX_DEPLOYMENT_TARGET : 10.12
482+ SELECT_XCODE : /Applications/Xcode_15.2.app
483+ NO_LLVM_ASSERTIONS : 1
484+ NO_DEBUG_ASSERTIONS : 1
485+ NO_OVERFLOW_CHECKS : 1
486+ os : macos-13
487+ - name : dist-apple-various-4
488+ env :
489+ SCRIPT : " ./x.py dist bootstrap --include-default-paths --host='' --target=aarch64-apple-ios,x86_64-apple-ios,aarch64-apple-ios-sim"
490+ RUST_CONFIGURE_ARGS : " --enable-sanitizers --enable-profiler --set rust.jemalloc"
491+ RUSTC_RETRY_LINKER_ON_SEGFAULT : 1
492+ MACOSX_DEPLOYMENT_TARGET : 10.12
493+ SELECT_XCODE : /Applications/Xcode_15.2.app
494+ NO_LLVM_ASSERTIONS : 1
495+ NO_DEBUG_ASSERTIONS : 1
496+ NO_OVERFLOW_CHECKS : 1
497+ os : macos-13
498+ - name : dist-apple-various-5
499+ env :
500+ SCRIPT : " ./x.py dist bootstrap --include-default-paths --host='' --target=aarch64-apple-ios,x86_64-apple-ios,aarch64-apple-ios-sim"
501+ RUST_CONFIGURE_ARGS : " --enable-sanitizers --enable-profiler --set rust.jemalloc"
502+ RUSTC_RETRY_LINKER_ON_SEGFAULT : 1
503+ MACOSX_DEPLOYMENT_TARGET : 10.12
504+ SELECT_XCODE : /Applications/Xcode_15.2.app
505+ NO_LLVM_ASSERTIONS : 1
506+ NO_DEBUG_ASSERTIONS : 1
507+ NO_OVERFLOW_CHECKS : 1
508+ os : macos-13
509+ - name : dist-apple-various-6
510+ env :
511+ SCRIPT : " ./x.py dist bootstrap --include-default-paths --host='' --target=aarch64-apple-ios,x86_64-apple-ios,aarch64-apple-ios-sim"
512+ RUST_CONFIGURE_ARGS : " --enable-sanitizers --enable-profiler --set rust.jemalloc"
513+ RUSTC_RETRY_LINKER_ON_SEGFAULT : 1
514+ MACOSX_DEPLOYMENT_TARGET : 10.12
515+ SELECT_XCODE : /Applications/Xcode_15.2.app
516+ NO_LLVM_ASSERTIONS : 1
517+ NO_DEBUG_ASSERTIONS : 1
518+ NO_OVERFLOW_CHECKS : 1
519+ os : macos-13
520+ - name : dist-apple-various-7
521+ env :
522+ SCRIPT : " ./x.py dist bootstrap --include-default-paths --host='' --target=aarch64-apple-ios,x86_64-apple-ios,aarch64-apple-ios-sim"
523+ RUST_CONFIGURE_ARGS : " --enable-sanitizers --enable-profiler --set rust.jemalloc"
524+ RUSTC_RETRY_LINKER_ON_SEGFAULT : 1
525+ MACOSX_DEPLOYMENT_TARGET : 10.12
526+ SELECT_XCODE : /Applications/Xcode_15.2.app
527+ NO_LLVM_ASSERTIONS : 1
528+ NO_DEBUG_ASSERTIONS : 1
529+ NO_OVERFLOW_CHECKS : 1
530+ os : macos-13
531+ - name : dist-apple-various-8
532+ env :
533+ SCRIPT : " ./x.py dist bootstrap --include-default-paths --host='' --target=aarch64-apple-ios,x86_64-apple-ios,aarch64-apple-ios-sim"
534+ RUST_CONFIGURE_ARGS : " --enable-sanitizers --enable-profiler --set rust.jemalloc"
535+ RUSTC_RETRY_LINKER_ON_SEGFAULT : 1
536+ MACOSX_DEPLOYMENT_TARGET : 10.12
537+ SELECT_XCODE : /Applications/Xcode_15.2.app
538+ NO_LLVM_ASSERTIONS : 1
539+ NO_DEBUG_ASSERTIONS : 1
540+ NO_OVERFLOW_CHECKS : 1
541+ os : macos-13
542+ - name : dist-apple-various-9
543+ env :
544+ SCRIPT : " ./x.py dist bootstrap --include-default-paths --host='' --target=aarch64-apple-ios,x86_64-apple-ios,aarch64-apple-ios-sim"
545+ RUST_CONFIGURE_ARGS : " --enable-sanitizers --enable-profiler --set rust.jemalloc"
546+ RUSTC_RETRY_LINKER_ON_SEGFAULT : 1
547+ MACOSX_DEPLOYMENT_TARGET : 10.12
548+ SELECT_XCODE : /Applications/Xcode_15.2.app
549+ NO_LLVM_ASSERTIONS : 1
550+ NO_DEBUG_ASSERTIONS : 1
551+ NO_OVERFLOW_CHECKS : 1
552+ os : macos-13
553+ - name : dist-apple-various-10
554+ env :
555+ SCRIPT : " ./x.py dist bootstrap --include-default-paths --host='' --target=aarch64-apple-ios,x86_64-apple-ios,aarch64-apple-ios-sim"
556+ RUST_CONFIGURE_ARGS : " --enable-sanitizers --enable-profiler --set rust.jemalloc"
557+ RUSTC_RETRY_LINKER_ON_SEGFAULT : 1
558+ MACOSX_DEPLOYMENT_TARGET : 10.12
559+ SELECT_XCODE : /Applications/Xcode_15.2.app
560+ NO_LLVM_ASSERTIONS : 1
561+ NO_DEBUG_ASSERTIONS : 1
562+ NO_OVERFLOW_CHECKS : 1
563+ os : macos-13
590564 timeout-minutes : 600
591565 runs-on : " ${{ matrix.os }}"
592566 steps :
0 commit comments