Unique static innards #28
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
############################################################# | |
# WARNING: automatically generated file, DO NOT CHANGE! # | |
############################################################# | |
# This file was automatically generated by the expand-yaml-anchors tool. The | |
# source file that generated this one is: | |
# | |
# src/ci/github-actions/ci.yml | |
# | |
# Once you make changes to that file you need to run: | |
# | |
# ./x.py run src/tools/expand-yaml-anchors/ | |
# | |
# The CI build will fail if the tool is not run after changes to this file. | |
--- | |
name: CI | |
"on": | |
push: | |
branches: | |
- auto | |
- try | |
- try-perf | |
- master | |
pull_request: | |
branches: | |
- "**" | |
defaults: | |
run: | |
shell: bash | |
jobs: | |
pr: | |
name: PR | |
env: | |
CI_JOB_NAME: "${{ matrix.name }}" | |
SCCACHE_BUCKET: rust-lang-ci-sccache2 | |
TOOLSTATE_REPO: "https://github.com/rust-lang-nursery/rust-toolstate" | |
CACHE_DOMAIN: ci-caches.rust-lang.org | |
if: "github.event_name == 'pull_request'" | |
strategy: | |
matrix: | |
include: | |
- name: mingw-check | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: x86_64-gnu-llvm-13 | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: x86_64-gnu-tools | |
env: | |
CI_ONLY_WHEN_SUBMODULES_CHANGED: 1 | |
os: ubuntu-20.04-xl | |
timeout-minutes: 600 | |
runs-on: "${{ matrix.os }}" | |
steps: | |
- name: disable git crlf conversion | |
run: git config --global core.autocrlf false | |
- name: checkout the source code | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 2 | |
- name: configure the PR in which the error message will be posted | |
run: "echo \"[CI_PR_NUMBER=$num]\"" | |
env: | |
num: "${{ github.event.number }}" | |
if: "success() && !env.SKIP_JOB && github.event_name == 'pull_request'" | |
- name: add extra environment variables | |
run: src/ci/scripts/setup-environment.sh | |
env: | |
EXTRA_VARIABLES: "${{ toJson(matrix.env) }}" | |
if: success() && !env.SKIP_JOB | |
- name: decide whether to skip this job | |
run: src/ci/scripts/should-skip-this.sh | |
if: success() && !env.SKIP_JOB | |
- name: ensure the channel matches the target branch | |
run: src/ci/scripts/verify-channel.sh | |
if: success() && !env.SKIP_JOB | |
- name: configure GitHub Actions to kill the build when outdated | |
uses: rust-lang/simpleinfra/github-actions/cancel-outdated-builds@master | |
with: | |
github_token: "${{ secrets.github_token }}" | |
if: "success() && !env.SKIP_JOB && github.ref != 'refs/heads/try' && github.ref != 'refs/heads/try-perf'" | |
- name: collect CPU statistics | |
run: src/ci/scripts/collect-cpu-stats.sh | |
if: success() && !env.SKIP_JOB | |
- name: show the current environment | |
run: src/ci/scripts/dump-environment.sh | |
if: success() && !env.SKIP_JOB | |
- name: install awscli | |
run: src/ci/scripts/install-awscli.sh | |
if: success() && !env.SKIP_JOB | |
- name: install sccache | |
run: src/ci/scripts/install-sccache.sh | |
if: success() && !env.SKIP_JOB | |
- name: install clang | |
run: src/ci/scripts/install-clang.sh | |
if: success() && !env.SKIP_JOB | |
- name: install WIX | |
run: src/ci/scripts/install-wix.sh | |
if: success() && !env.SKIP_JOB | |
- name: disable git crlf conversion | |
run: src/ci/scripts/disable-git-crlf-conversion.sh | |
if: success() && !env.SKIP_JOB | |
- name: checkout submodules | |
run: src/ci/scripts/checkout-submodules.sh | |
if: success() && !env.SKIP_JOB | |
- name: install MSYS2 | |
run: src/ci/scripts/install-msys2.sh | |
if: success() && !env.SKIP_JOB | |
- name: install MinGW | |
run: src/ci/scripts/install-mingw.sh | |
if: success() && !env.SKIP_JOB | |
- name: install ninja | |
run: src/ci/scripts/install-ninja.sh | |
if: success() && !env.SKIP_JOB | |
- name: enable ipv6 on Docker | |
run: src/ci/scripts/enable-docker-ipv6.sh | |
if: success() && !env.SKIP_JOB | |
- name: disable git crlf conversion | |
run: src/ci/scripts/disable-git-crlf-conversion.sh | |
if: success() && !env.SKIP_JOB | |
- name: ensure line endings are correct | |
run: src/ci/scripts/verify-line-endings.sh | |
if: success() && !env.SKIP_JOB | |
- name: ensure backported commits are in upstream branches | |
run: src/ci/scripts/verify-backported-commits.sh | |
if: success() && !env.SKIP_JOB | |
- name: ensure the stable version number is correct | |
run: src/ci/scripts/verify-stable-version-number.sh | |
if: success() && !env.SKIP_JOB | |
- name: run the build | |
run: src/ci/scripts/run-build-from-ci.sh | |
env: | |
AWS_ACCESS_KEY_ID: "${{ env.CACHES_AWS_ACCESS_KEY_ID }}" | |
AWS_SECRET_ACCESS_KEY: "${{ secrets[format('AWS_SECRET_ACCESS_KEY_{0}', env.CACHES_AWS_ACCESS_KEY_ID)] }}" | |
TOOLSTATE_REPO_ACCESS_TOKEN: "${{ secrets.TOOLSTATE_REPO_ACCESS_TOKEN }}" | |
if: success() && !env.SKIP_JOB | |
- name: upload artifacts to S3 | |
run: src/ci/scripts/upload-artifacts.sh | |
env: | |
AWS_ACCESS_KEY_ID: "${{ env.ARTIFACTS_AWS_ACCESS_KEY_ID }}" | |
AWS_SECRET_ACCESS_KEY: "${{ secrets[format('AWS_SECRET_ACCESS_KEY_{0}', env.ARTIFACTS_AWS_ACCESS_KEY_ID)] }}" | |
if: "success() && !env.SKIP_JOB && (github.event_name == 'push' || env.DEPLOY == '1' || env.DEPLOY_ALT == '1')" | |
auto: | |
name: auto | |
env: | |
CI_JOB_NAME: "${{ matrix.name }}" | |
SCCACHE_BUCKET: rust-lang-ci-sccache2 | |
DEPLOY_BUCKET: rust-lang-ci2 | |
TOOLSTATE_REPO: "https://github.com/rust-lang-nursery/rust-toolstate" | |
TOOLSTATE_ISSUES_API_URL: "https://api.github.com/repos/rust-lang/rust/issues" | |
TOOLSTATE_PUBLISH: 1 | |
CACHES_AWS_ACCESS_KEY_ID: AKIA46X5W6CZI5DHEBFL | |
ARTIFACTS_AWS_ACCESS_KEY_ID: AKIA46X5W6CZN24CBO55 | |
CACHE_DOMAIN: ci-caches.rust-lang.org | |
if: "github.event_name == 'push' && github.ref == 'refs/heads/auto' && github.repository == 'rust-lang-ci/rust'" | |
strategy: | |
matrix: | |
include: | |
- name: aarch64-gnu | |
os: | |
- self-hosted | |
- ARM64 | |
- linux | |
- name: arm-android | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: armhf-gnu | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-aarch64-linux | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-android | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-arm-linux | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-armhf-linux | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-armv7-linux | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-i586-gnu-i586-i686-musl | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-i686-linux | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-mips-linux | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-mips64-linux | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-mips64el-linux | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-mipsel-linux | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-powerpc-linux | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-powerpc64-linux | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-powerpc64le-linux | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-riscv64-linux | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-s390x-linux | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-various-1 | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-various-2 | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-x86_64-freebsd | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-x86_64-illumos | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-x86_64-linux | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-x86_64-linux-alt | |
env: | |
IMAGE: dist-x86_64-linux | |
os: ubuntu-20.04-xl | |
- name: dist-x86_64-musl | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: dist-x86_64-netbsd | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: i686-gnu | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: i686-gnu-nopt | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: mingw-check | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: test-various | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: wasm32 | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: x86_64-gnu | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: x86_64-gnu-stable | |
env: | |
IMAGE: x86_64-gnu | |
RUST_CI_OVERRIDE_RELEASE_CHANNEL: stable | |
CI_ONLY_WHEN_CHANNEL: nightly | |
os: ubuntu-20.04-xl | |
- name: x86_64-gnu-aux | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: x86_64-gnu-debug | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: x86_64-gnu-distcheck | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: x86_64-gnu-llvm-13 | |
env: | |
RUST_BACKTRACE: 1 | |
os: ubuntu-20.04-xl | |
- name: x86_64-gnu-llvm-13-stage1 | |
env: | |
RUST_BACKTRACE: 1 | |
os: ubuntu-20.04-xl | |
- name: x86_64-gnu-nopt | |
os: ubuntu-20.04-xl | |
env: {} | |
- name: x86_64-gnu-tools | |
env: | |
DEPLOY_TOOLSTATES_JSON: toolstates-linux.json | |
os: ubuntu-20.04-xl | |
- name: dist-x86_64-apple | |
env: | |
SCRIPT: "./x.py dist --host=x86_64-apple-darwin --target=x86_64-apple-darwin" | |
RUST_CONFIGURE_ARGS: "--enable-full-tools --enable-sanitizers --enable-profiler --set rust.jemalloc --set llvm.ninja=false" | |
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1 | |
MACOSX_DEPLOYMENT_TARGET: 10.7 | |
NO_LLVM_ASSERTIONS: 1 | |
NO_DEBUG_ASSERTIONS: 1 | |
NO_OVERFLOW_CHECKS: 1 | |
DIST_REQUIRE_ALL_TOOLS: 1 | |
os: macos-latest | |
- name: dist-apple-various | |
env: | |
SCRIPT: "./x.py dist --host='' --target=aarch64-apple-ios,x86_64-apple-ios,aarch64-apple-ios-sim" | |
RUST_CONFIGURE_ARGS: "--enable-sanitizers --enable-profiler --set rust.jemalloc --set llvm.ninja=false" | |
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1 | |
MACOSX_DEPLOYMENT_TARGET: 10.7 | |
NO_LLVM_ASSERTIONS: 1 | |
NO_DEBUG_ASSERTIONS: 1 | |
NO_OVERFLOW_CHECKS: 1 | |
os: macos-latest | |
- name: dist-x86_64-apple-alt | |
env: | |
SCRIPT: "./x.py dist" | |
RUST_CONFIGURE_ARGS: "--enable-extended --enable-profiler --set rust.jemalloc --set llvm.ninja=false" | |
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1 | |
MACOSX_DEPLOYMENT_TARGET: 10.7 | |
NO_LLVM_ASSERTIONS: 1 | |
NO_DEBUG_ASSERTIONS: 1 | |
NO_OVERFLOW_CHECKS: 1 | |
os: macos-latest | |
- name: x86_64-apple-1 | |
env: | |
SCRIPT: "./x.py --stage 2 test --exclude src/test/ui --exclude src/test/rustdoc --exclude src/test/run-make-fulldeps" | |
RUST_CONFIGURE_ARGS: "--build=x86_64-apple-darwin --enable-sanitizers --enable-profiler --set rust.jemalloc --set llvm.ninja=false" | |
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1 | |
MACOSX_DEPLOYMENT_TARGET: 10.8 | |
MACOSX_STD_DEPLOYMENT_TARGET: 10.7 | |
NO_LLVM_ASSERTIONS: 1 | |
NO_DEBUG_ASSERTIONS: 1 | |
NO_OVERFLOW_CHECKS: 1 | |
os: macos-latest | |
- name: x86_64-apple-2 | |
env: | |
SCRIPT: "./x.py --stage 2 test src/test/ui src/test/rustdoc src/test/run-make-fulldeps" | |
RUST_CONFIGURE_ARGS: "--build=x86_64-apple-darwin --enable-sanitizers --enable-profiler --set rust.jemalloc --set llvm.ninja=false" | |
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1 | |
MACOSX_DEPLOYMENT_TARGET: 10.8 | |
MACOSX_STD_DEPLOYMENT_TARGET: 10.7 | |
NO_LLVM_ASSERTIONS: 1 | |
NO_DEBUG_ASSERTIONS: 1 | |
NO_OVERFLOW_CHECKS: 1 | |
os: macos-latest | |
- name: dist-aarch64-apple | |
env: | |
SCRIPT: "./x.py dist --stage 2" | |
RUST_CONFIGURE_ARGS: "--build=x86_64-apple-darwin --host=aarch64-apple-darwin --target=aarch64-apple-darwin --enable-full-tools --enable-sanitizers --enable-profiler --disable-docs --set rust.jemalloc --set llvm.ninja=false" | |
RUSTC_RETRY_LINKER_ON_SEGFAULT: 1 | |
USE_XCODE_CLANG: 1 | |
MACOSX_DEPLOYMENT_TARGET: 11.0 | |
MACOSX_STD_DEPLOYMENT_TARGET: 11.0 | |
NO_LLVM_ASSERTIONS: 1 | |
NO_DEBUG_ASSERTIONS: 1 | |
NO_OVERFLOW_CHECKS: 1 | |
DIST_REQUIRE_ALL_TOOLS: 1 | |
JEMALLOC_SYS_WITH_LG_PAGE: 14 | |
os: macos-latest | |
- name: x86_64-msvc-1 | |
env: | |
RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-msvc --enable-profiler" | |
SCRIPT: make ci-subset-1 | |
os: windows-latest-xl | |
- name: x86_64-msvc-2 | |
env: | |
RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-msvc --enable-profiler" | |
SCRIPT: make ci-subset-2 | |
os: windows-latest-xl | |
- name: i686-msvc-1 | |
env: | |
RUST_CONFIGURE_ARGS: "--build=i686-pc-windows-msvc" | |
SCRIPT: make ci-subset-1 | |
os: windows-latest-xl | |
- name: i686-msvc-2 | |
env: | |
RUST_CONFIGURE_ARGS: "--build=i686-pc-windows-msvc" | |
SCRIPT: make ci-subset-2 | |
os: windows-latest-xl | |
- name: x86_64-msvc-cargo | |
env: | |
SCRIPT: python x.py --stage 2 test src/tools/cargotest src/tools/cargo | |
RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-msvc --enable-lld" | |
os: windows-latest-xl | |
- name: x86_64-msvc-tools | |
env: | |
SCRIPT: src/ci/docker/host-x86_64/x86_64-gnu-tools/checktools.sh x.py /tmp/toolstate/toolstates.json windows | |
RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-msvc --save-toolstates=/tmp/toolstate/toolstates.json" | |
DEPLOY_TOOLSTATES_JSON: toolstates-windows.json | |
os: windows-latest-xl | |
- name: i686-mingw-1 | |
env: | |
RUST_CONFIGURE_ARGS: "--build=i686-pc-windows-gnu --set llvm.allow-old-toolchain" | |
SCRIPT: make ci-mingw-subset-1 | |
NO_DOWNLOAD_CI_LLVM: 1 | |
CUSTOM_MINGW: 1 | |
os: windows-latest-xl | |
- name: i686-mingw-2 | |
env: | |
RUST_CONFIGURE_ARGS: "--build=i686-pc-windows-gnu --set llvm.allow-old-toolchain" | |
SCRIPT: make ci-mingw-subset-2 | |
NO_DOWNLOAD_CI_LLVM: 1 | |
CUSTOM_MINGW: 1 | |
os: windows-latest-xl | |
- name: x86_64-mingw-1 | |
env: | |
SCRIPT: make ci-mingw-subset-1 | |
RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-gnu --enable-profiler --set llvm.allow-old-toolchain" | |
NO_DOWNLOAD_CI_LLVM: 1 | |
CUSTOM_MINGW: 1 | |
os: windows-latest-xl | |
- name: x86_64-mingw-2 | |
env: | |
SCRIPT: make ci-mingw-subset-2 | |
RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-gnu --enable-profiler --set llvm.allow-old-toolchain" | |
NO_DOWNLOAD_CI_LLVM: 1 | |
CUSTOM_MINGW: 1 | |
os: windows-latest-xl | |
- name: dist-x86_64-msvc | |
env: | |
RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-msvc --host=x86_64-pc-windows-msvc --target=x86_64-pc-windows-msvc --enable-full-tools --enable-profiler" | |
SCRIPT: PGO_HOST=x86_64-pc-windows-msvc src/ci/pgo.sh python x.py dist | |
DIST_REQUIRE_ALL_TOOLS: 1 | |
os: windows-latest-xl | |
- name: dist-i686-msvc | |
env: | |
RUST_CONFIGURE_ARGS: "--build=i686-pc-windows-msvc --host=i686-pc-windows-msvc --target=i686-pc-windows-msvc,i586-pc-windows-msvc --enable-full-tools --enable-profiler" | |
SCRIPT: python x.py dist | |
DIST_REQUIRE_ALL_TOOLS: 1 | |
os: windows-latest-xl | |
- name: dist-aarch64-msvc | |
env: | |
RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-msvc --host=aarch64-pc-windows-msvc --enable-full-tools --enable-profiler" | |
SCRIPT: python x.py dist | |
DIST_REQUIRE_ALL_TOOLS: 1 | |
WINDOWS_SDK_20348_HACK: 1 | |
os: windows-latest-xl | |
- name: dist-i686-mingw | |
env: | |
RUST_CONFIGURE_ARGS: "--build=i686-pc-windows-gnu --enable-full-tools --enable-profiler --set llvm.allow-old-toolchain" | |
NO_DOWNLOAD_CI_LLVM: 1 | |
SCRIPT: python x.py dist | |
CUSTOM_MINGW: 1 | |
DIST_REQUIRE_ALL_TOOLS: 1 | |
os: windows-latest-xl | |
- name: dist-x86_64-mingw | |
env: | |
SCRIPT: python x.py dist | |
RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-gnu --enable-full-tools --enable-profiler --set llvm.allow-old-toolchain" | |
NO_DOWNLOAD_CI_LLVM: 1 | |
CUSTOM_MINGW: 1 | |
DIST_REQUIRE_ALL_TOOLS: 1 | |
os: windows-latest-xl | |
- name: dist-x86_64-msvc-alt | |
env: | |
RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-msvc --enable-extended --enable-profiler" | |
SCRIPT: python x.py dist | |
os: windows-latest-xl | |
timeout-minutes: 600 | |
runs-on: "${{ matrix.os }}" | |
steps: | |
- name: disable git crlf conversion | |
run: git config --global core.autocrlf false | |
- name: checkout the source code | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 2 | |
- name: configure the PR in which the error message will be posted | |
run: "echo \"[CI_PR_NUMBER=$num]\"" | |
env: | |
num: "${{ github.event.number }}" | |
if: "success() && !env.SKIP_JOB && github.event_name == 'pull_request'" | |
- name: add extra environment variables | |
run: src/ci/scripts/setup-environment.sh | |
env: | |
EXTRA_VARIABLES: "${{ toJson(matrix.env) }}" | |
if: success() && !env.SKIP_JOB | |
- name: decide whether to skip this job | |
run: src/ci/scripts/should-skip-this.sh | |
if: success() && !env.SKIP_JOB | |
- name: ensure the channel matches the target branch | |
run: src/ci/scripts/verify-channel.sh | |
if: success() && !env.SKIP_JOB | |
- name: configure GitHub Actions to kill the build when outdated | |
uses: rust-lang/simpleinfra/github-actions/cancel-outdated-builds@master | |
with: | |
github_token: "${{ secrets.github_token }}" | |
if: "success() && !env.SKIP_JOB && github.ref != 'refs/heads/try' && github.ref != 'refs/heads/try-perf'" | |
- name: collect CPU statistics | |
run: src/ci/scripts/collect-cpu-stats.sh | |
if: success() && !env.SKIP_JOB | |
- name: show the current environment | |
run: src/ci/scripts/dump-environment.sh | |
if: success() && !env.SKIP_JOB | |
- name: install awscli | |
run: src/ci/scripts/install-awscli.sh | |
if: success() && !env.SKIP_JOB | |
- name: install sccache | |
run: src/ci/scripts/install-sccache.sh | |
if: success() && !env.SKIP_JOB | |
- name: install clang | |
run: src/ci/scripts/install-clang.sh | |
if: success() && !env.SKIP_JOB | |
- name: install WIX | |
run: src/ci/scripts/install-wix.sh | |
if: success() && !env.SKIP_JOB | |
- name: disable git crlf conversion | |
run: src/ci/scripts/disable-git-crlf-conversion.sh | |
if: success() && !env.SKIP_JOB | |
- name: checkout submodules | |
run: src/ci/scripts/checkout-submodules.sh | |
if: success() && !env.SKIP_JOB | |
- name: install MSYS2 | |
run: src/ci/scripts/install-msys2.sh | |
if: success() && !env.SKIP_JOB | |
- name: install MinGW | |
run: src/ci/scripts/install-mingw.sh | |
if: success() && !env.SKIP_JOB | |
- name: install ninja | |
run: src/ci/scripts/install-ninja.sh | |
if: success() && !env.SKIP_JOB | |
- name: enable ipv6 on Docker | |
run: src/ci/scripts/enable-docker-ipv6.sh | |
if: success() && !env.SKIP_JOB | |
- name: disable git crlf conversion | |
run: src/ci/scripts/disable-git-crlf-conversion.sh | |
if: success() && !env.SKIP_JOB | |
- name: ensure line endings are correct | |
run: src/ci/scripts/verify-line-endings.sh | |
if: success() && !env.SKIP_JOB | |
- name: ensure backported commits are in upstream branches | |
run: src/ci/scripts/verify-backported-commits.sh | |
if: success() && !env.SKIP_JOB | |
- name: ensure the stable version number is correct | |
run: src/ci/scripts/verify-stable-version-number.sh | |
if: success() && !env.SKIP_JOB | |
- name: run the build | |
run: src/ci/scripts/run-build-from-ci.sh | |
env: | |
AWS_ACCESS_KEY_ID: "${{ env.CACHES_AWS_ACCESS_KEY_ID }}" | |
AWS_SECRET_ACCESS_KEY: "${{ secrets[format('AWS_SECRET_ACCESS_KEY_{0}', env.CACHES_AWS_ACCESS_KEY_ID)] }}" | |
TOOLSTATE_REPO_ACCESS_TOKEN: "${{ secrets.TOOLSTATE_REPO_ACCESS_TOKEN }}" | |
if: success() && !env.SKIP_JOB | |
- name: upload artifacts to S3 | |
run: src/ci/scripts/upload-artifacts.sh | |
env: | |
AWS_ACCESS_KEY_ID: "${{ env.ARTIFACTS_AWS_ACCESS_KEY_ID }}" | |
AWS_SECRET_ACCESS_KEY: "${{ secrets[format('AWS_SECRET_ACCESS_KEY_{0}', env.ARTIFACTS_AWS_ACCESS_KEY_ID)] }}" | |
if: "success() && !env.SKIP_JOB && (github.event_name == 'push' || env.DEPLOY == '1' || env.DEPLOY_ALT == '1')" | |
try: | |
name: try | |
env: | |
CI_JOB_NAME: "${{ matrix.name }}" | |
SCCACHE_BUCKET: rust-lang-ci-sccache2 | |
DEPLOY_BUCKET: rust-lang-ci2 | |
TOOLSTATE_REPO: "https://github.com/rust-lang-nursery/rust-toolstate" | |
TOOLSTATE_ISSUES_API_URL: "https://api.github.com/repos/rust-lang/rust/issues" | |
TOOLSTATE_PUBLISH: 1 | |
CACHES_AWS_ACCESS_KEY_ID: AKIA46X5W6CZI5DHEBFL | |
ARTIFACTS_AWS_ACCESS_KEY_ID: AKIA46X5W6CZN24CBO55 | |
CACHE_DOMAIN: ci-caches.rust-lang.org | |
if: "github.event_name == 'push' && (github.ref == 'refs/heads/try' || github.ref == 'refs/heads/try-perf') && github.repository == 'rust-lang-ci/rust'" | |
strategy: | |
matrix: | |
include: | |
- name: dist-x86_64-linux | |
os: ubuntu-20.04-xl | |
env: {} | |
timeout-minutes: 600 | |
runs-on: "${{ matrix.os }}" | |
steps: | |
- name: disable git crlf conversion | |
run: git config --global core.autocrlf false | |
- name: checkout the source code | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 2 | |
- name: configure the PR in which the error message will be posted | |
run: "echo \"[CI_PR_NUMBER=$num]\"" | |
env: | |
num: "${{ github.event.number }}" | |
if: "success() && !env.SKIP_JOB && github.event_name == 'pull_request'" | |
- name: add extra environment variables | |
run: src/ci/scripts/setup-environment.sh | |
env: | |
EXTRA_VARIABLES: "${{ toJson(matrix.env) }}" | |
if: success() && !env.SKIP_JOB | |
- name: decide whether to skip this job | |
run: src/ci/scripts/should-skip-this.sh | |
if: success() && !env.SKIP_JOB | |
- name: ensure the channel matches the target branch | |
run: src/ci/scripts/verify-channel.sh | |
if: success() && !env.SKIP_JOB | |
- name: configure GitHub Actions to kill the build when outdated | |
uses: rust-lang/simpleinfra/github-actions/cancel-outdated-builds@master | |
with: | |
github_token: "${{ secrets.github_token }}" | |
if: "success() && !env.SKIP_JOB && github.ref != 'refs/heads/try' && github.ref != 'refs/heads/try-perf'" | |
- name: collect CPU statistics | |
run: src/ci/scripts/collect-cpu-stats.sh | |
if: success() && !env.SKIP_JOB | |
- name: show the current environment | |
run: src/ci/scripts/dump-environment.sh | |
if: success() && !env.SKIP_JOB | |
- name: install awscli | |
run: src/ci/scripts/install-awscli.sh | |
if: success() && !env.SKIP_JOB | |
- name: install sccache | |
run: src/ci/scripts/install-sccache.sh | |
if: success() && !env.SKIP_JOB | |
- name: install clang | |
run: src/ci/scripts/install-clang.sh | |
if: success() && !env.SKIP_JOB | |
- name: install WIX | |
run: src/ci/scripts/install-wix.sh | |
if: success() && !env.SKIP_JOB | |
- name: disable git crlf conversion | |
run: src/ci/scripts/disable-git-crlf-conversion.sh | |
if: success() && !env.SKIP_JOB | |
- name: checkout submodules | |
run: src/ci/scripts/checkout-submodules.sh | |
if: success() && !env.SKIP_JOB | |
- name: install MSYS2 | |
run: src/ci/scripts/install-msys2.sh | |
if: success() && !env.SKIP_JOB | |
- name: install MinGW | |
run: src/ci/scripts/install-mingw.sh | |
if: success() && !env.SKIP_JOB | |
- name: install ninja | |
run: src/ci/scripts/install-ninja.sh | |
if: success() && !env.SKIP_JOB | |
- name: enable ipv6 on Docker | |
run: src/ci/scripts/enable-docker-ipv6.sh | |
if: success() && !env.SKIP_JOB | |
- name: disable git crlf conversion | |
run: src/ci/scripts/disable-git-crlf-conversion.sh | |
if: success() && !env.SKIP_JOB | |
- name: ensure line endings are correct | |
run: src/ci/scripts/verify-line-endings.sh | |
if: success() && !env.SKIP_JOB | |
- name: ensure backported commits are in upstream branches | |
run: src/ci/scripts/verify-backported-commits.sh | |
if: success() && !env.SKIP_JOB | |
- name: ensure the stable version number is correct | |
run: src/ci/scripts/verify-stable-version-number.sh | |
if: success() && !env.SKIP_JOB | |
- name: run the build | |
run: src/ci/scripts/run-build-from-ci.sh | |
env: | |
AWS_ACCESS_KEY_ID: "${{ env.CACHES_AWS_ACCESS_KEY_ID }}" | |
AWS_SECRET_ACCESS_KEY: "${{ secrets[format('AWS_SECRET_ACCESS_KEY_{0}', env.CACHES_AWS_ACCESS_KEY_ID)] }}" | |
TOOLSTATE_REPO_ACCESS_TOKEN: "${{ secrets.TOOLSTATE_REPO_ACCESS_TOKEN }}" | |
if: success() && !env.SKIP_JOB | |
- name: upload artifacts to S3 | |
run: src/ci/scripts/upload-artifacts.sh | |
env: | |
AWS_ACCESS_KEY_ID: "${{ env.ARTIFACTS_AWS_ACCESS_KEY_ID }}" | |
AWS_SECRET_ACCESS_KEY: "${{ secrets[format('AWS_SECRET_ACCESS_KEY_{0}', env.ARTIFACTS_AWS_ACCESS_KEY_ID)] }}" | |
if: "success() && !env.SKIP_JOB && (github.event_name == 'push' || env.DEPLOY == '1' || env.DEPLOY_ALT == '1')" | |
master: | |
name: master | |
runs-on: ubuntu-latest | |
env: | |
SCCACHE_BUCKET: rust-lang-ci-sccache2 | |
DEPLOY_BUCKET: rust-lang-ci2 | |
TOOLSTATE_REPO: "https://github.com/rust-lang-nursery/rust-toolstate" | |
TOOLSTATE_ISSUES_API_URL: "https://api.github.com/repos/rust-lang/rust/issues" | |
TOOLSTATE_PUBLISH: 1 | |
CACHES_AWS_ACCESS_KEY_ID: AKIA46X5W6CZI5DHEBFL | |
ARTIFACTS_AWS_ACCESS_KEY_ID: AKIA46X5W6CZN24CBO55 | |
CACHE_DOMAIN: ci-caches.rust-lang.org | |
if: "github.event_name == 'push' && github.ref == 'refs/heads/master' && github.repository == 'rust-lang-ci/rust'" | |
steps: | |
- name: checkout the source code | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 2 | |
- name: publish toolstate | |
run: src/ci/publish_toolstate.sh | |
shell: bash | |
env: | |
TOOLSTATE_REPO_ACCESS_TOKEN: "${{ secrets.TOOLSTATE_REPO_ACCESS_TOKEN }}" | |
if: success() && !env.SKIP_JOB | |
try-success: | |
needs: | |
- try | |
if: "success() && github.event_name == 'push' && (github.ref == 'refs/heads/try' || github.ref == 'refs/heads/try-perf') && github.repository == 'rust-lang-ci/rust'" | |
steps: | |
- name: mark the job as a success | |
run: exit 0 | |
shell: bash | |
name: bors build finished | |
runs-on: ubuntu-latest | |
try-failure: | |
needs: | |
- try | |
if: "!success() && github.event_name == 'push' && (github.ref == 'refs/heads/try' || github.ref == 'refs/heads/try-perf') && github.repository == 'rust-lang-ci/rust'" | |
steps: | |
- name: mark the job as a failure | |
run: exit 1 | |
shell: bash | |
name: bors build finished | |
runs-on: ubuntu-latest | |
auto-success: | |
needs: | |
- auto | |
if: "success() && github.event_name == 'push' && github.ref == 'refs/heads/auto' && github.repository == 'rust-lang-ci/rust'" | |
steps: | |
- name: mark the job as a success | |
run: exit 0 | |
shell: bash | |
name: bors build finished | |
runs-on: ubuntu-latest | |
auto-failure: | |
needs: | |
- auto | |
if: "!success() && github.event_name == 'push' && github.ref == 'refs/heads/auto' && github.repository == 'rust-lang-ci/rust'" | |
steps: | |
- name: mark the job as a failure | |
run: exit 1 | |
shell: bash | |
name: bors build finished | |
runs-on: ubuntu-latest |