about summary refs log tree commit diff
path: root/src/ci/azure-pipelines
AgeCommit message (Collapse)AuthorLines
2022-06-05remove azure pipelines configurationPietro Albini-48/+0
2020-10-02ci: stop running macOS builds on Azure PipelinesPietro Albini-181/+3
2020-09-18Make sure we build target-only things (e.g., docs) for host platforms tooMark Rousskov-1/+1
2020-09-12Add host= configuration for msvc/darwinMark Rousskov-1/+1
2020-08-26Disable ninja on macOS CIJosh Triplett-3/+3
Should be re-enabled when we have a recipe for installing ninja on macOS.
2020-07-27Use --stage 2 explicitly in CIJoshua Nelson-1/+1
- expand yaml anchors - don't use --stage 2 for dist; that's already the default
2020-07-22ci: disable Azure Pipelines except for macOSPietro Albini-298/+3
2020-07-20ci: upload non-macOS from GHA instead of Azure PipelinesPietro Albini-3/+6
2020-07-15Rollup merge of #72973 - msizanoen1:riscv-host, r=pietroalbiniManish Goregaokar-0/+1
RISC-V GNU/Linux as host platform This PR add a new builder named `dist-riscv64-linux` that builds the compiler toolchain for RISC-V 64-bit GNU/Linux. r? @alexcrichton
2020-07-11RISC-V GNU/Linux as host platformmsizanoen1-0/+1
2020-07-08build dist for x86_64-unknown-illumosJoshua M. Clulow-0/+1
This change creates a new Docker image, "dist-x86_64-illumos", and sets things up to build the full set of "dist" packages for illumos hosts, so that illumos users can use "rustup" to install packages. It also adjusts the manifest builder to expect complete toolchains for this platform.
2020-07-03ci: move all x86_64 runners to the host-x86_64 directoryPietro Albini-1/+1
We need to add runners designed for an aarch64 host system, and it'd be nice to return an error message if someone tries to run an image designed for an host architecture in another one. To start the work on this, this commit moves all the existing builders in the host-x86_64 directory, and changes the run.sh script to look up the image in the correct directory based on the host architecture.
2020-07-01Rollup merge of #72569 - ChrisDenton:remove-innosetup, r=nikomatsakisManish Goregaokar-4/+0
Remove legacy InnoSetup GUI installer On Windows the InnoSetup `.exe` installer was superseded by the MSI installer long ago. It's no longer needed. The `.exe` installer hasn't been linked from the [other installation methods](https://forge.rust-lang.org/infra/other-installation-methods.html#standalone) page in many years. As far as I can tell the intent was always to remove this installer once the MSI proved itself. Though admittedly both installers feel very "legacy" at this point. Removing this would mean we only maintain one Windows GUI installer and would speed up the distribution phase. As a result of removing InnoSetup, this closes #24397
2020-06-17ci: disable alt build during try buildsPietro Albini-2/+0
The build is not actually needed often, and it can be added back on a case-by-case basis if a specific PR needs access to it.
2020-06-15Rollup merge of #73296 - ehuss:remove-msvc-aux, r=Mark-SimulacrumRalf Jung-4/+0
Remove vestigial CI job msvc-aux. This CI job isn't really doing anything, so it seems prudent to remove it. For some history: * This was introduced in #48809 when the msvc job was split in two to keep it under 2 hours (oh the good old days). At the time, this check-aux job did a bunch of things: * tidy * src/test/pretty * src/test/run-pass/pretty * src/test/run-fail/pretty * src/test/run-pass-valgrind/pretty * src/test/run-pass-fulldeps/pretty * src/test/run-fail-fulldeps/pretty * Tidy was removed in #60777. * run-pass and run-pass-fulldeps moved to UI in #63029 * src/test/pretty removed in #58140 * src/test/run-fail moved to UI in #71185 * run-fail-fulldeps removed in #51285 Over time through attrition, the job was left with one lonely thing: `src/test/run-pass-valgrind/pretty`. And of course, this wasn't actually running the "pretty" tests. The normal `run-pass-valgrind` tests ran, and then when it tried to run in "pretty" mode, all the tests were ignored because compiletest thought nothing had changed (apparently compiletest isn't fingerprinting the mode? Needs more investigation…). `run-pass-valgrind` is already being run as part of `x86_64-msvc-1`, so there's no need to run it here. I've taken the liberty of removing `src/test/run-pass-valgrind/pretty` as a distinct test. I'm guessing from the other PR's that the pretty tests should now live in `src/test/pretty`, and that the team has moved away from doing pretty tests on other parts of the `src/test` tree.
2020-06-12Remove vestigial CI job msvc-aux.Eric Huss-4/+0
2020-06-11Use preinstalled MSYS2Mateusz Mikuła-4/+0
2020-06-04Enable lld for Cargo tests on Windows.Eric Huss-1/+1
2020-05-25Remove legacy InnoSetup GUI installerChris Denton-4/+0
On Windows the InnoSetup installer was superseded by the MSI installer. It's no longer needed.
2020-04-14Update the minimum external LLVM to 8Josh Stone-2/+2
LLVM 8 was released on March 20, 2019, over a year ago.
2020-03-24ci: add notice on top of the azure pipelines configurationPietro Albini-0/+55
This will inform contributors tweaking the Azure Pipelines configuration that they also need to tweak the GitHub Actions setup.
2020-03-24ci: rename script windows-symlink-build-dir to symlink-build-dirPietro Albini-2/+2
There will be a need to symlink the Linux build directory in the future as well, so let's make the script name generic.
2020-03-13fix a glaring typoMatt Cooper-1/+1
2020-03-10establish immutable source for RUST_CONFIGURE_ARGSMatt Cooper-23/+23
2020-03-06fix various typosMatthias Krüger-1/+1
2020-02-19Rollup merge of #68863 - pietroalbini:azure-macos-10.15, r=Mark-SimulacrumDylan DPC-6/+2
ci: switch macOS builders to 10.15 Azure Pipelines is deprecating the macOS 10.13 image we're currently running, [and they plan to remove them](https://devblogs.microsoft.com/devops/removing-older-images-in-azure-pipelines-hosted-pools/) on March 23, 2020. This PR switches our macOS builders to macOS 10.15. r? @Mark-Simulacrum
2020-02-18Clean out some default-installed directoriesMark Rousskov-0/+3
This helps us have enough disk space for our builders to be able to complete successfully. For now, the choices are ad-hoc and 'definitely not needed'. This should never fail the build, as everything our build needs should be inside Docker.
2020-02-17ci: switch macOS builders to 10.15Pietro Albini-6/+2
2019-12-30ci: remove 32-bit apple targetsPietro Albini-20/+1
2019-12-10Move CI to new builtin check-toolstateMark Rousskov-5/+2
2019-12-02Update the minimum external LLVM to 7Josh Stone-2/+2
LLVM 7 is over a year old, which should be plenty for compatibility. The last LLVM 6 holdout was llvm-emscripten, which went away in #65501. I've also included a fix for LLVM 8 lacking `MemorySanitizerOptions`, which was broken by #66522.
2019-11-26Revert "DO NOT MERGE: enable windows try builder"Mark Rousskov-10/+59
This reverts commit 90a37bce44d145715eeac9f1f2f34433fc813ef0.
2019-11-22DO NOT MERGE: enable windows try builderPietro Albini-59/+10
2019-11-22ci: guess some environment variables based on builder name and osPietro Albini-143/+41
Some environment variables (like DEPLOY or DEPLOY_ALT for dist builders, or IMAGE on Linux builders) are set on a lot of builders, and whether they should be present or not can be detected automatically based on the builder name and the platform. This commit simplifies the CI configuration by automatically setting those environment variables.
2019-11-22ci: add support for GitHub Actions in the CI scriptsPietro Albini-31/+0
2019-11-12ci: move validate-toolstate.sh in the mingw-check imagePietro Albini-8/+0
The task was already run just there, so this cleans things up.
2019-11-12ci: extract collecting cpu stats into a scriptPietro Albini-5/+2
2019-11-12ci: extract running the build into a scriptPietro Albini-14/+1
2019-11-12ci: extract validate-toolstate into a scriptPietro Albini-12/+1
2019-11-12ci: remove the MSYS_BITS env varPietro Albini-25/+7
2019-11-12ci: remove the MINGW_DIR and MINGW_ARCHIVE env varsPietro Albini-12/+0
2019-11-12ci: replace MINGW_URL with CUSTOM_MINGW=1Pietro Albini-6/+6
This commit replaces the mirrors base URL contained in the MINGW_URL with a CUSTOM_MINGW=1 environment variable. The mirrors base URL will be fetched instead through the MIRRORS_BASE environment variable, defined in src/ci/shared.sh.
2019-11-07Attempt to fix *.yml confguration on AzureAlex Crichton-2/+2
Currently the `RUST_CONFIGURE_ARGS` variable apparently has a trailing newline at the end of it due to the way it's configured in yaml. This causes issues with MSVC's `install-clang.sh` step where the way the bash syntax works out means that we drop the arg we're trying to add and it doesn't actually get added! The hopeful fix here is to tweak how we specify the yaml syntax to not have a trailing newline, we'll see what CI says about this...
2019-10-31Rollup merge of #65274 - pietroalbini:ci-upload-toolstate, r=alexcrichtonMazdak Farrokhzad-32/+18
Upload toolstates.json to rust-lang-ci2 This PR does two things: * Following up with https://github.com/rust-lang/rust/pull/65202, it migrates deploying artifacts to CI in a script. Both uploading release artifacts and CPU stats were merged into the same script, designing it to be easily extended. * Uploads the toolstate JSON to `rust-lang-ci2` along with the release artifacts, both for Linux and Windows. This is needed because @RalfJung wants to stop shipping MIRI when its tests are failing, and the toolstate repo doesn't have entries for each commit. Having the toolstate data (just for that specific commit) on `rust-lang-ci2` will simplify the code a lot. r? @alexcrichton cc @RalfJung
2019-10-30ci: move toolstates.json to /tmp/toolstate/ and docker mount itPietro Albini-2/+2
Before this commit toolstates.json was stored in /tmp and it wasn't mounted outside the build container. That caused uploading the file in the upload-artifacts task to fail, as the file was missing on the host. Mounting /tmp/toolstates.json alone is not the best approach: if the file is missing when the container is started the Docker engine will create a *directory* named /tmp/toolstates.json. The Docker issue could be solved by pre-creating an empty file named /tmp/toolstates.json, but doing that could cause problems if bootstrap fails to generate the file and the toolstate scripts receive an empty JSON. The approach I took in this commit is to instead mount a /tmp/toolstate directory inside Docker, and create the toolstates.json file in it. That also required a small bootstrap change to ensure the directory is created if it's missing.
2019-10-29ci: upload toolstates.json to rust-lang-ci2Pietro Albini-0/+2
Uploading the toolstate data for each commit will help our release tooling understand which components are failing, to possibly skip shipping broken tools to users.
2019-10-29ci: extract uploading artifacts into a scriptPietro Albini-30/+14
2019-10-29ci: extract job skipping logic into a scriptPietro Albini-14/+1
2019-10-29ci: enable "run when submodule changes" with environment variablesPietro Albini-28/+15
We have a job in our CI (PR's x86_64-gnu-tools) that's supposed to run only when a submodule is changed in the PR, and it works by having a task at the start of the build that skips all the following tasks if the condition isn't met. Before this commit that task was gated with template parameters, which is a unique feature of Azure Pipelines. To make our CI more generic this commit switches the gate to use a simple environment variable plus a condition, which should be supported on more CI providers.
2019-10-25ci: set MSYS_BITS environment variable for all windows buildersPietro Albini-0/+2
A few dist builders lacked that variable, causing build failures.