@@ -13,19 +13,20 @@ osx_image: xcode8.2
13
13
matrix :
14
14
include :
15
15
# Linux builders, all docker images
16
- - env : IMAGE=arm-android
17
- - env : IMAGE=cross
18
- - env : IMAGE=i686-gnu
16
+ - env : IMAGE=arm-android DEPLOY=1
17
+ - env : IMAGE=cross DEPLOY=1
18
+ - env : IMAGE=dist-arm-unknown-linux-gnueabi DEPLOY=1
19
+ - env : IMAGE=dist-x86_64-unknown-freebsd DEPLOY=1
20
+ - env : IMAGE=i686-gnu DEPLOY=1
19
21
- env : IMAGE=i686-gnu-nopt
20
- - env : IMAGE=x86_64-freebsd
21
- - env : IMAGE=x86_64-gnu
22
+ - env : IMAGE=x86_64-gnu DEPLOY=1
22
23
- env : IMAGE=x86_64-gnu-full-bootstrap
23
24
- env : IMAGE=x86_64-gnu-aux
24
25
- env : IMAGE=x86_64-gnu-debug
25
26
- env : IMAGE=x86_64-gnu-nopt
26
27
- env : IMAGE=x86_64-gnu-make
27
28
- env : IMAGE=x86_64-gnu-llvm-3.7 ALLOW_PR=1 RUST_BACKTRACE=1
28
- - env : IMAGE=x86_64-musl
29
+ - env : IMAGE=x86_64-musl DEPLOY=1
29
30
- env : IMAGE=x86_64-gnu-distcheck
30
31
31
32
# OSX builders
@@ -34,27 +35,44 @@ matrix:
34
35
RUST_CONFIGURE_ARGS=--build=x86_64-apple-darwin
35
36
SRC=.
36
37
os: osx
38
+ before_script: &osx_before_script >
39
+ ulimit -c unlimited
37
40
install: &osx_install_sccache >
38
41
curl -L https://api.pub.build.mozilla.org/tooltool/sha512/d0025b286468cc5ada83b23d3fafbc936b9f190eaa7d4a981715b18e8e3bf720a7bcee7bfe758cfdeb8268857f6098fd52dcdd8818232692a30ce91039936596 |
39
42
tar xJf - -C /usr/local/bin --strip-components=1
43
+ after_failure: &osx_after_failure >
44
+ echo 'bt all' > cmds;
45
+ for file in $(ls /cores); do
46
+ echo core file $file;
47
+ lldb -c $file `which ld` -b -s cmds;
48
+ done
49
+
40
50
- env : >
41
- RUST_CHECK_TARGET=check
51
+ SCRIPT="./x.py test && ./x.py dist"
42
52
RUST_CONFIGURE_ARGS=--build=i686-apple-darwin
43
53
SRC=.
54
+ DEPLOY=1
44
55
os: osx
56
+ before_script: *osx_before_script
45
57
install: *osx_install_sccache
58
+ after_failure: *osx_after_failure
46
59
- env : >
47
60
RUST_CHECK_TARGET=check
48
61
RUST_CONFIGURE_ARGS=--build=x86_64-apple-darwin --disable-rustbuild
49
62
SRC=.
50
63
os: osx
64
+ before_script: *osx_before_script
51
65
install: *osx_install_sccache
66
+ after_failure: *osx_after_failure
52
67
- env : >
53
- RUST_CHECK_TARGET=
68
+ RUST_CHECK_TARGET=dist
54
69
RUST_CONFIGURE_ARGS=--target=aarch64-apple-ios,armv7-apple-ios,armv7s-apple-ios,i386-apple-ios,x86_64-apple-ios
55
70
SRC=.
71
+ DEPLOY=1
56
72
os: osx
73
+ before_script: *osx_before_script
57
74
install: *osx_install_sccache
75
+ after_failure: *osx_after_failure
58
76
59
77
env :
60
78
global :
@@ -68,10 +86,10 @@ script:
68
86
if [ "$ALLOW_PR" = "" ] && [ "$TRAVIS_BRANCH" != "auto" ]; then
69
87
echo skipping, not a full build;
70
88
elif [ "$TRAVIS_OS_NAME" = "osx" ]; then
71
- git submodule update --init &&
89
+ travis_retry git submodule update --init &&
72
90
src/ci/run.sh;
73
91
else
74
- git submodule update --init &&
92
+ travis_retry git submodule update --init &&
75
93
src/ci/docker/run.sh $IMAGE;
76
94
fi
77
95
@@ -90,3 +108,29 @@ notifications:
90
108
cache :
91
109
directories :
92
110
- $HOME/docker
111
+
112
+ before_deploy :
113
+ - mkdir -p deploy/$TRAVIS_COMMIT
114
+ - >
115
+ if [ "$TRAVIS_OS_NAME" == "osx" ]; then
116
+ cp build/dist/*.tar.gz deploy/$TRAVIS_COMMIT &&
117
+ find "deploy/$TRAVIS_COMMIT" -maxdepth 1 -type f -exec sh -c 'shasum -a 256 -b "{}" > "{}.sha256"' \;;
118
+ else
119
+ cp obj/build/dist/*.tar.gz deploy/$TRAVIS_COMMIT &&
120
+ find "deploy/$TRAVIS_COMMIT" -maxdepth 1 -type f -exec sh -c 'sha256sum -b "{}" > "{}.sha256"' \;;
121
+ fi
122
+
123
+ deploy :
124
+ - provider : s3
125
+ bucket : rust-lang-ci
126
+ skip_cleanup : true
127
+ local_dir : deploy
128
+ upload_dir : rustc-builds
129
+ acl : public_read
130
+ region : us-east-1
131
+ access_key_id : AKIAIPQVNYF2T3DTYIWQ
132
+ secret_access_key :
133
+ secure : " FBqDqOTeIPMu6v/WYPf4CFSlh9rLRZGKVtpLa5KkyuOhXRTrnEzBduEtS8/FMIxdQImvurhSvxWvqRybMOi4qoVfjMqqpHAI7uBbidbrvAcJoHNsx6BgUNVCIoH6a0UsAjTUtm6/YPIpzbHoLZXPL0GrHPMk6Mu04qVSmcYNWn4="
134
+ on :
135
+ branch : auto
136
+ condition : $DEPLOY = 1
0 commit comments