diff --git a/.azure-pipelines/auto.yml b/.azure-pipelines/auto.yml index c2ea8b756e0..8035feeeefb 100644 --- a/.azure-pipelines/auto.yml +++ b/.azure-pipelines/auto.yml @@ -7,7 +7,7 @@ trigger: - auto variables: -- group: prod-credentials +- group: real-prod-credentials jobs: - job: Linux @@ -138,8 +138,9 @@ jobs: IMAGE: x86_64-gnu-full-bootstrap x86_64-gnu-aux: IMAGE: x86_64-gnu-aux - x86_64-gnu-tools: - IMAGE: x86_64-gnu-tools + # FIXME: needs reenabling here rather than Travis + # x86_64-gnu-tools: + # IMAGE: x86_64-gnu-tools x86_64-gnu-debug: IMAGE: x86_64-gnu-debug x86_64-gnu-nopt: diff --git a/.travis.yml b/.travis.yml index dbfc6c81963..ec90dd3c8fb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -19,215 +19,9 @@ env: matrix: fast_finish: true include: - # Images used in testing PR and try-build should be run first. - - env: IMAGE=x86_64-gnu-llvm-6.0 RUST_BACKTRACE=1 - name: x86_64-gnu-llvm-6.0 - if: branch = auto - - - env: IMAGE=dist-x86_64-linux DEPLOY=1 - name: dist-x86_64-linux - if: branch = auto - - # "alternate" deployments, these are "nightlies" but have LLVM assertions - # turned on, they're deployed to a different location primarily for - # additional testing. - - env: IMAGE=dist-x86_64-linux DEPLOY_ALT=1 - name: dist-x86_64-linux-alt - if: branch = auto - - - env: > - SCRIPT="./x.py dist" - RUST_CONFIGURE_ARGS="--enable-extended --enable-profiler --enable-lldb --set rust.jemalloc" - SRC=. - DEPLOY_ALT=1 - RUSTC_RETRY_LINKER_ON_SEGFAULT=1 - MACOSX_DEPLOYMENT_TARGET=10.7 - NO_LLVM_ASSERTIONS=1 - NO_DEBUG_ASSERTIONS=1 - os: osx - osx_image: xcode9.3-moar - name: dist-x86_64-apple-alt - if: branch = auto - - # macOS builders. These are placed near the beginning because they are very - # slow to run. - - # OSX builders running tests, these run the full test suite. - # NO_DEBUG_ASSERTIONS=1 to make them go faster, but also do have some - # runners that run `//ignore-debug` tests. - # - # Note that the compiler is compiled to target 10.8 here because the Xcode - # version that we're using, 8.2, cannot compile LLVM for OSX 10.7. - - env: > - SCRIPT="./x.py test" - RUST_CONFIGURE_ARGS="--build=x86_64-apple-darwin --enable-sanitizers --enable-profiler --set rust.jemalloc" - SRC=. - 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 - os: osx - osx_image: xcode9.3-moar - name: x86_64-apple - if: branch = auto - - - env: > - SCRIPT="./x.py test" - RUST_CONFIGURE_ARGS="--build=i686-apple-darwin --set rust.jemalloc" - SRC=. - 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 - os: osx - osx_image: xcode9.3-moar - name: i686-apple - if: branch = auto - - # OSX builders producing releases. These do not run the full test suite and - # just produce a bunch of artifacts. - # - # Note that these are running in the `xcode7` image instead of the - # `xcode8.2` image as above. That's because we want to build releases for - # OSX 10.7 and `xcode7` is the latest Xcode able to compile LLVM for 10.7. - - env: > - SCRIPT="./x.py dist" - RUST_CONFIGURE_ARGS="--build=i686-apple-darwin --enable-full-tools --enable-profiler --enable-lldb --set rust.jemalloc" - SRC=. - DEPLOY=1 - RUSTC_RETRY_LINKER_ON_SEGFAULT=1 - MACOSX_DEPLOYMENT_TARGET=10.7 - NO_LLVM_ASSERTIONS=1 - NO_DEBUG_ASSERTIONS=1 - DIST_REQUIRE_ALL_TOOLS=1 - os: osx - osx_image: xcode9.3-moar - name: dist-i686-apple - if: branch = auto - - - env: > - SCRIPT="./x.py dist" - RUST_CONFIGURE_ARGS="--target=aarch64-apple-ios,armv7-apple-ios,armv7s-apple-ios,i386-apple-ios,x86_64-apple-ios --enable-full-tools --enable-sanitizers --enable-profiler --enable-lldb --set rust.jemalloc" - SRC=. - DEPLOY=1 - RUSTC_RETRY_LINKER_ON_SEGFAULT=1 - MACOSX_DEPLOYMENT_TARGET=10.7 - NO_LLVM_ASSERTIONS=1 - NO_DEBUG_ASSERTIONS=1 - DIST_REQUIRE_ALL_TOOLS=1 - os: osx - osx_image: xcode9.3-moar - name: dist-x86_64-apple - if: branch = auto - - # Linux builders, remaining docker images - - env: IMAGE=arm-android - name: arm-android - if: branch = auto - - env: IMAGE=armhf-gnu - name: armhf-gnu - if: branch = auto - - env: IMAGE=dist-various-1 DEPLOY=1 - name: dist-various-1 - if: branch = auto - - env: IMAGE=dist-various-2 DEPLOY=1 - name: dist-various-2 - if: branch = auto - - env: IMAGE=dist-aarch64-linux DEPLOY=1 - name: dist-aarch64-linux - if: branch = auto - - env: IMAGE=dist-android DEPLOY=1 - name: dist-android - if: branch = auto - - env: IMAGE=dist-arm-linux DEPLOY=1 - name: dist-arm-linux - if: branch = auto - - env: IMAGE=dist-armhf-linux DEPLOY=1 - name: dist-armhf-linux - if: branch = auto - - env: IMAGE=dist-armv7-linux DEPLOY=1 - name: dist-armv7-linux - if: branch = auto - - env: IMAGE=dist-i586-gnu-i586-i686-musl DEPLOY=1 - name: dist-i586-gnu-i586-i686-musl - if: branch = auto - - env: IMAGE=dist-i686-freebsd DEPLOY=1 - name: dist-i686-freebsd - if: branch = auto - - env: IMAGE=dist-i686-linux DEPLOY=1 - name: dist-i686-linux - if: branch = auto - - env: IMAGE=dist-mips-linux DEPLOY=1 - name: dist-mips-linux - if: branch = auto - - env: IMAGE=dist-mips64-linux DEPLOY=1 - name: dist-mips64-linux - if: branch = auto - - env: IMAGE=dist-mips64el-linux DEPLOY=1 - name: dist-mips64el-linux - if: branch = auto - - env: IMAGE=dist-mipsel-linux DEPLOY=1 - name: dist-mipsel-linux - if: branch = auto - - env: IMAGE=dist-powerpc-linux DEPLOY=1 - name: dist-powerpc-linux - if: branch = auto - - env: IMAGE=dist-powerpc64-linux DEPLOY=1 - name: dist-powerpc64-linux - if: branch = auto - - env: IMAGE=dist-powerpc64le-linux DEPLOY=1 - name: dist-powerpc64le-linux - if: branch = auto - - env: IMAGE=dist-s390x-linux DEPLOY=1 - name: dist-s390x-linux - if: branch = auto - - env: IMAGE=dist-x86_64-freebsd DEPLOY=1 - name: dist-x86_64-freebsd - if: branch = auto - - env: IMAGE=dist-x86_64-musl DEPLOY=1 - name: dist-x86_64-musl - if: branch = auto - - env: IMAGE=dist-x86_64-netbsd DEPLOY=1 - name: dist-x86_64-netbsd - if: branch = auto - - env: IMAGE=asmjs - name: asmjs - if: branch = auto - - env: IMAGE=i686-gnu - name: i686-gnu - if: branch = auto - - env: IMAGE=i686-gnu-nopt - name: i686-gnu-nopt - if: branch = auto - - env: IMAGE=test-various - name: test-various - if: branch = auto - - env: IMAGE=x86_64-gnu - name: x86_64-gnu - if: branch = auto - - env: IMAGE=x86_64-gnu-full-bootstrap - name: x86_64-gnu-full-bootstrap - if: branch = auto - - env: IMAGE=x86_64-gnu-aux - name: x86_64-gnu-aux - if: branch = auto - env: IMAGE=x86_64-gnu-tools name: x86_64-gnu-tools if: branch = auto OR (type = pull_request AND commit_message =~ /(?i:^update.*\b(rls|rustfmt|clippy|miri|cargo)\b)/) - - env: IMAGE=x86_64-gnu-debug - name: x86_64-gnu-debug - if: branch = auto - - env: IMAGE=x86_64-gnu-nopt - name: x86_64-gnu-nopt - if: branch = auto - - env: IMAGE=x86_64-gnu-distcheck - name: x86_64-gnu-distcheck - if: branch = auto - - env: IMAGE=mingw-check - name: mingw-check - if: branch = auto before_install: # We'll use the AWS cli to download/upload cached docker layers as well as diff --git a/appveyor.yml b/appveyor.yml index cd9011730aa..ee1511a0394 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -9,125 +9,12 @@ environment: CARGO_HTTP_CHECK_REVOKE: false matrix: - # 32/64 bit MSVC tests - - CI_JOB_NAME: x86_64-msvc - MSYS_BITS: 64 - RUST_CONFIGURE_ARGS: --build=x86_64-pc-windows-msvc --enable-profiler - SCRIPT: python x.py test - # FIXME(#59637) - NO_DEBUG_ASSERTIONS: 1 - NO_LLVM_ASSERTIONS: 1 - - CI_JOB_NAME: i686-msvc-1 - MSYS_BITS: 32 - RUST_CONFIGURE_ARGS: --build=i686-pc-windows-msvc - SCRIPT: make ci-subset-1 - - CI_JOB_NAME: i686-msvc-2 - MSYS_BITS: 32 - RUST_CONFIGURE_ARGS: --build=i686-pc-windows-msvc - SCRIPT: make ci-subset-2 - - # MSVC aux tests - - CI_JOB_NAME: x86_64-msvc-aux - MSYS_BITS: 64 - RUST_CHECK_TARGET: check-aux EXCLUDE_CARGO=1 - RUST_CONFIGURE_ARGS: --build=x86_64-pc-windows-msvc - - CI_JOB_NAME: x86_64-msvc-cargo - MSYS_BITS: 64 - SCRIPT: python x.py test src/tools/cargotest src/tools/cargo - RUST_CONFIGURE_ARGS: --build=x86_64-pc-windows-msvc - # MSVC tools tests - CI_JOB_NAME: x86_64-msvc-tools MSYS_BITS: 64 SCRIPT: src/ci/docker/x86_64-gnu-tools/checktools.sh x.py /tmp/toolstates.json windows RUST_CONFIGURE_ARGS: --build=x86_64-pc-windows-msvc --save-toolstates=/tmp/toolstates.json --enable-test-miri - # 32/64-bit MinGW builds. - # - # We are using MinGW with posix threads since LLVM does not compile with - # the win32 threads version due to missing support for C++'s std::thread. - # - # Instead of relying on the MinGW version installed on appveryor we download - # and install one ourselves so we won't be surprised by changes to appveyor's - # build image. - # - # Finally, note that the downloads below are all in the `rust-lang-ci` S3 - # bucket, but they cleraly didn't originate there! The downloads originally - # came from the mingw-w64 SourceForge download site. Unfortunately - # SourceForge is notoriously flaky, so we mirror it on our own infrastructure. - - CI_JOB_NAME: i686-mingw-1 - MSYS_BITS: 32 - RUST_CONFIGURE_ARGS: --build=i686-pc-windows-gnu - SCRIPT: make ci-subset-1 - MINGW_URL: https://rust-lang-ci2.s3.amazonaws.com/rust-ci-mirror - MINGW_ARCHIVE: i686-6.3.0-release-posix-dwarf-rt_v5-rev2.7z - MINGW_DIR: mingw32 - # FIXME(#59637) - NO_DEBUG_ASSERTIONS: 1 - NO_LLVM_ASSERTIONS: 1 - - CI_JOB_NAME: i686-mingw-2 - MSYS_BITS: 32 - RUST_CONFIGURE_ARGS: --build=i686-pc-windows-gnu - SCRIPT: make ci-subset-2 - MINGW_URL: https://rust-lang-ci2.s3.amazonaws.com/rust-ci-mirror - MINGW_ARCHIVE: i686-6.3.0-release-posix-dwarf-rt_v5-rev2.7z - MINGW_DIR: mingw32 - - CI_JOB_NAME: x86_64-mingw - MSYS_BITS: 64 - SCRIPT: python x.py test - RUST_CONFIGURE_ARGS: --build=x86_64-pc-windows-gnu - MINGW_URL: https://rust-lang-ci2.s3.amazonaws.com/rust-ci-mirror - MINGW_ARCHIVE: x86_64-6.3.0-release-posix-seh-rt_v5-rev2.7z - MINGW_DIR: mingw64 - # FIXME(#59637) - NO_DEBUG_ASSERTIONS: 1 - NO_LLVM_ASSERTIONS: 1 - - # 32/64 bit MSVC and GNU deployment - - CI_JOB_NAME: dist-x86_64-msvc - RUST_CONFIGURE_ARGS: > - --build=x86_64-pc-windows-msvc - --target=x86_64-pc-windows-msvc,aarch64-pc-windows-msvc - --enable-full-tools - --enable-profiler - SCRIPT: python x.py dist - DIST_REQUIRE_ALL_TOOLS: 1 - DEPLOY: 1 - - CI_JOB_NAME: dist-i686-msvc - RUST_CONFIGURE_ARGS: > - --build=i686-pc-windows-msvc - --target=i586-pc-windows-msvc - --enable-full-tools - --enable-profiler - SCRIPT: python x.py dist - DIST_REQUIRE_ALL_TOOLS: 1 - DEPLOY: 1 - - CI_JOB_NAME: dist-i686-mingw - MSYS_BITS: 32 - RUST_CONFIGURE_ARGS: --build=i686-pc-windows-gnu --enable-full-tools --enable-profiler - SCRIPT: python x.py dist - MINGW_URL: https://rust-lang-ci2.s3.amazonaws.com/rust-ci-mirror - MINGW_ARCHIVE: i686-6.3.0-release-posix-dwarf-rt_v5-rev2.7z - MINGW_DIR: mingw32 - DIST_REQUIRE_ALL_TOOLS: 1 - DEPLOY: 1 - - CI_JOB_NAME: dist-x86_64-mingw - MSYS_BITS: 64 - SCRIPT: python x.py dist - RUST_CONFIGURE_ARGS: --build=x86_64-pc-windows-gnu --enable-full-tools --enable-profiler - MINGW_URL: https://rust-lang-ci2.s3.amazonaws.com/rust-ci-mirror - MINGW_ARCHIVE: x86_64-6.3.0-release-posix-seh-rt_v5-rev2.7z - MINGW_DIR: mingw64 - DIST_REQUIRE_ALL_TOOLS: 1 - DEPLOY: 1 - - # "alternate" deployment, see .travis.yml for more info - - CI_JOB_NAME: dist-x86_64-msvc-alt - MSYS_BITS: 64 - RUST_CONFIGURE_ARGS: --build=x86_64-pc-windows-msvc --enable-extended --enable-profiler - SCRIPT: python x.py dist - DEPLOY_ALT: 1 - matrix: fast_finish: true @@ -222,54 +109,6 @@ test_script: - set NO_CCACHE=1 - sh src/ci/run.sh -on_failure: - # Dump crash log - - set PATH=%PATH%;"C:\Program Files (x86)\Windows Kits\10\Debuggers\X64" - - if exist %LOCALAPPDATA%\CrashDumps for %%f in (%LOCALAPPDATA%\CrashDumps\*) do cdb -c "k;q" -G -z "%%f" - branches: only: - auto - -before_deploy: - - ps: | - New-Item -Path deploy -ItemType directory - Remove-Item -Recurse -Force build\dist\doc - Get-ChildItem -Path build\dist | Move-Item -Destination deploy - Get-ChildItem -Path deploy | Foreach-Object { - Push-AppveyorArtifact $_.FullName -FileName ${env:APPVEYOR_REPO_COMMIT}/$_ - } - -deploy: - - provider: S3 - access_key_id: $(AWS_ACCESS_KEY_ID) - secret_access_key: $(AWS_SECRET_ACCESS_KEY) - bucket: rust-lang-ci2 - set_public: true - region: us-west-1 - artifact: /.*/ - folder: rustc-builds - on: - branch: auto - DEPLOY: 1 - max_error_retry: 5 - - # This provider is the same as the one above except that it has a slightly - # different upload directory and a slightly different trigger - - provider: S3 - access_key_id: $(AWS_ACCESS_KEY_ID) - secret_access_key: $(AWS_SECRET_ACCESS_KEY) - bucket: rust-lang-ci2 - set_public: true - region: us-west-1 - artifact: /.*/ - folder: rustc-builds-alt - on: - branch: auto - DEPLOY_ALT: 1 - max_error_retry: 5 - -# init: -# - ps: iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1')) -# on_finish: -# - ps: $blockRdp = $true; iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))