PowerShell/.travis.yml
Steve Lee 5dc7a6cb07 Add Windows Compatibility Pack 2.0.0 to PS Core and adopt the official .NET Core 2.1 (#6958)
To support PowerShell modules built with .NET Windows Compatibility Pack, we decided that it was best to ship the WCP assemblies with PS Core. This also adds many new .NET APIs be default while only adding ~3.5 MB additional disk footprint (to a ~137 MB install currently).
Also update the build to adopt the official .NET Core 2.1.
2018-06-03 22:06:26 -07:00

76 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.
env:
global:
- CACHE_VERSION=netcoreapp.2.1-sdk.2.1.300
- POWERSHELL_TELEMETRY_OPTOUT=1
# timeout uploading cache after 6 minutes (360 seconds)
cache:
timeout: 360
directories:
- $HOME/.nuget
- $HOME/.dotnet
- $HOME/Library/Caches/Homebrew
# cleanup data that should not be cache, before caching
before_cache:
- rm -r -f $HOME/.dotnet/optimizationdata
- rm -r -f $HOME/.dotnet/pids