about summary refs log tree commit diff
path: root/src/ci
AgeCommit message (Collapse)AuthorLines
2020-08-02Auto merge of #74675 - pietroalbini:aarch64-ci-fallible, r=Mark-Simulacrumbors-1/+16
Add fallible AArch64 CI builder This adds the `aarch64-gnu` CI builder to the `auto-fallible` job, as a first step in the process of actually gating on it. r? @Mark-Simulacrum
2020-08-01Rollup merge of #74995 - sunfishcode:update-llvm, r=alexcrichtonManish Goregaokar-3/+3
Update the WASI libc build to LLVM 10. Among other things, this brings in [the `__main_argc_argv`] patch, which simplifies the interaction between the compiler and WASI libc's startup code, which will help work on reactor support. [the `__main_argc_argv` patch]: https://github.com/llvm/llvm-project/commit/00072c08c75050ae2c835b7bb0e505475dbcd7b9 r? @alexcrichton
2020-08-01Auto merge of #74993 - sunfishcode:update-wasi-libc, r=alexcrichtonbors-2/+2
Update the bundled wasi-libc with libstd This just updates WASI libc, in preparation for WASI reactor support in a separate change. r? @alexcrichton
2020-07-31Update the WASI libc build to LLVM 10.Dan Gohman-3/+3
Among other things, this brings in [the `__main_argc_argv`] patch, which simplifies the interaction between the compiler and WASI libc's startup code, which will help work on reactor support. [the `__main_argc_argv` patch]: https://github.com/llvm/llvm-project/commit/00072c08c75050ae2c835b7bb0e505475dbcd7b9
2020-07-31Update the bundled wasi-libc with libstdDan Gohman-2/+2
This just updates WASI libc, in preparation for WASI reactor support in a separate change.
2020-07-31Auto merge of #74844 - asomers:freebsd-profiler, r=pietroalbinibors-2/+2
Enable the profiler on FreeBSD FreeBSD has been doing this in our own package builds for two months now. https://svnweb.freebsd.org/ports?view=revision&revision=535771
2020-07-30Rollup merge of #74871 - etherealist:musl_doc, r=Mark-SimulacrumManish Goregaokar-1/+0
Enable docs on dist-x86_64-musl Add the `rust-docs` component to toolchain `x86_64-unknown-linux-musl`, which allows people using rustup on their musl-based linux distribution to download the rust-docs. `--disable-docs` is based on the assumption that `x86_64-unknown-linux-musl` is only a cross-compile target. I have tested that the docs are built. I assume the build-system will automatically detect the docs and create a `rust-docs` component. I will [monitor](https://rust-lang.github.io/rustup-components-history/x86_64-unknown-linux-musl.html) the components and create a follow-up PR, if the docs aren't published. See also #70619, where we enabled `rust-lld` to enable the wasm-workflow on musl-based linux distributions.
2020-07-28Use --stage 2 in checktoolsJoshua Nelson-5/+5
- Remove useless --stage 2 argument to checktools.sh - Fix help text for expand-yaml-anchors (it had a typo)
2020-07-28Enable docs on dist-x86_64-muslDavid Sonder-1/+0
Add the rust-docs component to toolchain x86_64-unknown-linux-musl, which allows people using rustup on their musl-based linux distribution to download the rust-docs.
2020-07-27Use --stage 2 explicitly in CIJoshua Nelson-33/+33
- expand yaml anchors - don't use --stage 2 for dist; that's already the default
2020-07-27mv std libs to library/mark-8/+8
2020-07-27Enable the profiler on FreeBSDAlan Somers-2/+2
FreeBSD has been doing this in our own package builds for two months now. https://svnweb.freebsd.org/ports?view=revision&revision=535771
2020-07-24Rollup merge of #74639 - msirringhaus:master, r=cuviperManish Goregaokar-12/+12
Downgrade glibc to 2.11.1 for ppc, ppc64 and s390x As discussed in #73782 I've tested these changes on rust 1.43.0 for all the specified archs and used the resulting binaries to bootstrap building rust 1.43.1. I've also shortly tested these changes on master on ppc64.
2020-07-23ci: add aarch64-gnu as a fallible auto builderPietro Albini-0/+10
2020-07-23ci: avoid symlinking the build directory on self-hosted buildersPietro Albini-1/+6
2020-07-23Downgrade glibc to 2.11.1 for ppc, ppc64 and s390xMartin Sirringhaus-12/+12
2020-07-22Rollup merge of #74600 - Mark-Simulacrum:try-perf, r=pietroalbiniManish Goregaokar-3/+4
Enable perf try builder This adds a dedicated branch for perf to use for CI, intended to allow perf to enqueue builds without needing to use bors. bors is great, but bors requires an open PR to work, and we want to invoke perf on closed PRs sometimes (in particular, rollups).
2020-07-22Enable perf try builderMark Rousskov-3/+4
This adds a dedicated branch for perf to use for CI, intended to allow perf to enqueue builds without needing to use bors. bors is great, but bors requires an open PR to work, and we want to invoke perf on closed PRs sometimes (in particular, rollups).
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-7/+25
2020-07-20ci: allow RLA to pick the right PR numberPietro Albini-0/+9
2020-07-19Auto merge of #74163 - cuviper:debian6, r=Mark-Simulacrumbors-98/+101
ci: Update dist-{i686,x86_64}-linux to Debian 6 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). Closes #62516.
2020-07-17Rollup merge of #74418 - rye:gha-dedup-shell-setting, r=pietroalbiniManish Goregaokar-51/+4
ci: Set `shell: bash` as a default, remove duplicates A follow-up to #74406, this commit merely removes the `shell: bash` lines where they were added in favor of setting defaults for *all* "run" steps in the jobs that run the tests. The changes in #74406 were needed because of an upstream change to the `windows-2019` GitHub Actions image. Previously, the configuration worked fine without specifying `shell: bash`, but for some reason this broke with a new change that was deployed today. The preceding PR was a hotfix to get CI passing, but there was a slightly less duplicative way to specify the default shell for the jobs, which was to set the `defaults.run` option. This change applies to the `pr`, `try`, `auto`, and `auto-fallible` jobs, which are derived from the YAML-anchor `base-ci-job`. I did not apply these changes to the `master`, `try-success`, `try-failure`, `auto-success`, or `auto-failure` jobs because they have only a few steps. cc/r? @Mark-Simulacrum
2020-07-17ci: Replace exec-with-shell wrapper with "plain bash"Kristofer Rye-31/+4
Also, promote defaults.run.shell from inside only the primary jobs to the top level. The src/ci/exec-with-shell.py wrapper script was formerly used to change out the shell mid-job by intercepting a CI_OVERRIDE_SHELL environment variable. Now, instead, we just set `bash` as the global default across all jobs, and we also delete the exec-with-shell.py script. Signed-off-by: Kristofer Rye <kristofer.rye@gmail.com>
2020-07-17ci: Stop setting CI_OVERRIDE_SHELL environment variableKristofer Rye-3/+0
This will render the src/ci/exec-with-shell.py script more or less useless, but we're going to replace that by just using the system bash instead. Signed-off-by: Kristofer Rye <kristofer.rye@gmail.com>
2020-07-17Auto merge of #74395 - Mark-Simulacrum:stage0-next, r=pietroalbinibors-0/+4
Bump version to 1.47 This also bumps to a more recent rustfmt version, just to keep us relatively up to date (though almost nothing has changed in rustfmt we use beyond bumps to the parser infra). No formatting changes as a result of this. r? @pietroalbini
2020-07-16Add zlib1g to builder depsMark Rousskov-0/+4
2020-07-16ci: Set `shell: bash` as a default, remove duplicatesKristofer Rye-20/+3
A follow-up to #74406, this commit merely removes the `shell: bash` lines where they are explicitly added in favor of setting defaults for *all* "run" steps. Signed-off-by: Kristofer Rye <kristofer.rye@gmail.com>
2020-07-16Set shell for github actions CIMark Rousskov-0/+20
2020-07-15Rollup merge of #74294 - msirringhaus:master, r=pietroalbiniManish Goregaokar-8/+31
Update cross-compilation README README seemed rather out of date. I hope the information in my PR is now correct (it was more or less assembled by asking in zulip and learning-by-doing).
2020-07-15Rollup merge of #72973 - msizanoen1:riscv-host, r=pietroalbiniManish Goregaokar-23/+39
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-15ci: Update dist-{i686,x86_64}-linux to Debian 6Josh Stone-98/+101
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-07-15Auto merge of #71272 - jclulow:illumos-x86-ci, r=pietroalbinibors-0/+214
build dist for x86_64-unknown-illumos 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-13Move all code-snippets to /tmp/ as basedirMartin Sirringhaus-1/+1
2020-07-13Fix typoMartin Sirringhaus-2/+3
2020-07-13Update cross-compilation READMEMartin Sirringhaus-8/+30
2020-07-11RISC-V GNU/Linux as host platformmsizanoen1-23/+39
2020-07-10Rollup merge of #74161 - tblah:riscv64gc-dockerfile-improvment, ↵Manish Goregaokar-5/+5
r=Mark-Simulacrum Fix disabled dockerfiles When the dockerfiles were moved into the host-x86_64 directory, paths for COPY commands were updated with the new host-x86_64/ prefix. This suggested that the intended context was src/ci/docker. However, the context for disabled docker images was src/ci/docker/host-x86_64. This broke the new paths and prevented src/ci/docker/scripts from being included in the context at all. This commit corrects this context allowing docker to find the files it needs for COPY commands. Also includes a quick fix to riscv recommended by @bjorn3
2020-07-10ci: allow gating gha on everything but macOSPietro Albini-36/+45
In our GitHub Actions setup macOS is too unreliable to gate on it, but the other builders work fine. This commit splits the macOS builders into a separate job (called auto-fallible), allowing us to gate on the auto job without failing due to macOS spurious failures.
2020-07-08build dist for x86_64-unknown-illumosJoshua M. Clulow-0/+214
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-08ci: fix context for disabled docker imagesTom Eccles-2/+2
When the dockerfiles were moved into the host-x86_64 directory, paths for COPY commands were updated with the new host-x86_64/ prefix. This suggested that the intended context was src/ci/docker. However, the context for disabled docker images was src/ci/docker/host-x86_64. This broke the new paths and prevented src/ci/docker/scripts from being included in the context at all. This commit corrects this context allowing docker to find the files it needs for COPY commands.
2020-07-08ci: disabled: riscv: minimise docker overlaysTom Eccles-3/+3
Suggested by @bjorn3 Every RUN command creates a new overlay on top of the image as of before the RUN command. Using fewer RUN commands prevents intermediate overlays (which in this case would have contained the entire Linux source tree).
2020-07-04Auto merge of #74019 - Manishearth:rollup-2st3jsk, r=Manishearthbors-1/+1
Rollup of 12 pull requests Successful merges: - #73140 (Fallback to xml.etree.ElementTree) - #73670 (Add `format_args_capture` feature) - #73693 (Use exhaustive match in const_prop.rs) - #73845 (Use &raw in A|Rc::as_ptr) - #73861 (Create E0768) - #73881 (Standardize bibliographic citations in rustc API docs) - #73925 (Improve comments from #72617, as suggested by RalfJung) - #73949 ([mir-opt] Fix mis-optimization and other issues with the SimplifyArmIdentity pass) - #73984 (Edit docs for rustc_data_structures::graph::scc) - #73985 (Fix "getting started" link) - #73997 (fix typo) - #73999 (Bump mingw-check CI image from Ubuntu 16.04 to 18.04.) Failed merges: - #74000 (add `lazy_normalization_consts` feature gate) r? @ghost
2020-07-03Bump mingw-check CI image from Ubuntu 16.04 to 18.04.Eduard-Mihai Burtescu-1/+1
2020-07-03ci: remove the emulated aarch64-gnu imagePietro Albini-3179/+0
2020-07-03ci: add native aarch64-gnu docker builderPietro Albini-2/+38
2020-07-03ci: include the architecture in the docker cache keyPietro Albini-0/+4
We're starting to include native aarch64 machines in our CI, but before this commit the architecture wasn't included in the cache key for our Docker images. This means there could be conflicts between images produced on different architectures, hurting our CI times. This commit fixes the problem by including the output of `uname -m` in the cache key.
2020-07-03ci: provide feedback when running an image on the wrong host archPietro Albini-0/+22
2020-07-03ci: move all x86_64 runners to the host-x86_64 directoryPietro Albini-70/+73
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-02Rollup merge of #73952 - ehuss:docker-dev, r=Mark-SimulacrumManish Goregaokar-2/+31
Add option for local docker testing. This adds the option `--dev` to `src/ci/docker/run.sh` so that it will enter an interactive environment for local testing. I have often needed this for testing things, but I always needed to edit this script. I wanted the ability to interact in the environment, run different commands, inspect errors, etc.