language: shell os: linux dist: bionic env: global: - PATH=${PATH}:${HOME}/kcov/bin - CC_TEST_REPORTER_URL=https://codeclimate.com/downloads/test-reporter/test-reporter-latest-darwin-amd64 - CC_TEST_REPORTER_ID=67e0534ee993a6bbd10ae205ef4e807956c01564564ed64738932db123b1b87a addons: apt: update: true jobs: include: # - os: linux # Ubuntu 12.04 # dist: precise # env: PACKAGES="dash bash zsh ksh mksh yash busybox" # - os: linux # Ubuntu 14.04 # dist: trusty # env: PACKAGES="dash bash zsh ksh mksh yash posh busybox" # - os: linux # Ubuntu 16.04 # dist: xenial # env: PACKAGES="dash bash zsh ksh mksh yash posh busybox" # - os: linux # Ubuntu 18.04 # dist: bionic # env: PACKAGES="dash bash zsh ksh mksh yash posh busybox" # - os: linux # Ubuntu 20.04 # dist: focal # env: PACKAGES="dash bash zsh ksh mksh yash posh busybox" # - os: osx # macOS Homebrew # osx_image: xcode11.5 # env: FORMULAS="dash bash zsh ksh mksh yash" - os: osx # macOS 10.10 Yosemite 2014-06 osx_image: xcode6.4 env: SHELLS="sh bash zsh ksh" - os: osx # macOS 10.11 El Capitan 2015-06 osx_image: xcode8 env: SHELLS="sh bash zsh ksh" - os: osx # macOS 10.12 Sierra 2016-06 osx_image: xcode9.2 env: SHELLS="sh bash zsh ksh" - os: osx # macOS 10.13 High Sierra 2017-06 osx_image: xcode10.1 env: SHELLS="sh bash zsh ksh" - os: osx # macOS 10.14 Mojave 2018-06 osx_image: xcode10.2 env: SHELLS="sh bash zsh ksh" # - os: osx # macOS 10.15.4 Catalina 2020-03 # osx_image: xcode11.5 # env: SHELLS="sh bash zsh ksh" - os: osx # coverage osx_image: xcode12.2 env: FORMULAS="bash kcov" COVERAGE=1 CODECOV=1 CC=1 before_install: - if [ "$PACKAGES" ]; then sudo apt-get install -y $PACKAGES; fi - if [ "$FORMULAS" ]; then brew update; brew install $FORMULAS; fi - if [ "$CC" ]; then curl -sSL $CC_TEST_REPORTER_URL > ./cc-test-reporter; fi - if [ "$CC" ]; then chmod +x ./cc-test-reporter; fi - if [ "$CC" ]; then ./cc-test-reporter before-build; fi before_script: - ./shellspec --shell sh --task fixture:stat:prepare script: - if [ ! "$COVERAGE" ]; then contrib/all.sh contrib/various_test.sh; fi - if [ "$COVERAGE" ]; then ./shellspec --shell bash --kcov --kcov-options "--coveralls-id=${TRAVIS_JOB_ID}"; fi after_success: - if [ "$CODECOV" ]; then bash <(curl -s https://codecov.io/bash) -s coverage; fi - if [ "$CC" ]; then ./cc-test-reporter format-coverage coverage/cobertura.xml -t cobertura; fi - if [ "$CC" ]; then ./cc-test-reporter upload-coverage; fi