PowerShell7/.travis.yml

74 lines
1.9 KiB
YAML

language: cpp
git:
depth: 1000
matrix:
include:
- os: linux
dist: trusty
sudo: required
- os: osx
osx_image: xcode8.1
fast_finish: true
addons:
artifacts:
paths:
- $(ls powershell*{deb,pkg,AppImage,gz} | tr "\n" ":")
- TestResultsSudo.xml
- TestResultsNoSudo.xml
install:
# Default 2.0.0 Ruby is buggy
# Default bundler version is buggy
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
rvm install ruby-2.3.3;
rvm --default use 2.3.3;
fi
# Ensure that libcurl+openssl is used on macOS for greater feature support.
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
export DYLD_LIBRARY_PATH=/usr/local/opt/curl/lib:/usr/local/opt/openssl/lib:${DYLD_LIBRARY_PATH};
fi
- pushd tools
- ./install-powershell.sh
- popd
# spellcheck
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
nvm install 6.4.0 &&
npm install -g markdown-spellcheck@0.11.0;
fi
- ulimit -n 4096
- pwsh -File tools/travis.ps1 -Stage Bootstrap
script:
- pwsh -File tools/travis.ps1
# spellcheck
# Ignore 'Pester' folder because it's third party
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
mdspell '**/*.md' '!**/Pester/**/*.md' --ignore-numbers --ignore-acronyms --report;
fi
after_failure:
- pwsh -File tools/travis.ps1 -Stage Failure
after_success:
- pwsh -File tools/travis.ps1 -Stage Success
# travis-ci will quit using the cache if an enviroment variable changes.
# CACHE_VERSION is not used for anything other than invalidating the cache.
# DOTNET_SKIP_FIRST_TIME_EXPERIENCE is to skip the dotnet-cli initialization,
# which is expensive and unneeded for build agents.
env:
global:
- CACHE_VERSION=netcoreapp.2.1-sdk.2.1.300
- POWERSHELL_TELEMETRY_OPTOUT=1
- DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
# timeout uploading cache after 6 minutes (360 seconds)
cache:
timeout: 360
directories:
- $HOME/.nuget
- $HOME/Library/Caches/Homebrew