PowerShell/.travis.yml
Travis Plunk 1523c218a6
Make sure that SettingFile arg is parsed before we load the settings (#7449)
Make sure that SettingFile arg is parsed before we load the settings

- Add ability to parse some setting before console host is created
- Trigger the Parse before the console host is created
- disable snapin loading from loading setting before this point
- re-enable mac logging tests.

Also, fix the following Travis-ci issues:

- make sure the Linux and macOS caches are separate to reduce the size
- update the macOS image to the closest image as used by the official build system (equivalent to VSTS hosted mac builds)
2018-08-07 15:01:31 -07:00

76 lines
2 KiB
YAML

language: cpp
git:
depth: 1000
matrix:
include:
- os: linux
dist: trusty
sudo: required
env: TRAVIS_CI_CACHE_NAME=linux
- os: osx
osx_image: xcode9.4
env: TRAVIS_CI_CACHE_NAME=macOS
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.302
- 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