about summary refs log tree commit diff
path: root/src/ci/docker
AgeCommit message (Collapse)AuthorLines
2019-08-23Auto merge of #63521 - newpavlov:redox_builder, r=pietroalbinibors-4/+2
Re-enable Redox builder (take 2) Closes: #63160
2019-08-21ci: move libc mirrors to the rust-lang-ci-mirrors bucketPietro Albini-1/+1
2019-08-17Merge branch 'master' into redox_builderArtyom Pavlov-60/+14
2019-08-15Use libunwind from llvm-project submodule for musl targetsMarco A L Barbosa-50/+2
2019-08-13Re-enable Redox builder (take 2)newpavlov-4/+2
2019-08-12ci: move mirrors to their standalone bucketPietro Albini-10/+12
Currently mirrors are stored in the rust-lang-ci2 S3 bucket along with CI toolchains. This is problematic for multiple reasons: - CI IAM credentials are allowed to both edit and delete those files. A malicious user gaining access to those credentials would be able to change our mirrored dependencies, possibly backdooring the compiler. - Contents of the rust-lang-ci2 bucket are disposable except for the mirrors' content. When we implement backups for S3 buckets we'd have to replicate just that part of the bucket, complicating the backup logic and increasing the chance of mistakes. A standalone bucket will be way easier to backup. This commit switches our CI to use the new rust-lang-ci-mirrors bucket.
2019-08-09Check links on all platforms when running locallyMateusz Mikuła-0/+3
2019-08-08remove test-miri flag from bootstrapRalf Jung-1/+0
2019-08-03ci: move .azure-pipelines to src/ci/azure-pipelinesPietro Albini-1/+2
2019-08-03Rollup merge of #63107 - adrian-budau:master, r=alexcrichtonMazdak Farrokhzad-6/+30
Added support for armv7-unknown-linux-gnueabi/musleabi Fixes #63101 Some things that are not done and I hope someone can help me with: * During the ci build of `armv7-unknown-linux-gnueabi` `openssl` must be built (to build cargo) but `openssl` does not yet support this target. This feels slightly like a chicken-and-egg problem, any feedback is welcome. * Should I add any tests for any of these targets?
2019-08-02Added support for armv7-unknown-linux-gnueabi and armv7-unknown-linux-musleabi.Adrian Budau-6/+30
Support for the targets in the compiler and std build in the CI.
2019-08-02Auto merge of #61393 - gnzlbg:update_libc, r=gnzlbgbors-1/+3
Update Cargo.lock
2019-08-01Temporarily disable the redox buildergnzlbg-1/+3
2019-08-01Rollup merge of #63191 - pietroalbini:really-fix-toolstate, r=alexcrichtonPietro Albini-0/+1
ci: fix toolstate not pushing data for Linux A recent commit modified toolstate to only push updated data when the `TOOLSTATE_PUBLISH` environment variable is present. This worked fine on Windows but failed on Linux, since Linux jobs run inside Docker containers and the variable wasn't forwarded inside it. This changes the Docker startup code to set the `TOOLSTATE_PUBLISH` enviornment variable inside the container if it's present outside. r? @alexcrichton fixes https://github.com/rust-lang/rust/issues/63190
2019-08-01ci: forward the TOOLSTATE_PUBLISH environment variable inside dockerPietro Albini-0/+1
A recent commit modified toolstate to only push updated data when the TOOLSTATE_PUBLISH environment variable is present. This worked fine on Windows but failed on Linux, since Linux jobs run inside Docker containers and the variable wasn't forwarded inside it. This changes the Docker startup code to set the TOOLSTATE_PUBLISH enviornment variable inside the container if it's present outside.
2019-07-28Rollup merge of #62759 - mark-i-m:rustc-guide-toolstate-check, r=kennytmMazdak Farrokhzad-5/+33
Actually add rustc-guide to toolstate, don't fail builds for the guide cc @ehuss r? @kennytm
2019-07-28Rollup merge of #62949 - mati865:patch-1, r=alexcrichtonMazdak Farrokhzad-4/+0
Re-enable assertions in PPC dist builder Fixes https://github.com/rust-lang/rust/issues/36150 Log of successful build: https://dev.azure.com/mati865/6518b167-4cf6-4587-b3d1-8e137f2fb2e4/_apis/build/builds/23/logs/825
2019-07-27Remove run-pass test suitesVadim Petrochenkov-2/+1
2019-07-26Rollup merge of #62970 - pietroalbini:fix-tools-builder, r=alexcrichtonMazdak Farrokhzad-1/+1
ci: gate toolstate repo pushes on the TOOLSTATE_PUBLISH envvar This PR fixes toolstate failing to push on the LinuxTools PR builder by gating the pushes on the new `TOOLSTATE_PUBLISH` environment variable, which is set on prod credentials but not on the PR ones. The old code checked whether the access token was set, but that doesn't work due to an Azure quirk. For a bit of background, secret environment variables are not available by default, but each step needs to explicitly declare which secret vars to load: ```yaml - bash: echo foo env: SECRET_VAR: $(SECRET_VAR) ``` This works fine when the variable is present but when it's missing, instead of setting `SECRET_VAR` to an empty string or just not setting it at all, Azure Pipelines puts the literal `$(SECRET_VAR)` as the content, which completly breaks the old check we had. I tried almost every thing to make this work in a sensible way, and the only conclusion I reached is to set the variable at the top level with the runtime expression evaluation syntax, which sets the variable to an empty string if missing: ```yaml # At the top: variables: - name: MAYBE_SECRET_VAR value: $[ variables.MAYBE_SECRET_VAR ] # In the step: - bash: echo foo env: SECRET_VAR: $(MAYBE_SECRET_VAR) ``` While that *could've worked* it was ugly and messy, so I just opted to add yet another non-secret variable. r? @alexcrichton fixes #62811
2019-07-25ci: gate toolstate repo pushes on the TOOLSTATE_PUBLISH envvarPietro Albini-1/+1
Unfortunately due to an Azure quirk the TOOLSTATE_REPO_ACCESS_TOKEN is not suitable to gate whether to push new commits to the repo, as if it's not defined on the Azure side it will actually be set to the literal `$(TOOLSTATE_REPO_ACCESS_TOKEN)`, which screws everything up. This instead adds another, non-secret environment variable to gate publishing: TOOLSTATE_PUBLISH. As non-secret environment variables behave correctly this fixes the issue.
2019-07-25Rollup merge of #62784 - Disasm:riscv32i, r=estebankMazdak Farrokhzad-0/+1
Add riscv32i-unknown-none-elf target This target is likely to be useful for constrained FPGA soft-cores, such as picorv32 and HeavyX.
2019-07-24Re-enable assertions in PPC dist builderMateusz Mikuła-4/+0
2019-07-23add back check for update prsMark Mansi-0/+1
2019-07-23more commentsRalf Jung-0/+1
2019-07-23more callback docsRalf Jung-4/+7
2019-07-23more comments for toolstate scriptsRalf Jung-3/+14
2019-07-19azure: Prepare configuration for 4-core machinesAlex Crichton-6/+40
This commit updates some of our assorted Azure/CI configuration to prepare for some 4-core machines coming online. We're still in the process of performance testing them to get final numbers, but some changes are worth landing ahead of this. The updates here are: * Use `C:/` instead of `D:/` for submodule checkout since it should have plenty of space and the 4-core machines won't have `D:/` * Update `lzma-sys` to 0.1.14 which has support for VS2019, where 0.1.10 doesn't. * Update `src/ci/docker/run.sh` to work when it itself is running inside of a docker container (see the comment in the file for more info) * Print step timings on the `try` branch in addition to the `auto` branch in. The logs there should be seen by similarly many humans (not many) and can be useful for performance analysis after a `try` build runs. * Install the WIX and InnoSetup tools manually on Windows instead of relying on pre-installed copies on the VM. This gives us more control over what's being used on the Azure cloud right now (we control the version) and in the 4-core machines these won't be pre-installed. Note that on AppVeyor we actually already were installing InnoSetup, we just didn't carry that over on Azure!
2019-07-18Update src/ci/docker/x86_64-gnu-tools/checkregression.pyWho? Me?!-1/+1
Co-Authored-By: kennytm <kennytm@gmail.com>
2019-07-18Add riscv32i-unknown-none-elf targetVadim Kaushan-0/+1
2019-07-18embedded-book failures don't block betaMark Mansi-1/+1
2019-07-18Update src/ci/docker/x86_64-gnu-tools/checkregression.pyWho? Me?!-1/+1
Co-Authored-By: Ralf Jung <post@ralfj.de>
2019-07-18Update src/ci/docker/x86_64-gnu-tools/checktools.shWho? Me?!-1/+1
Co-Authored-By: Ralf Jung <post@ralfj.de>
2019-07-18add a few comments for the toolstate stuffRalf Jung-4/+12
2019-07-18Regressions ok for miri tooWho? Me?!-1/+1
Co-Authored-By: kennytm <kennytm@gmail.com>
2019-07-17don't fail builds for rustc-guideMark Mansi-2/+5
2019-07-17actually test rustc-guide with toolstateMark Mansi-0/+1
2019-07-16Auto merge of #62592 - nikic:actually-update-llvm, r=alexcrichtonbors-1/+0
Update to LLVM 9 trunk Following the preparatory changes in #62474, this updates the LLVM submodule to https://github.com/rust-lang/llvm-project/tree/rustc/9.0-2019-07-12 and: * Changes the LLVM Rust bindings to account for the new SubtargetSubTypeKV. * Adjusts a codegen test for the new form of the byval attribute that takes a type. * Makes a PGO codegen test more liberal with regard to order and linkage. * Builds InstrProfilingPlatformWindows.c as part of libprofiler_builtins. * Moves registration of additional passes (in particular sanitizers) to the end of the module pass manager. * Disables LLDB on builders. r? @alexcrichton
2019-07-15ci: Remove Travis/AppVeyor configurationAlex Crichton-33/+4
Now that we've fully moved to Azure Pipelines and bors has been updated to only gate on Azure this commit removes the remaining Travis/AppVeyor support contained in this repository. Most of the deletions here are related to producing better output on Travis by folding certain sections. This isn't supported by Azure so there's no need to keep it around, and if Azure ever adds support we can always add it back!
2019-07-15Disable building of LLDBNikita Popov-1/+0
2019-07-06cfg: linkcheck only on x86-64 linuxMark Mansi-8/+0
2019-07-06add missing libssl-dev dependency to docker images on travisAndré Luis Leal Cardoso Junior-0/+18
2019-07-06Move installing of deps to the docker container, instead of installing on ↵André Luis Leal Cardoso Junior-0/+2
the host machine on travis
2019-07-06Track rustc-guide on toolstateAndré Luis Leal Cardoso Junior-0/+1
2019-06-30Auto merge of #61252 - indygreg:upgrade-musl, r=alexcrichtonbors-1/+1
Update musl to 1.1.22 This is the latest available version. I noticed Rust wasn't using the latest version when I attempted to have Cargo link object files produced outside of Cargo / Rust's toolchain and was getting missing symbol errors. Those missing symbols were added in 1.1.21 and 1.1.22. I'm not fully sure of the implications of this change or how comprehensive the test coverage is. Upstream changes in 1.1.21 and 1.1.22 can be found at https://git.musl-libc.org/cgit/musl/tree/WHATSNEW?h=v1.1.22&id=e97681d6f2c44bf5fa9ecdd30607cb63c780062e#n1989.
2019-06-26ci: Disable assertions in PR buildsAlex Crichton-0/+6
The PR builder on Azure currently takes 2.5h which is a bit long, so this commit disables debug assertions and llvm assertions in an attempt to speed up that builder and have PR builds come back a bit more quickly. Other builders continue to enable debug assertions and test the compiler there.
2019-06-15Auto merge of #59752 - Zoxc:dylib-fix, r=alexcrichtonbors-4/+0
Limit dylib symbols This makes `windows-gnu` match the behavior of `windows-msvc`. It probably doesn't make sense to export these symbols on other platforms either.
2019-06-13ci: Enable toolstate tracking on AzureAlex Crichton-1/+2
Currently just run it through its paces but don't actually push to official locations. Instead let's just push to a separate fork (mine) as well as open issues in a separate fork (mine). Make sure that people aren't pinged for these issues as well! This should hopefully ensure that everything is working on Azure and give us a chance to work through any issues that come up.
2019-06-12Ignore NVPTX testsJohn Kåre Alsaker-4/+0
2019-06-12Auto merge of #61587 - alexcrichton:distcheck-no-assertions, r=pietroalbinibors-0/+7
ci: Disable LLVM/debug assertions for distcheck The purpose of distcheck is to test `./x.py test` from a tarball, not to test that all assertions pass all the time. These assertions are largely just redundant with other builders, so skip the assertions for now and save a good chunk of time on CI. cc #61185
2019-06-08Auto merge of #61655 - RalfJung:checktools, r=kennytmbors-3/+10
checktools: unify grepping the TOOLSTATE file The file was grepped twice but in a different way. This unifies the code to make sure it is consistent. Or were these deliberately not doing the same thing? That seems strange though. I wouldn't know how to test these changes.