@@ -13,19 +13,20 @@ osx_image: xcode8.2
1313matrix :
1414 include :
1515 # 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
1921 - 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
2223 - env : IMAGE=x86_64-gnu-full-bootstrap
2324 - env : IMAGE=x86_64-gnu-aux
2425 - env : IMAGE=x86_64-gnu-debug
2526 - env : IMAGE=x86_64-gnu-nopt
2627 - env : IMAGE=x86_64-gnu-make
2728 - 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
2930 - env : IMAGE=x86_64-gnu-distcheck
3031
3132 # OSX builders
@@ -34,27 +35,44 @@ matrix:
3435 RUST_CONFIGURE_ARGS=--build=x86_64-apple-darwin
3536 SRC=.
3637 os: osx
38+ before_script: &osx_before_script >
39+ ulimit -c unlimited
3740 install: &osx_install_sccache >
3841 curl -L https://api.pub.build.mozilla.org/tooltool/sha512/d0025b286468cc5ada83b23d3fafbc936b9f190eaa7d4a981715b18e8e3bf720a7bcee7bfe758cfdeb8268857f6098fd52dcdd8818232692a30ce91039936596 |
3942 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+
4050 - env : >
41- RUST_CHECK_TARGET=check
51+ SCRIPT="./x.py test && ./x.py dist"
4252 RUST_CONFIGURE_ARGS=--build=i686-apple-darwin
4353 SRC=.
54+ DEPLOY=1
4455 os: osx
56+ before_script: *osx_before_script
4557 install: *osx_install_sccache
58+ after_failure: *osx_after_failure
4659 - env : >
4760 RUST_CHECK_TARGET=check
4861 RUST_CONFIGURE_ARGS=--build=x86_64-apple-darwin --disable-rustbuild
4962 SRC=.
5063 os: osx
64+ before_script: *osx_before_script
5165 install: *osx_install_sccache
66+ after_failure: *osx_after_failure
5267 - env : >
53- RUST_CHECK_TARGET=
68+ RUST_CHECK_TARGET=dist
5469 RUST_CONFIGURE_ARGS=--target=aarch64-apple-ios,armv7-apple-ios,armv7s-apple-ios,i386-apple-ios,x86_64-apple-ios
5570 SRC=.
71+ DEPLOY=1
5672 os: osx
73+ before_script: *osx_before_script
5774 install: *osx_install_sccache
75+ after_failure: *osx_after_failure
5876
5977env :
6078 global :
@@ -68,10 +86,10 @@ script:
6886 if [ "$ALLOW_PR" = "" ] && [ "$TRAVIS_BRANCH" != "auto" ]; then
6987 echo skipping, not a full build;
7088 elif [ "$TRAVIS_OS_NAME" = "osx" ]; then
71- git submodule update --init &&
89+ travis_retry git submodule update --init &&
7290 src/ci/run.sh;
7391 else
74- git submodule update --init &&
92+ travis_retry git submodule update --init &&
7593 src/ci/docker/run.sh $IMAGE;
7694 fi
7795
@@ -90,3 +108,29 @@ notifications:
90108cache :
91109 directories :
92110 - $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