travis.yml: general cleanup.
- Update Xcode version - Split out platform-specific code so we can see where time is spent - Manually trigger vendor Ruby installation - Use `brew update` to update things - Use `travis_retry` where relevant.
This commit is contained in:
parent
78933b3ee9
commit
7592b27f43
42
.travis.yml
42
.travis.yml
@ -1,10 +1,10 @@
|
|||||||
language: ruby
|
language: c
|
||||||
rvm: system
|
|
||||||
cache:
|
cache:
|
||||||
directories:
|
directories:
|
||||||
- $HOME/.gem/ruby
|
- $HOME/.gem/ruby
|
||||||
- $HOME/Library/Caches/Homebrew/style
|
- $HOME/Library/Caches/Homebrew/style
|
||||||
- $HOME/Library/Caches/Homebrew/tests
|
- $HOME/Library/Caches/Homebrew/tests
|
||||||
|
- $HOME/Library/Homebrew/vendor/bundle
|
||||||
branches:
|
branches:
|
||||||
only:
|
only:
|
||||||
- master
|
- master
|
||||||
@ -12,33 +12,47 @@ matrix:
|
|||||||
fast_finish: true
|
fast_finish: true
|
||||||
include:
|
include:
|
||||||
- os: osx
|
- os: osx
|
||||||
osx_image: xcode9
|
compiler: clang
|
||||||
|
osx_image: xcode9.2
|
||||||
- os: linux
|
- os: linux
|
||||||
|
compiler: gcc
|
||||||
sudo: false
|
sudo: false
|
||||||
|
|
||||||
before_install:
|
before_install:
|
||||||
- export HOMEBREW_NO_AUTO_UPDATE=1
|
|
||||||
- export HOMEBREW_DEVELOPER=1
|
|
||||||
- export HOMEBREW_FORCE_VENDOR_RUBY=1
|
|
||||||
- if [ "${TRAVIS_OS_NAME}" = "osx" ]; then
|
- if [ "${TRAVIS_OS_NAME}" = "osx" ]; then
|
||||||
|
MACOS="1";
|
||||||
HOMEBREW_REPOSITORY="$(brew --repo)";
|
HOMEBREW_REPOSITORY="$(brew --repo)";
|
||||||
sudo chown -R "$USER" "$HOMEBREW_REPOSITORY/Library/Taps";
|
sudo chown -R "$USER" "$HOMEBREW_REPOSITORY";
|
||||||
|
else
|
||||||
|
LINUX="1";
|
||||||
|
export PATH="$PWD/bin:$PATH";
|
||||||
|
fi
|
||||||
|
# umask 022 fixes Linux `brew tests` failures;
|
||||||
|
- if [ "$LINUX" ]; then
|
||||||
|
umask 022;
|
||||||
|
fi
|
||||||
|
# trigger vendored ruby installation
|
||||||
|
- brew help
|
||||||
|
- if [ "$MACOS" ]; then
|
||||||
mv "$HOMEBREW_REPOSITORY/Library/Taps" "$PWD/Library";
|
mv "$HOMEBREW_REPOSITORY/Library/Taps" "$PWD/Library";
|
||||||
git -C Library/Taps/homebrew/homebrew-core fetch --force origin;
|
|
||||||
git -C Library/Taps/homebrew/homebrew-core checkout --force -B master origin/master;
|
|
||||||
sudo rm -rf "$HOMEBREW_REPOSITORY";
|
sudo rm -rf "$HOMEBREW_REPOSITORY";
|
||||||
sudo ln -s "$PWD" "$HOMEBREW_REPOSITORY";
|
sudo ln -s "$PWD" "$HOMEBREW_REPOSITORY";
|
||||||
git clone --depth=1 https://github.com/Homebrew/homebrew-test-bot Library/Taps/homebrew/homebrew-test-bot;
|
|
||||||
else
|
else
|
||||||
umask 022;
|
|
||||||
git fetch --unshallow;
|
|
||||||
export PATH="$PWD/bin:$PATH";
|
|
||||||
HOMEBREW_CORE_TAP_DIR="$(brew --repo "homebrew/core")";
|
HOMEBREW_CORE_TAP_DIR="$(brew --repo "homebrew/core")";
|
||||||
mkdir -p "$HOMEBREW_CORE_TAP_DIR";
|
mkdir -p "$HOMEBREW_CORE_TAP_DIR";
|
||||||
git clone --depth=1 https://github.com/Homebrew/homebrew-test-bot Library/Taps/homebrew/homebrew-test-bot;
|
fi
|
||||||
|
- if [ "$MACOS" ]; then
|
||||||
|
travis_retry git -C Library/Taps/homebrew/homebrew-core fetch --depth=1 origin;
|
||||||
|
fi
|
||||||
|
- travis_retry git clone --depth=1 https://github.com/Homebrew/homebrew-test-bot Library/Taps/homebrew/homebrew-test-bot
|
||||||
|
- if [ "$LINUX" ]; then
|
||||||
HOMEBREW_TEST_BOT_TAP_DIR="$(brew --repo "homebrew/test-bot")";
|
HOMEBREW_TEST_BOT_TAP_DIR="$(brew --repo "homebrew/test-bot")";
|
||||||
ln -s "$HOMEBREW_TEST_BOT_TAP_DIR/.git" "$HOMEBREW_TEST_BOT_TAP_DIR/Formula" "$HOMEBREW_CORE_TAP_DIR";
|
ln -s "$HOMEBREW_TEST_BOT_TAP_DIR/.git" "$HOMEBREW_TEST_BOT_TAP_DIR/Formula" "$HOMEBREW_CORE_TAP_DIR";
|
||||||
fi
|
fi
|
||||||
|
# can be removed after 1.5.3 is tagged
|
||||||
|
- if [ "$LINUX" ]; then
|
||||||
|
export HOMEBREW_FORCE_VENDOR_RUBY=1;
|
||||||
|
fi
|
||||||
|
|
||||||
script:
|
script:
|
||||||
- brew test-bot
|
- brew test-bot
|
||||||
|
Loading…
x
Reference in New Issue
Block a user