From c054973a0fb5900a0e63a8df8359ef68e645ceaf Mon Sep 17 00:00:00 2001 From: John Guibas Date: Tue, 23 Jan 2024 17:10:45 -0800 Subject: [PATCH] feat: don't checkout source to root --- .github/workflows/ci.yml | 1478 ++++++++++++++-------------- .github/workflows/dependencies.yml | 254 ++--- .github/workflows/release.yml | 3 - 3 files changed, 866 insertions(+), 869 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index caf97abf78d9..f67d56eb6d41 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,741 +1,741 @@ -############################################################# -# WARNING: automatically generated file, DO NOT CHANGE! # -############################################################# +# ############################################################# +# # 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. +# # 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 - - automation/bors/try - - master - pull_request: - branches: - - "**" -permissions: - contents: read -defaults: - run: - shell: bash -concurrency: - group: "${{ github.workflow }}-${{ ((github.ref == 'refs/heads/try' || github.ref == 'refs/heads/try-perf') && github.sha) || github.ref }}" - cancel-in-progress: true -jobs: - pr: - name: "PR - ${{ matrix.name }}" - env: - PR_CI_JOB: 1 - CI_JOB_NAME: "${{ matrix.name }}" - CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse - HEAD_SHA: "${{ github.event.pull_request.head.sha || github.sha }}" - 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'" - continue-on-error: "${{ matrix.name == 'mingw-check-tidy' }}" - strategy: - matrix: - include: - - name: mingw-check - os: ubuntu-20.04-4core-16gb - env: {} - - name: mingw-check-tidy - os: ubuntu-20.04-4core-16gb - env: {} - - name: x86_64-gnu-llvm-16 - env: - ENABLE_GCC_CODEGEN: "1" - os: ubuntu-20.04-16core-64gb - - name: x86_64-gnu-tools - os: ubuntu-20.04-16core-64gb - 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@v4 - 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: 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: select Xcode - run: src/ci/scripts/select-xcode.sh - if: success() && !env.SKIP_JOB - - name: install clang - run: src/ci/scripts/install-clang.sh - if: success() && !env.SKIP_JOB - - name: install tidy - run: src/ci/scripts/install-tidy.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: create github artifacts - run: src/ci/scripts/create-doc-artifacts.sh - if: success() && !env.SKIP_JOB - - name: upload artifacts to github - uses: actions/upload-artifact@v3 - with: - name: "${{ env.DOC_ARTIFACT_NAME }}" - path: obj/artifacts/doc - if-no-files-found: ignore - retention-days: 5 - 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 - ${{ matrix.name }}" - env: - CI_JOB_NAME: "${{ matrix.name }}" - CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse - HEAD_SHA: "${{ github.event.pull_request.head.sha || github.sha }}" - 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 - AWS_REGION: us-west-1 - 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-8core-32gb - env: {} - - name: armhf-gnu - os: ubuntu-20.04-8core-32gb - env: {} - - name: dist-aarch64-linux - env: - CODEGEN_BACKENDS: "llvm,cranelift" - os: ubuntu-20.04-8core-32gb - - name: dist-android - os: ubuntu-20.04-8core-32gb - env: {} - - name: dist-arm-linux - os: ubuntu-20.04-16core-64gb - env: {} - - name: dist-armhf-linux - os: ubuntu-20.04-8core-32gb - env: {} - - name: dist-armv7-linux - os: ubuntu-20.04-8core-32gb - env: {} - - name: dist-i586-gnu-i586-i686-musl - os: ubuntu-20.04-8core-32gb - env: {} - - name: dist-i686-linux - os: ubuntu-20.04-8core-32gb - env: {} - - name: dist-loongarch64-linux - os: ubuntu-20.04-8core-32gb - env: {} - - name: dist-powerpc-linux - os: ubuntu-20.04-8core-32gb - env: {} - - name: dist-powerpc64-linux - os: ubuntu-20.04-8core-32gb - env: {} - - name: dist-powerpc64le-linux - os: ubuntu-20.04-8core-32gb - env: {} - - name: dist-riscv64-linux - os: ubuntu-20.04-8core-32gb - env: {} - - name: dist-s390x-linux - os: ubuntu-20.04-8core-32gb - env: {} - - name: dist-various-1 - os: ubuntu-20.04-8core-32gb - env: {} - - name: dist-various-2 - os: ubuntu-20.04-8core-32gb - env: {} - - name: dist-x86_64-freebsd - os: ubuntu-20.04-8core-32gb - env: {} - - name: dist-x86_64-illumos - os: ubuntu-20.04-8core-32gb - env: {} - - name: dist-x86_64-linux - env: - CODEGEN_BACKENDS: "llvm,cranelift" - os: ubuntu-20.04-16core-64gb - - name: dist-x86_64-linux-alt - env: - IMAGE: dist-x86_64-linux - CODEGEN_BACKENDS: "llvm,cranelift" - os: ubuntu-20.04-16core-64gb - - name: dist-x86_64-musl - env: - CODEGEN_BACKENDS: "llvm,cranelift" - os: ubuntu-20.04-8core-32gb - - name: dist-x86_64-netbsd - os: ubuntu-20.04-8core-32gb - env: {} - - name: i686-gnu - os: ubuntu-20.04-8core-32gb - env: {} - - name: i686-gnu-nopt - os: ubuntu-20.04-8core-32gb - env: {} - - name: mingw-check - os: ubuntu-20.04-4core-16gb - env: {} - - name: test-various - os: ubuntu-20.04-8core-32gb - env: {} - - name: x86_64-gnu - os: ubuntu-20.04-4core-16gb - 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-4core-16gb - - name: x86_64-gnu-aux - os: ubuntu-20.04-4core-16gb - env: {} - - name: x86_64-gnu-integration - env: - CI_ONLY_WHEN_CHANNEL: nightly - os: ubuntu-20.04-16core-64gb - - name: x86_64-gnu-debug - os: ubuntu-20.04-8core-32gb - env: {} - - name: x86_64-gnu-distcheck - os: ubuntu-20.04-8core-32gb - env: {} - - name: x86_64-gnu-llvm-17 - env: - RUST_BACKTRACE: 1 - os: ubuntu-20.04-8core-32gb - - name: x86_64-gnu-llvm-16 - env: - RUST_BACKTRACE: 1 - os: ubuntu-20.04-8core-32gb - - name: x86_64-gnu-nopt - os: ubuntu-20.04-4core-16gb - env: {} - - name: x86_64-gnu-tools - env: - DEPLOY_TOOLSTATES_JSON: toolstates-linux.json - os: ubuntu-20.04-8core-32gb - - name: dist-x86_64-apple - env: - SCRIPT: "./x.py dist bootstrap --include-default-paths --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 --set rust.lto=thin" - RUSTC_RETRY_LINKER_ON_SEGFAULT: 1 - MACOSX_DEPLOYMENT_TARGET: 10.12 - SELECT_XCODE: /Applications/Xcode_13.4.1.app - NO_LLVM_ASSERTIONS: 1 - NO_DEBUG_ASSERTIONS: 1 - NO_OVERFLOW_CHECKS: 1 - DIST_REQUIRE_ALL_TOOLS: 1 - CODEGEN_BACKENDS: "llvm,cranelift" - os: macos-13 - - name: dist-apple-various - env: - SCRIPT: "./x.py dist bootstrap --include-default-paths --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.12 - SELECT_XCODE: /Applications/Xcode_13.4.1.app - NO_LLVM_ASSERTIONS: 1 - NO_DEBUG_ASSERTIONS: 1 - NO_OVERFLOW_CHECKS: 1 - os: macos-13 - - name: x86_64-apple-1 - env: - SCRIPT: "./x.py --stage 2 test --skip tests/ui --skip tests/rustdoc --skip tests/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.12 - MACOSX_STD_DEPLOYMENT_TARGET: 10.12 - NO_LLVM_ASSERTIONS: 1 - NO_DEBUG_ASSERTIONS: 1 - NO_OVERFLOW_CHECKS: 1 - os: macos-13 - - name: x86_64-apple-2 - env: - SCRIPT: "./x.py --stage 2 test tests/ui tests/rustdoc tests/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.12 - MACOSX_STD_DEPLOYMENT_TARGET: 10.12 - NO_LLVM_ASSERTIONS: 1 - NO_DEBUG_ASSERTIONS: 1 - NO_OVERFLOW_CHECKS: 1 - os: macos-13 - - name: dist-aarch64-apple - env: - SCRIPT: "./x.py dist bootstrap --include-default-paths --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 - SELECT_XCODE: /Applications/Xcode_13.4.1.app - 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-13 - - name: x86_64-msvc - env: - RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-msvc --enable-profiler" - SCRIPT: make ci-msvc - os: windows-2019-8core-32gb - - name: i686-msvc - env: - RUST_CONFIGURE_ARGS: "--build=i686-pc-windows-msvc" - SCRIPT: make ci-msvc - os: windows-2019-8core-32gb - - name: x86_64-msvc-ext - env: - SCRIPT: python x.py --stage 2 test src/tools/cargotest src/tools/cargo && src/ci/docker/host-x86_64/x86_64-gnu-tools/checktools.sh x.py /tmp/toolstate/toolstates.json windows - HOST_TARGET: x86_64-pc-windows-msvc - RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-msvc --enable-lld --save-toolstates=/tmp/toolstate/toolstates.json" - DEPLOY_TOOLSTATES_JSON: toolstates-windows.json - os: windows-2019-8core-32gb - - name: i686-mingw - env: - RUST_CONFIGURE_ARGS: "--build=i686-pc-windows-gnu" - SCRIPT: make ci-mingw - NO_DOWNLOAD_CI_LLVM: 1 - CUSTOM_MINGW: 1 - os: windows-2019-8core-32gb - - name: x86_64-mingw - env: - SCRIPT: make ci-mingw - RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-gnu --enable-profiler" - NO_DOWNLOAD_CI_LLVM: 1 - CUSTOM_MINGW: 1 - os: windows-2019-8core-32gb - - 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: python x.py build --set rust.debug=true opt-dist && PGO_HOST=x86_64-pc-windows-msvc ./build/x86_64-pc-windows-msvc/stage0-tools-bin/opt-dist windows-ci -- python x.py dist bootstrap --include-default-paths - DIST_REQUIRE_ALL_TOOLS: 1 - os: windows-2019-8core-32gb - - 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 bootstrap --include-default-paths - DIST_REQUIRE_ALL_TOOLS: 1 - os: windows-2019-8core-32gb - - 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 bootstrap --include-default-paths - DIST_REQUIRE_ALL_TOOLS: 1 - os: windows-2019-8core-32gb - - name: dist-i686-mingw - env: - RUST_CONFIGURE_ARGS: "--build=i686-pc-windows-gnu --enable-full-tools --enable-profiler" - NO_DOWNLOAD_CI_LLVM: 1 - SCRIPT: python x.py dist bootstrap --include-default-paths - CUSTOM_MINGW: 1 - DIST_REQUIRE_ALL_TOOLS: 1 - os: windows-2019-8core-32gb - - name: dist-x86_64-mingw - env: - SCRIPT: python x.py dist bootstrap --include-default-paths - RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-gnu --enable-full-tools --enable-profiler" - NO_DOWNLOAD_CI_LLVM: 1 - CUSTOM_MINGW: 1 - DIST_REQUIRE_ALL_TOOLS: 1 - os: windows-2019-8core-32gb - - 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 bootstrap --include-default-paths - os: windows-2019-8core-32gb - 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@v4 - 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: 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: select Xcode - run: src/ci/scripts/select-xcode.sh - if: success() && !env.SKIP_JOB - - name: install clang - run: src/ci/scripts/install-clang.sh - if: success() && !env.SKIP_JOB - - name: install tidy - run: src/ci/scripts/install-tidy.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: create github artifacts - run: src/ci/scripts/create-doc-artifacts.sh - if: success() && !env.SKIP_JOB - - name: upload artifacts to github - uses: actions/upload-artifact@v3 - with: - name: "${{ env.DOC_ARTIFACT_NAME }}" - path: obj/artifacts/doc - if-no-files-found: ignore - retention-days: 5 - 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 - ${{ matrix.name }}" - env: - DIST_TRY_BUILD: 1 - CI_JOB_NAME: "${{ matrix.name }}" - CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse - HEAD_SHA: "${{ github.event.pull_request.head.sha || github.sha }}" - 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 - AWS_REGION: us-west-1 - 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') || ((github.ref == 'refs/heads/automation/bors/try') && github.repository == 'rust-lang/rust'))" - strategy: - matrix: - include: - - name: dist-x86_64-linux - env: - CODEGEN_BACKENDS: "llvm,cranelift" - os: ubuntu-20.04-16core-64gb - 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@v4 - 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: 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: select Xcode - run: src/ci/scripts/select-xcode.sh - if: success() && !env.SKIP_JOB - - name: install clang - run: src/ci/scripts/install-clang.sh - if: success() && !env.SKIP_JOB - - name: install tidy - run: src/ci/scripts/install-tidy.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: create github artifacts - run: src/ci/scripts/create-doc-artifacts.sh - if: success() && !env.SKIP_JOB - - name: upload artifacts to github - uses: actions/upload-artifact@v3 - with: - name: "${{ env.DOC_ARTIFACT_NAME }}" - path: obj/artifacts/doc - if-no-files-found: ignore - retention-days: 5 - 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 - AWS_REGION: us-west-1 - 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@v4 - 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 +# --- +# name: CI +# "on": +# push: +# branches: +# - auto +# - try +# - try-perf +# - automation/bors/try +# - master +# pull_request: +# branches: +# - "**" +# permissions: +# contents: read +# defaults: +# run: +# shell: bash +# concurrency: +# group: "${{ github.workflow }}-${{ ((github.ref == 'refs/heads/try' || github.ref == 'refs/heads/try-perf') && github.sha) || github.ref }}" +# cancel-in-progress: true +# jobs: +# pr: +# name: "PR - ${{ matrix.name }}" +# env: +# PR_CI_JOB: 1 +# CI_JOB_NAME: "${{ matrix.name }}" +# CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse +# HEAD_SHA: "${{ github.event.pull_request.head.sha || github.sha }}" +# 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'" +# continue-on-error: "${{ matrix.name == 'mingw-check-tidy' }}" +# strategy: +# matrix: +# include: +# - name: mingw-check +# os: ubuntu-20.04-4core-16gb +# env: {} +# - name: mingw-check-tidy +# os: ubuntu-20.04-4core-16gb +# env: {} +# - name: x86_64-gnu-llvm-16 +# env: +# ENABLE_GCC_CODEGEN: "1" +# os: ubuntu-20.04-16core-64gb +# - name: x86_64-gnu-tools +# os: ubuntu-20.04-16core-64gb +# 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@v4 +# 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: 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: select Xcode +# run: src/ci/scripts/select-xcode.sh +# if: success() && !env.SKIP_JOB +# - name: install clang +# run: src/ci/scripts/install-clang.sh +# if: success() && !env.SKIP_JOB +# - name: install tidy +# run: src/ci/scripts/install-tidy.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: create github artifacts +# run: src/ci/scripts/create-doc-artifacts.sh +# if: success() && !env.SKIP_JOB +# - name: upload artifacts to github +# uses: actions/upload-artifact@v3 +# with: +# name: "${{ env.DOC_ARTIFACT_NAME }}" +# path: obj/artifacts/doc +# if-no-files-found: ignore +# retention-days: 5 +# 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 - ${{ matrix.name }}" +# env: +# CI_JOB_NAME: "${{ matrix.name }}" +# CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse +# HEAD_SHA: "${{ github.event.pull_request.head.sha || github.sha }}" +# 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 +# AWS_REGION: us-west-1 +# 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-8core-32gb +# env: {} +# - name: armhf-gnu +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: dist-aarch64-linux +# env: +# CODEGEN_BACKENDS: "llvm,cranelift" +# os: ubuntu-20.04-8core-32gb +# - name: dist-android +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: dist-arm-linux +# os: ubuntu-20.04-16core-64gb +# env: {} +# - name: dist-armhf-linux +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: dist-armv7-linux +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: dist-i586-gnu-i586-i686-musl +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: dist-i686-linux +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: dist-loongarch64-linux +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: dist-powerpc-linux +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: dist-powerpc64-linux +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: dist-powerpc64le-linux +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: dist-riscv64-linux +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: dist-s390x-linux +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: dist-various-1 +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: dist-various-2 +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: dist-x86_64-freebsd +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: dist-x86_64-illumos +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: dist-x86_64-linux +# env: +# CODEGEN_BACKENDS: "llvm,cranelift" +# os: ubuntu-20.04-16core-64gb +# - name: dist-x86_64-linux-alt +# env: +# IMAGE: dist-x86_64-linux +# CODEGEN_BACKENDS: "llvm,cranelift" +# os: ubuntu-20.04-16core-64gb +# - name: dist-x86_64-musl +# env: +# CODEGEN_BACKENDS: "llvm,cranelift" +# os: ubuntu-20.04-8core-32gb +# - name: dist-x86_64-netbsd +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: i686-gnu +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: i686-gnu-nopt +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: mingw-check +# os: ubuntu-20.04-4core-16gb +# env: {} +# - name: test-various +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: x86_64-gnu +# os: ubuntu-20.04-4core-16gb +# 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-4core-16gb +# - name: x86_64-gnu-aux +# os: ubuntu-20.04-4core-16gb +# env: {} +# - name: x86_64-gnu-integration +# env: +# CI_ONLY_WHEN_CHANNEL: nightly +# os: ubuntu-20.04-16core-64gb +# - name: x86_64-gnu-debug +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: x86_64-gnu-distcheck +# os: ubuntu-20.04-8core-32gb +# env: {} +# - name: x86_64-gnu-llvm-17 +# env: +# RUST_BACKTRACE: 1 +# os: ubuntu-20.04-8core-32gb +# - name: x86_64-gnu-llvm-16 +# env: +# RUST_BACKTRACE: 1 +# os: ubuntu-20.04-8core-32gb +# - name: x86_64-gnu-nopt +# os: ubuntu-20.04-4core-16gb +# env: {} +# - name: x86_64-gnu-tools +# env: +# DEPLOY_TOOLSTATES_JSON: toolstates-linux.json +# os: ubuntu-20.04-8core-32gb +# - name: dist-x86_64-apple +# env: +# SCRIPT: "./x.py dist bootstrap --include-default-paths --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 --set rust.lto=thin" +# RUSTC_RETRY_LINKER_ON_SEGFAULT: 1 +# MACOSX_DEPLOYMENT_TARGET: 10.12 +# SELECT_XCODE: /Applications/Xcode_13.4.1.app +# NO_LLVM_ASSERTIONS: 1 +# NO_DEBUG_ASSERTIONS: 1 +# NO_OVERFLOW_CHECKS: 1 +# DIST_REQUIRE_ALL_TOOLS: 1 +# CODEGEN_BACKENDS: "llvm,cranelift" +# os: macos-13 +# - name: dist-apple-various +# env: +# SCRIPT: "./x.py dist bootstrap --include-default-paths --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.12 +# SELECT_XCODE: /Applications/Xcode_13.4.1.app +# NO_LLVM_ASSERTIONS: 1 +# NO_DEBUG_ASSERTIONS: 1 +# NO_OVERFLOW_CHECKS: 1 +# os: macos-13 +# - name: x86_64-apple-1 +# env: +# SCRIPT: "./x.py --stage 2 test --skip tests/ui --skip tests/rustdoc --skip tests/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.12 +# MACOSX_STD_DEPLOYMENT_TARGET: 10.12 +# NO_LLVM_ASSERTIONS: 1 +# NO_DEBUG_ASSERTIONS: 1 +# NO_OVERFLOW_CHECKS: 1 +# os: macos-13 +# - name: x86_64-apple-2 +# env: +# SCRIPT: "./x.py --stage 2 test tests/ui tests/rustdoc tests/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.12 +# MACOSX_STD_DEPLOYMENT_TARGET: 10.12 +# NO_LLVM_ASSERTIONS: 1 +# NO_DEBUG_ASSERTIONS: 1 +# NO_OVERFLOW_CHECKS: 1 +# os: macos-13 +# - name: dist-aarch64-apple +# env: +# SCRIPT: "./x.py dist bootstrap --include-default-paths --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 +# SELECT_XCODE: /Applications/Xcode_13.4.1.app +# 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-13 +# - name: x86_64-msvc +# env: +# RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-msvc --enable-profiler" +# SCRIPT: make ci-msvc +# os: windows-2019-8core-32gb +# - name: i686-msvc +# env: +# RUST_CONFIGURE_ARGS: "--build=i686-pc-windows-msvc" +# SCRIPT: make ci-msvc +# os: windows-2019-8core-32gb +# - name: x86_64-msvc-ext +# env: +# SCRIPT: python x.py --stage 2 test src/tools/cargotest src/tools/cargo && src/ci/docker/host-x86_64/x86_64-gnu-tools/checktools.sh x.py /tmp/toolstate/toolstates.json windows +# HOST_TARGET: x86_64-pc-windows-msvc +# RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-msvc --enable-lld --save-toolstates=/tmp/toolstate/toolstates.json" +# DEPLOY_TOOLSTATES_JSON: toolstates-windows.json +# os: windows-2019-8core-32gb +# - name: i686-mingw +# env: +# RUST_CONFIGURE_ARGS: "--build=i686-pc-windows-gnu" +# SCRIPT: make ci-mingw +# NO_DOWNLOAD_CI_LLVM: 1 +# CUSTOM_MINGW: 1 +# os: windows-2019-8core-32gb +# - name: x86_64-mingw +# env: +# SCRIPT: make ci-mingw +# RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-gnu --enable-profiler" +# NO_DOWNLOAD_CI_LLVM: 1 +# CUSTOM_MINGW: 1 +# os: windows-2019-8core-32gb +# - 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: python x.py build --set rust.debug=true opt-dist && PGO_HOST=x86_64-pc-windows-msvc ./build/x86_64-pc-windows-msvc/stage0-tools-bin/opt-dist windows-ci -- python x.py dist bootstrap --include-default-paths +# DIST_REQUIRE_ALL_TOOLS: 1 +# os: windows-2019-8core-32gb +# - 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 bootstrap --include-default-paths +# DIST_REQUIRE_ALL_TOOLS: 1 +# os: windows-2019-8core-32gb +# - 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 bootstrap --include-default-paths +# DIST_REQUIRE_ALL_TOOLS: 1 +# os: windows-2019-8core-32gb +# - name: dist-i686-mingw +# env: +# RUST_CONFIGURE_ARGS: "--build=i686-pc-windows-gnu --enable-full-tools --enable-profiler" +# NO_DOWNLOAD_CI_LLVM: 1 +# SCRIPT: python x.py dist bootstrap --include-default-paths +# CUSTOM_MINGW: 1 +# DIST_REQUIRE_ALL_TOOLS: 1 +# os: windows-2019-8core-32gb +# - name: dist-x86_64-mingw +# env: +# SCRIPT: python x.py dist bootstrap --include-default-paths +# RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-gnu --enable-full-tools --enable-profiler" +# NO_DOWNLOAD_CI_LLVM: 1 +# CUSTOM_MINGW: 1 +# DIST_REQUIRE_ALL_TOOLS: 1 +# os: windows-2019-8core-32gb +# - 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 bootstrap --include-default-paths +# os: windows-2019-8core-32gb +# 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@v4 +# 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: 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: select Xcode +# run: src/ci/scripts/select-xcode.sh +# if: success() && !env.SKIP_JOB +# - name: install clang +# run: src/ci/scripts/install-clang.sh +# if: success() && !env.SKIP_JOB +# - name: install tidy +# run: src/ci/scripts/install-tidy.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: create github artifacts +# run: src/ci/scripts/create-doc-artifacts.sh +# if: success() && !env.SKIP_JOB +# - name: upload artifacts to github +# uses: actions/upload-artifact@v3 +# with: +# name: "${{ env.DOC_ARTIFACT_NAME }}" +# path: obj/artifacts/doc +# if-no-files-found: ignore +# retention-days: 5 +# 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 - ${{ matrix.name }}" +# env: +# DIST_TRY_BUILD: 1 +# CI_JOB_NAME: "${{ matrix.name }}" +# CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse +# HEAD_SHA: "${{ github.event.pull_request.head.sha || github.sha }}" +# 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 +# AWS_REGION: us-west-1 +# 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') || ((github.ref == 'refs/heads/automation/bors/try') && github.repository == 'rust-lang/rust'))" +# strategy: +# matrix: +# include: +# - name: dist-x86_64-linux +# env: +# CODEGEN_BACKENDS: "llvm,cranelift" +# os: ubuntu-20.04-16core-64gb +# 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@v4 +# 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: 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: select Xcode +# run: src/ci/scripts/select-xcode.sh +# if: success() && !env.SKIP_JOB +# - name: install clang +# run: src/ci/scripts/install-clang.sh +# if: success() && !env.SKIP_JOB +# - name: install tidy +# run: src/ci/scripts/install-tidy.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: create github artifacts +# run: src/ci/scripts/create-doc-artifacts.sh +# if: success() && !env.SKIP_JOB +# - name: upload artifacts to github +# uses: actions/upload-artifact@v3 +# with: +# name: "${{ env.DOC_ARTIFACT_NAME }}" +# path: obj/artifacts/doc +# if-no-files-found: ignore +# retention-days: 5 +# 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 +# AWS_REGION: us-west-1 +# 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@v4 +# 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 diff --git a/.github/workflows/dependencies.yml b/.github/workflows/dependencies.yml index 97ed891c491d..c1e72adbbaf8 100644 --- a/.github/workflows/dependencies.yml +++ b/.github/workflows/dependencies.yml @@ -1,142 +1,142 @@ -# Automatically run `cargo update` periodically +# # Automatically run `cargo update` periodically ---- -name: Bump dependencies in Cargo.lock -on: - schedule: - # Run weekly - - cron: '0 0 * * Sun' - workflow_dispatch: - # Needed so we can run it manually -permissions: - contents: read -defaults: - run: - shell: bash -env: - # So cargo doesn't complain about unstable features - RUSTC_BOOTSTRAP: 1 - PR_TITLE: Weekly `cargo update` - PR_MESSAGE: | - Automation to keep dependencies in `Cargo.lock` current. +# --- +# name: Bump dependencies in Cargo.lock +# on: +# schedule: +# # Run weekly +# - cron: '0 0 * * Sun' +# workflow_dispatch: +# # Needed so we can run it manually +# permissions: +# contents: read +# defaults: +# run: +# shell: bash +# env: +# # So cargo doesn't complain about unstable features +# RUSTC_BOOTSTRAP: 1 +# PR_TITLE: Weekly `cargo update` +# PR_MESSAGE: | +# Automation to keep dependencies in `Cargo.lock` current. - The following is the output from `cargo update`: - COMMIT_MESSAGE: "cargo update \n\n" +# The following is the output from `cargo update`: +# COMMIT_MESSAGE: "cargo update \n\n" -jobs: - not-waiting-on-bors: - if: github.repository_owner == 'rust-lang' - name: skip if S-waiting-on-bors - runs-on: ubuntu-latest - steps: - - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - # Fetch state and labels of PR - # Or exit successfully if PR does not exist - JSON=$(gh pr view cargo_update --repo $GITHUB_REPOSITORY --json labels,state || exit 0) - STATE=$(echo "$JSON" | jq -r '.state') - WAITING_ON_BORS=$(echo "$JSON" | jq '.labels[] | any(.name == "S-waiting-on-bors"; .)') +# jobs: +# not-waiting-on-bors: +# if: github.repository_owner == 'rust-lang' +# name: skip if S-waiting-on-bors +# runs-on: ubuntu-latest +# steps: +# - env: +# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} +# run: | +# # Fetch state and labels of PR +# # Or exit successfully if PR does not exist +# JSON=$(gh pr view cargo_update --repo $GITHUB_REPOSITORY --json labels,state || exit 0) +# STATE=$(echo "$JSON" | jq -r '.state') +# WAITING_ON_BORS=$(echo "$JSON" | jq '.labels[] | any(.name == "S-waiting-on-bors"; .)') - # Exit with error if open and S-waiting-on-bors - if [[ "$STATE" == "OPEN" && "$WAITING_ON_BORS" == "true" ]]; then - exit 1 - fi +# # Exit with error if open and S-waiting-on-bors +# if [[ "$STATE" == "OPEN" && "$WAITING_ON_BORS" == "true" ]]; then +# exit 1 +# fi - update: - if: github.repository_owner == 'rust-lang' - name: update dependencies - needs: not-waiting-on-bors - runs-on: ubuntu-latest - steps: - - name: checkout the source code - uses: actions/checkout@v4 - with: - submodules: recursive - - name: install the bootstrap toolchain - run: | - # Extract the stage0 version - TOOLCHAIN=$(jq -r '.compiler | {version,date} | join("-")' -- src/stage0.json) - # Install and set as default - rustup toolchain install --no-self-update --profile minimal $TOOLCHAIN - rustup default $TOOLCHAIN +# update: +# if: github.repository_owner == 'rust-lang' +# name: update dependencies +# needs: not-waiting-on-bors +# runs-on: ubuntu-latest +# steps: +# - name: checkout the source code +# uses: actions/checkout@v4 +# with: +# submodules: recursive +# - name: install the bootstrap toolchain +# run: | +# # Extract the stage0 version +# TOOLCHAIN=$(jq -r '.compiler | {version,date} | join("-")' -- src/stage0.json) +# # Install and set as default +# rustup toolchain install --no-self-update --profile minimal $TOOLCHAIN +# rustup default $TOOLCHAIN - - name: cargo update - # Remove first line that always just says "Updating crates.io index" - run: cargo update 2>&1 | sed '/crates.io index/d' | tee -a cargo_update.log - - name: upload Cargo.lock artifact for use in PR - uses: actions/upload-artifact@v3 - with: - name: Cargo-lock - path: Cargo.lock - retention-days: 1 - - name: upload cargo-update log artifact for use in PR - uses: actions/upload-artifact@v3 - with: - name: cargo-updates - path: cargo_update.log - retention-days: 1 +# - name: cargo update +# # Remove first line that always just says "Updating crates.io index" +# run: cargo update 2>&1 | sed '/crates.io index/d' | tee -a cargo_update.log +# - name: upload Cargo.lock artifact for use in PR +# uses: actions/upload-artifact@v3 +# with: +# name: Cargo-lock +# path: Cargo.lock +# retention-days: 1 +# - name: upload cargo-update log artifact for use in PR +# uses: actions/upload-artifact@v3 +# with: +# name: cargo-updates +# path: cargo_update.log +# retention-days: 1 - pr: - if: github.repository_owner == 'rust-lang' - name: amend PR - needs: update - runs-on: ubuntu-latest - permissions: - contents: write - pull-requests: write - steps: - - name: checkout the source code - uses: actions/checkout@v4 +# pr: +# if: github.repository_owner == 'rust-lang' +# name: amend PR +# needs: update +# runs-on: ubuntu-latest +# permissions: +# contents: write +# pull-requests: write +# steps: +# - name: checkout the source code +# uses: actions/checkout@v4 - - name: download Cargo.lock from update job - uses: actions/download-artifact@v3 - with: - name: Cargo-lock - - name: download cargo-update log from update job - uses: actions/download-artifact@v3 - with: - name: cargo-updates +# - name: download Cargo.lock from update job +# uses: actions/download-artifact@v3 +# with: +# name: Cargo-lock +# - name: download cargo-update log from update job +# uses: actions/download-artifact@v3 +# with: +# name: cargo-updates - - name: craft PR body and commit message - run: | - echo "${COMMIT_MESSAGE}" > commit.txt - cat cargo_update.log >> commit.txt +# - name: craft PR body and commit message +# run: | +# echo "${COMMIT_MESSAGE}" > commit.txt +# cat cargo_update.log >> commit.txt - echo "${PR_MESSAGE}" > body.md - echo '```txt' >> body.md - cat cargo_update.log >> body.md - echo '```' >> body.md +# echo "${PR_MESSAGE}" > body.md +# echo '```txt' >> body.md +# cat cargo_update.log >> body.md +# echo '```' >> body.md - - name: commit - run: | - git config user.name github-actions - git config user.email github-actions@github.com - git switch --force-create cargo_update - git add ./Cargo.lock - git commit --no-verify --file=commit.txt +# - name: commit +# run: | +# git config user.name github-actions +# git config user.email github-actions@github.com +# git switch --force-create cargo_update +# git add ./Cargo.lock +# git commit --no-verify --file=commit.txt - - name: push - run: git push --no-verify --force --set-upstream origin cargo_update +# - name: push +# run: git push --no-verify --force --set-upstream origin cargo_update - - name: edit existing open pull request - id: edit - # Don't fail job if we need to open new PR - continue-on-error: true - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - # Exit with error if PR is closed - STATE=$(gh pr view cargo_update --repo $GITHUB_REPOSITORY --json state --jq '.state') - if [[ "$STATE" != "OPEN" ]]; then - exit 1 - fi +# - name: edit existing open pull request +# id: edit +# # Don't fail job if we need to open new PR +# continue-on-error: true +# env: +# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} +# run: | +# # Exit with error if PR is closed +# STATE=$(gh pr view cargo_update --repo $GITHUB_REPOSITORY --json state --jq '.state') +# if [[ "$STATE" != "OPEN" ]]; then +# exit 1 +# fi - gh pr edit cargo_update --title "${PR_TITLE}" --body-file body.md --repo $GITHUB_REPOSITORY +# gh pr edit cargo_update --title "${PR_TITLE}" --body-file body.md --repo $GITHUB_REPOSITORY - - name: open new pull request - # Only run if there wasn't an existing PR - if: steps.edit.outcome != 'success' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: gh pr create --title "${PR_TITLE}" --body-file body.md --repo $GITHUB_REPOSITORY +# - name: open new pull request +# # Only run if there wasn't an existing PR +# if: steps.edit.outcome != 'success' +# env: +# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} +# run: gh pr create --title "${PR_TITLE}" --body-file body.md --repo $GITHUB_REPOSITORY diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 67cb425f851e..185959433680 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -25,9 +25,6 @@ jobs: # triple: x86_64-unknown-linux-gnu runs-on: [buildjet-32vcpu-ubuntu-2204] steps: - - name: Checkout sources - uses: actions/checkout@v2 - - name: Set up git private repo access run: | git config --global url."https://${{ secrets.PRIVATE_PULL_TOKEN }}@github.com".insteadOf ssh://git@github.com