about summary refs log tree commit diff
path: root/src/ci/run.sh
AgeCommit message (Collapse)AuthorLines
2021-11-15Use a different server for checking clock driftMark Rousskov-1/+1
The detectportal.firefox.com server seems to return a random-ish date; for example I see the following across 5 curl's done consecutively locally, where the real date is approximaly 15 Nov 2021 06:36 UTC. Date: Mon, 15 Nov 2021 13:34:53 GMT Date: Mon, 15 Nov 2021 12:20:21 GMT Date: Mon, 15 Nov 2021 00:06:47 GMT Date: Mon, 15 Nov 2021 17:14:33 GMT Date: Mon, 15 Nov 2021 13:33:21 GMT
2021-10-24Rollup merge of #90100 - Mark-Simulacrum:speed-macos-ci, r=pietroalbiniMatthias Krüger-1/+1
Skip documentation for tier 2 targets on dist-x86_64-apple-darwin I don't have an easy way to test this locally, but I believe it should work. Based on one log result should shave ~14 minutes off the dist-x86_64-apple builder (doesn't help with aarch64 dist or x86_64 test builder, so not actually decreasing total CI time most likely). r? ```@pietroalbini```
2021-10-21Print step timings for try buildsMark Rousskov-1/+1
2021-10-21CI: Enable overflow checks for test (non-dist) buildsHans Kratz-0/+5
2021-06-20Fix CI to fetch master on beta channelMark Rousskov-5/+1
2021-06-07add the x86_64-gnu-stable job to test with stable channelPietro Albini-1/+5
During the 1.52 release process we had to deal with some commits that passed the test suite on the nightly branch but failed on the beta or stable branch. In that case it was due to some UI tests including the channel name in the output, but other changes might also be dependent on the channel. This commit adds a new CI job that runs the Linux x86_64 test suite with the stable branch, ensuring nightly changes also work as stable.
2021-05-06move the current channel to src/ci/channelPietro Albini-8/+1
This will make it easier for tools to programmatically detect which channel CI is building.
2020-12-29ci: stop producing gzip-compressed dist tarballsPietro Albini-0/+5
2020-11-18Revert "Auto merge of #79132 - pietroalbini:beta-next, r=Mark-Simulacrum"Pietro Albini-1/+1
This was landed on master instead of beta!
2020-11-17this is beta 1.49.0Pietro Albini-1/+1
2020-09-29Ensure that all LLVM components requested by tests are available on CIVadim Petrochenkov-0/+2
2020-09-19Do not link LLVM tools to LLVM dylib unless rustc isMark Rousskov-7/+0
Previously we would have some platforms where LLVM was linked to rustc statically, but to the LLVM tools dynamically. That meant we were distributing two copies of LLVM: one as a separate dylib and one statically linked in to librustc_driver.
2020-09-15Enable shared linking to LLVM on non-WindowsMark Rousskov-0/+7
Windows doesn't quite support dynamic linking to LLVM yet, but on other platforms we do. In #76708, it was discovered that we dynamically link to LLVM from the LLVM tools (e.g., rust-lld), so we need the shared LLVM library to link against. That means that if we do not have a shared link to LLVM, and want LLVM tools to work, we'd be shipping two copies of LLVM on all of these platforms: one in librustc_driver and one in libLLVM. Also introduce an error into rustbuild if we do end up configured for shared linking on Windows.
2020-07-15ci: Update dist-{i686,x86_64}-linux to Debian 6Josh Stone-0/+12
This increases the minimum `{i686,x86_64}-unknown-linux-gnu` platform from RHEL/CentOS 5 (glibc 2.5 and kernel 2.6.18) to a slightly newer Debian 6 `squeeze` (glibc 2.11 and kernel 2.6.32). While that release is already EOL, it happens to match the minimum common versions of two enterprise distros that do still need Rust support -- RHEL 6 (glibc 2.12 and kernel 2.6.32) and SLES 11 SP4 (glibc 2.11 and kernel 3.0).
2020-04-10Enforce Python 3 as much as possibleGuillaume Gomez-1/+9
2019-12-18Set release channel on non-dist buildersMark Rousskov-1/+6
Toolstate publication only runs if the channel is "nightly" and previously the toolstate builders did not know that the channel was nightly (since they are not dist builders). A look through bootstrap seems to indicate that nothing should directly depend on the channel being set to `-dev` on the test builders, though this may cause some problems with UI tests (if for some reason they're dumping the channel into stderr), but we cannot find evidence of such so hopefully this is fine.
2019-12-02[CI] fix the `! isCI` check in src/ci/run.shJosh Stone-1/+1
Using `if [ ! isCI ] || ...` doesn't run any command, just tests `isCI` as a string, whereas `if ! isCI || ...` will actually run the `isCI` command and negate its exit status.
2019-11-22ci: add support for GitHub Actions in the CI scriptsPietro Albini-3/+1
2019-10-25ci: cleanup platform detectionPietro Albini-1/+1
2019-09-23Make all alt builders produce parallel-enabled compilersMark Rousskov-0/+3
We're not quite ready to ship parallel compilers by default, but the alt builders are not used too much (in theory), so we believe that shipping a possibly-broken compiler there is not too problematic.
2019-08-13ci: add a check for clock driftPietro Albini-0/+15
Recently we encountered multiple spurious failures where the crates.io certificate was reported as expired, even though it's currently due to expire in a few months. This adds some code to our CI to check for clock drifts, to possibly find the cause or rule out a bad VM clock.
2019-07-23Require a value for configure --debuginfo-levelJosh Stone-1/+1
In `configure.py`, using the `o` function creates an enable/disable boolean setting, and writes `true` or `false` in `config.toml`. However, rustbuild is expecting to parse a `u32` debuginfo level. We can change to the `v` function to have the options require a value.
2019-07-19azure: Prepare configuration for 4-core machinesAlex Crichton-1/+1
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-15ci: Remove Travis/AppVeyor configurationAlex Crichton-18/+0
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-05-30ci: Favor SCRIPT instead of RUST_CHECK_TARGETAlex Crichton-2/+0
Since #61212 we've been timing out on OSX, and this looks to be because we're building tools like Cargo and the RLS twice instead of once. This turns out to be a slight bug in our configuration. CI builders using the `RUST_CHECK_TARGET` directive actually execute `make all` just before their acual target. In `make all` we're building a stage2 cargo, and then in `make dist` we're building a stage1 cargo. Other builders use `SCRIPT` which provides explicit control over what `x.py` script, for example, is used to execute the build. This moves almost all targets to using `SCRIPT` to ensure that we're explicitly specifying what's being built where. Additionally this updates the logic of `RUST_CHECK_TARGET` to remove the pre-flight tidy as well as the pre-flight `make all`. The system LLVM builder (run on PRs) now explicitly runs tidy first and then runs the rest of the test suite.
2019-05-24Auto merge of #60777 - pietroalbini:azure-pipelines, r=alexcrichtonbors-3/+7
Add Azure Pipelines configuration Huge thanks to @johnterickson and @willsmythe for writing the initial config! :heart: I applied some changes to the initial config and disabled most of the builders since we're not going to run all of them during the initial step for the evaluation. [More details about our plans for the Azure Pipelines evaluation.](https://internals.rust-lang.org/t/update-on-the-ci-investigation/10056) r? @alexcrichton @kennytm cc @rust-lang/infra @ethomson @rylev
2019-05-24ci: Enable debuginfo for std only if release channel is setVadim Petrochenkov-1/+1
2019-05-24rustbuild: Simplify debuginfo configurationVadim Petrochenkov-0/+1
2019-05-20Make sure sccache not present doesn't kill the buildAlex Crichton-1/+1
2019-05-13ci: remove fanout from the azure pipelines configPietro Albini-19/+17
2019-05-10Add Azure PipelinesJohn Erickson-20/+26
2019-02-06Revert "Auto merge of #57975 - alexcrichton:debug-exit-appveyor, r=pietroalbini"Pietro Albini-7/+0
This reverts commit d3d0bf0e9f4d748b95ed143cc636d159bfcb4a6f, reversing changes made to 40e6a0bd766ca7b1c582b964131400b8c3e89d76.
2019-02-06Revert "Rollup merge of #58162 - pietroalbini:track-259, r=alexcrichton"Pietro Albini-7/+1
This reverts commit 4c243e2c3d8f02cdcd22fe68acf6a0b3edca2078, reversing changes made to 64f0032a3739b18ae45387744340d9c7ce48b145.
2019-02-05add even more debugging code to track down appveyor 259 exit codePietro Albini-0/+6
2019-02-04add more debugging code to track down appveyor 259 exit codePietro Albini-1/+1
2019-01-30Auto merge of #57975 - alexcrichton:debug-exit-appveyor, r=pietroalbinibors-0/+7
Attempt to debug 259 exit code on AppVeyor Let's try to dig in a bit more and see where this is coming from, it looks like AppVeyor is also unsure where this is coming from!
2019-01-29Attempt to debug 259 exit code on AppVeyorAlex Crichton-0/+7
Let's try to dig in a bit more and see where this is coming from, it looks like AppVeyor is also unsure where this is coming from!
2019-01-28Fix CIJohn Kåre Alsaker-1/+1
2019-01-17Revert "Auto merge of #57670 - rust-lang:beta-next, r=Mark-Simulacrum"Pietro Albini-1/+1
This reverts commit 722b4d695964906807b12379577bce5ee3d23e08, reversing changes made to 956dba47d33fc8b2bdabcd50e5bfed264b570382.
2019-01-16prepare beta 1.33.0Pietro Albini-1/+1
2018-12-25Remove licensesMark Rousskov-9/+0
2018-10-26CI: Set codegen-units-std=1 for dist builds.Michael Woerister-0/+1
2018-10-20Update Cargo, build curl/OpenSSL statically via featuresAlex Crichton-1/+1
In addition to to updating Cargo's submodule and Cargo's dependencies, this also updates Cargo's build to build OpenSSL statically into Cargo as well as libcurl unconditionally. This removes OpenSSL build logic from the bootstrap code, and otherwise requests that even on OSX we build curl statically.
2018-10-13Improve verify_llvm_ir config optionNikita Popov-0/+3
* Make it influence the behavior of the compiled rustc, rather than just the rustc build system. That is, if verify_llvm_ir=true, even manual invocations of the built rustc will verify LLVM IR. * Enable verification of LLVM IR in CI, for non-deploy and deploy-alt builds. This is similar to how LLVM assertions are handled.
2018-10-01Fix conditions to allow missing tools in CIChristian Poveda-1/+1
2018-09-28Add enable-missing-tools optionChristian Poveda-0/+4
2018-09-10Add rustc SHA to released DWARF debuginfoAlex Crichton-0/+1
This commit updates the debuginfo that is encoded in all of our released artifacts by default. Currently it has paths like `/checkout/src/...` but these are a little inconsistent and have changed over time. This commit instead attempts to actually define the file paths in our debuginfo to be consistent between releases. All debuginfo paths are now intended to be `/rustc/$sha` where `$sha` is the git sha of the released compiler. Sub-paths are all paths into the git repo at that `$sha`.
2018-07-13Enabled core dump on Linux, and print stack trace on failure.kennytm-0/+5
2018-06-21Revert "Auto merge of #51662 - Mark-Simulacrum:beta-next, r=Mark-Simulacrum"Mark Simulacrum-1/+1
This reverts commit fff1abadd7a4ec861ca4b9c77035379578ef033d, reversing changes made to 01172a7d137dcba06f190241caadcaabe7c94767.
2018-06-20[beta] Prepare 1.28.0 beta releaseMark Simulacrum-1/+1