Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Azure Pipelines configuration #60777

Merged
merged 59 commits into from
May 24, 2019
Merged
Changes from 1 commit
Commits
Show all changes
59 commits
Select commit Hold shift + click to select a range
699376a
Add Azure Pipelines
johnterickson May 6, 2019
e234a90
Disable 32-bit OSX
johnterickson May 6, 2019
c50517a
ci: reduce all azure timeouts to 3 hours
pietroalbini May 10, 2019
abd4b3a
ci: remove travis ipv6 docker hack on azure
pietroalbini May 10, 2019
869ddd8
ci: still use aws for caches
pietroalbini May 10, 2019
7dfd8ce
ci: remove fanout from the azure pipelines config
pietroalbini May 12, 2019
aab0bb4
ci: merge the i1686-gnu images
pietroalbini May 12, 2019
94f7660
ci: re-enable fds-are-cloexec test on macOS
pietroalbini May 12, 2019
06bc0da
ci: remove test configuration
pietroalbini May 12, 2019
5db55e6
ci: disable toolstate commits on azure
pietroalbini May 12, 2019
da94978
ci: remove trailing whitespaces from azure config
pietroalbini May 13, 2019
694ea76
ci: remove links to johnterickson repo
pietroalbini May 13, 2019
807b7dd
ci: disable builders not useful during the evaluation
pietroalbini May 13, 2019
4965ffd
Update src/bootstrap/util.rs
pietroalbini May 13, 2019
92bf1e6
ci: update azure variable groups
pietroalbini May 15, 2019
30b008f
ci: remove stray echo
pietroalbini May 15, 2019
bf639a1
ci: remove outdated comment
pietroalbini May 15, 2019
a89e8d2
ci: remove yet another outdated comment
pietroalbini May 20, 2019
f23c1ba
ci: use ##vso[task.prependpath] on azure
pietroalbini May 20, 2019
d27cb82
ci: add an image for dist-x86_64-linux try on azure
pietroalbini May 20, 2019
9f37b3a
ci: deploy artifacts on azure
pietroalbini May 20, 2019
79d28c2
Don't bother with `stamp` utility
alexcrichton May 20, 2019
1be9fe6
Refactor azure pipelines configuration
alexcrichton May 20, 2019
4183f3c
Configure a few more builders on `try` temporarily
alexcrichton May 20, 2019
91b1655
Remove a now stray file
alexcrichton May 20, 2019
528cce9
Job name config works for all platforms
alexcrichton May 20, 2019
7b266ff
Fix a typo in clang install
alexcrichton May 20, 2019
804ec5f
Execute `docker/run.sh` on Linux
alexcrichton May 20, 2019
fa8d3b5
Fix a typo in the run script
alexcrichton May 20, 2019
0843207
Make sure sccache not present doesn't kill the build
alexcrichton May 20, 2019
751597f
Check out rustfmt submodule through tarballs
alexcrichton May 20, 2019
9b8af06
Manually install AWS CLI
alexcrichton May 20, 2019
12f3701
Only execute conditional steps on success
alexcrichton May 20, 2019
9843a79
Finalize AWS install
alexcrichton May 20, 2019
e6830c1
Merge pull request #2 from alexcrichton/azure-pipelines
pietroalbini May 21, 2019
1daab47
ci: temp increase of the timeout to 10 hours
pietroalbini May 21, 2019
67db230
ci: fix tidy
pietroalbini May 21, 2019
d2304e1
ci: increase timeout, take 2
pietroalbini May 21, 2019
0e5f02f
Fix typo in key configuration
alexcrichton May 21, 2019
571366f
Attempt to enable IPv6 for Linux
alexcrichton May 21, 2019
a83250d
Update upload logic to upload right directory
alexcrichton May 21, 2019
ebdc36e
Re-enable hack for Windows builds to see if it works
alexcrichton May 21, 2019
55108b3
Run a full build on `try` temporarily
alexcrichton May 21, 2019
e8f0e70
Typos
alexcrichton May 21, 2019
a225551
Only run Window script on Windows
alexcrichton May 21, 2019
7b7e172
Place timeouts at the job level
alexcrichton May 21, 2019
0f4b546
Go back to fewer builders to test on `try`
alexcrichton May 21, 2019
8d42b87
Use new-style s3 urls in docker download script
alexcrichton May 21, 2019
190d198
ci: switch to xcode 9.3 on azure
pietroalbini May 21, 2019
beea4f5
Execute everything!
alexcrichton May 21, 2019
78965f4
Use xcode 9.3 on all osx builders
alexcrichton May 21, 2019
e764f47
Disable solaris target since toolchain no longer builds
alexcrichton May 21, 2019
fe3dd0b
Merge remote-tracking branch 'origin/master' into azure-pipelines
alexcrichton May 21, 2019
e0ed2a3
Correct the upload_dir in script
alexcrichton May 21, 2019
e5418f6
Update webrender we're testing
alexcrichton May 21, 2019
36ee777
remove azure badge from the readme
pietroalbini May 22, 2019
a8ac80b
Final cleanups
alexcrichton May 22, 2019
24f262f
ci: toggle builders
pietroalbini May 22, 2019
2244ca3
ci: fix invalid syntax in the azure auto.yml
pietroalbini May 24, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .azure-pipelines/auto.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#
# Azure Pipelines "auto" branch build for Rust on Linux, macOS, and Windows.
#
#

pr: none
trigger:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This space breaks stuff:

/.azure-pipelines/auto.yml: (Line: 6, Col: 9, Idx: 99) - (Line: 6, Col: 9, Idx: 99): Mapping values are not allowed in this context.

@@ -33,7 +33,7 @@ jobs:
IMAGE: dist-x86_64-linux
DEPLOY_ALT: 1

# Linux builders, remaining docker images
# Linux builders, remaining docker images
arm-android:
IMAGE: arm-android

@@ -157,7 +157,7 @@ jobs:
steps:
- checkout: self
fetchDepth: 2
- template: steps/macos.yml
- template: steps/macos.yml
strategy:
matrix:
# macOS builders. These are placed near the beginning because they are very
@@ -200,7 +200,7 @@ jobs:
# # temp disabled
# # https://github.com/johnterickson/rust/issues/18
# i686-apple:
# RUST_CHECK_TARGET: check
# RUST_CHECK_TARGET: check
# RUST_CONFIGURE_ARGS: --build=i686-apple-darwin --set rust.jemalloc
# RUSTC_RETRY_LINKER_ON_SEGFAULT: 1
# MACOSX_DEPLOYMENT_TARGET: 10.8
4 changes: 2 additions & 2 deletions .azure-pipelines/master.yml
Original file line number Diff line number Diff line change
@@ -9,7 +9,7 @@ trigger:
pool:
vmImage: ubuntu-16.04

steps:
steps:
- checkout: self
fetchDepth: 2

@@ -19,6 +19,6 @@ steps:
# FIXME(pietro): committing is disabled until we switch to Azure Pipelines
# as the source of truth, or until we setup a separate test repo.
#commit_toolstate_change "$MESSAGE_FILE" "$BUILD_SOURCESDIRECTORY/src/tools/publish_toolstate.py" "$(git rev-parse HEAD)" "$(git log --format=%s -n1 HEAD)" "$MESSAGE_FILE" "$TOOLSTATE_REPO_ACCESS_TOKEN"
displayName: Publish toolstate
displayName: Publish toolstate
env:
TOOLSTATE_REPO_ACCESS_TOKEN: $(TOOLSTATE_REPO_ACCESS_TOKEN_SECRET)
4 changes: 2 additions & 2 deletions .azure-pipelines/pr.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#
# Azure Pipelines pull request build for Rust
#
#

trigger: none
pr:
@@ -20,7 +20,7 @@ jobs:
matrix:
x86_64-gnu-llvm-6.0:
RUST_BACKTRACE: 1

x86_64-gnu-tools: {}
# if: branch = auto OR (type = pull_request AND commit_message =~ /(?i:^update.*\b(rls|rustfmt|clippy|miri|cargo)\b)/)
mingw-check: {}
4 changes: 2 additions & 2 deletions .azure-pipelines/steps/linux.yml
Original file line number Diff line number Diff line change
@@ -7,10 +7,10 @@ steps:

- bash: |
sudo apt install gdb

curl -fo $HOME/stamp https://s3-us-west-1.amazonaws.com/rust-lang-ci2/rust-ci-mirror/2017-03-17-stamp-x86_64-unknown-linux-musl
chmod +x $HOME/stamp

export PATH=$PATH:$HOME/.local/bin:$HOME/Library/Python/2.7/bin/:$HOME
echo "##vso[task.setvariable variable=PATH;]$PATH"
pietroalbini marked this conversation as resolved.
Show resolved Hide resolved

4 changes: 2 additions & 2 deletions .azure-pipelines/steps/macos.yml
Original file line number Diff line number Diff line change
@@ -25,9 +25,9 @@ steps:
displayName: install a tar that works well

- bash: |
curl -f http://releases.llvm.org/7.0.0/clang+llvm-7.0.0-x86_64-apple-darwin.tar.xz | tar xJf -
curl -f http://releases.llvm.org/7.0.0/clang+llvm-7.0.0-x86_64-apple-darwin.tar.xz | tar xJf -
displayName: Download clang

- bash: |
brew update
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One gotcha I've found is that multi-statement scripts like this don't fail the whole script if an intermediate one fails (only if the last one fails). That matches bash's behavior, but we'll probably want set -e on each of these multiline scripts to ensure that intermediate steps fail the build if they fail.

brew install xz
10 changes: 5 additions & 5 deletions .azure-pipelines/steps/windows.yml
Original file line number Diff line number Diff line change
@@ -7,7 +7,7 @@ steps:
git submodule
export SUBMODULES_EXCLUDES=$(git submodule | grep -Eow 'src/[^ ]+' | sed 's/\(.*\)/--exclude=\1\/\.git/')
echo "##vso[task.setvariable variable=SUBMODULES_EXCLUDES;]$SUBMODULES_EXCLUDES"

- script: |
REM echo hack as drive D is too small
IF NOT "%DISABLE_DISK_SPACE_HACK%"=="1" (
@@ -19,7 +19,7 @@ steps:
set MSYS_PATH=%CD%\citools\msys64
choco install msys2 --params="/InstallDir:%MSYS_PATH% /NoPath" -y
set PATH=%MSYS_PATH%\usr\bin;%PATH%
pacman -S --noconfirm --needed base-devel ca-certificates make diffutils tar
pacman -S --noconfirm --needed base-devel ca-certificates make diffutils tar
IF "%MINGW_URL%"=="" (
IF "%MSYS_BITS%"=="32" pacman -S --noconfirm --needed mingw-w64-i686-toolchain mingw-w64-i686-cmake mingw-w64-i686-gcc mingw-w64-i686-python2
IF "%MSYS_BITS%"=="64" pacman -S --noconfirm --needed mingw-w64-x86_64-toolchain mingw-w64-x86_64-cmake mingw-w64-x86_64-gcc mingw-w64-x86_64-python2
@@ -135,7 +135,7 @@ steps:

- script: |
REM echo force the specific VS version https://github.com/johnterickson/rust/issues/8
IF "%VCVARS_BAT%" NEQ "" (
IF "%VCVARS_BAT%" NEQ "" (
CALL "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build\%VCVARS_BAT%"
)

@@ -144,10 +144,10 @@ steps:
set | findstr /v SCCACHE_AZURE_CONNECTION_STRING

if not exist D:\cache\rustsrc\NUL mkdir D:\cache\rustsrc

sh src/ci/init_repo.sh . /d/cache/rustsrc
sh src/ci/run.sh
env:
env:
CI: true
CI_JOB_NAME: $(System.JobDisplayName)
SRC: .
2 changes: 1 addition & 1 deletion .azure-pipelines/try.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#
# Azure Pipelines "try" branch build for Rust
#
#

pr: none
trigger: