From fc94dde3fc471bc765494387e9d86d1137dbf99a Mon Sep 17 00:00:00 2001 From: Massimiliano Culpo Date: Wed, 1 Jul 2020 18:58:53 +0200 Subject: Moved flake8, shell and documentation tests to Github Action (#17328) * Move flake8 tests on Github Actions * Move shell test to Github Actions * Moved documentation build to Github Action * Don't run coverage on Python 2.6 Since we get connection errors consistently on Travis when trying to upload coverage results for Python 2.6, avoid computing coverage entirely to speed-up tests. --- .travis.yml | 119 +++++------------------------------------------------------- 1 file changed, 10 insertions(+), 109 deletions(-) (limited to '.travis.yml') diff --git a/.travis.yml b/.travis.yml index 5d8b793758..df4262bf1e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,3 @@ -#============================================================================= -# Project settings -#============================================================================= # Only build master and develop on push; do not build every branch. branches: only: @@ -8,107 +5,30 @@ branches: - develop - /^releases\/.*$/ -#============================================================================= -# Build matrix -#============================================================================= - -dist: bionic - -jobs: - fast_finish: true - include: - - stage: 'style checks' - python: '3.8' - os: linux - language: python - env: TEST_SUITE=flake8 - - stage: 'unit tests + documentation' - python: '2.6' - dist: trusty - os: linux - language: python - addons: - apt: - # Everything but patchelf, that is not available for trusty - packages: - - ccache - - gfortran - - graphviz - - gnupg2 - - kcov - - mercurial - - ninja-build - - realpath - - zsh - - fish - env: [ TEST_SUITE=unit, COVERAGE=true ] - - python: '3.8' - os: linux - language: python - env: [ TEST_SUITE=shell, COVERAGE=true, KCOV_VERSION=38 ] - - python: '3.8' - os: linux - language: python - env: TEST_SUITE=doc - -stages: - - 'style checks' - - 'unit tests + documentation' - - -#============================================================================= -# Environment -#============================================================================= - -# Docs need graphviz to build +language: python +python: '2.6' +dist: trusty +os: linux addons: - # for Linux builds, we use APT apt: packages: - - ccache - - coreutils - gfortran - graphviz - gnupg2 + - kcov - mercurial - ninja-build - - patchelf + - realpath - zsh - fish - update: true - -# ~/.ccache needs to be cached directly as Travis is not taking care of it -# (possibly because we use 'language: python' and not 'language: c') -cache: - pip: true - ccache: true - directories: - - ~/.ccache - -before_install: - - ccache -M 2G && ccache -z - # Install kcov manually, since it's not packaged for bionic beaver - - if [[ "$KCOV_VERSION" ]]; then - sudo apt-get -y install cmake binutils-dev libcurl4-openssl-dev zlib1g-dev libdw-dev libiberty-dev; - KCOV_ROOT=$(mktemp -d); - wget --output-document=${KCOV_ROOT}/${KCOV_VERSION}.tar.gz https://github.com/SimonKagstrom/kcov/archive/v${KCOV_VERSION}.tar.gz; - tar -C ${KCOV_ROOT} -xzvf ${KCOV_ROOT}/${KCOV_VERSION}.tar.gz; - mkdir -p ${KCOV_ROOT}/build; - cd ${KCOV_ROOT}/build && cmake -Wno-dev ${KCOV_ROOT}/kcov-${KCOV_VERSION} && cd - ; - make -C ${KCOV_ROOT}/build && sudo make -C ${KCOV_ROOT}/build install; - fi # Install various dependencies install: - pip install --upgrade pip - pip install --upgrade six - pip install --upgrade setuptools - - pip install --upgrade codecov coverage==4.5.4 - pip install --upgrade flake8 - pip install --upgrade pep8-naming - - if [[ "$TEST_SUITE" == "doc" ]]; then - pip install --upgrade -r lib/spack/docs/requirements.txt; - fi before_script: # Need this for the git tests to succeed. @@ -118,31 +38,12 @@ before_script: # Need this to be able to compute the list of changed files - git fetch origin ${TRAVIS_BRANCH}:${TRAVIS_BRANCH} -#============================================================================= -# Building -#============================================================================= script: - - share/spack/qa/run-$TEST_SUITE-tests - -after_success: - - ccache -s - - case "$TEST_SUITE" in - unit) - if [[ "$COVERAGE" == "true" ]]; then - codecov --env PYTHON_VERSION - --required - --flags "${TEST_SUITE}${TRAVIS_OS_NAME}"; - fi - ;; - shell) - codecov --env PYTHON_VERSION - --required - --flags "${TEST_SUITE}${TRAVIS_OS_NAME}"; - esac + - python bin/spack -h + - python bin/spack help -a + - python bin/spack -p --lines 20 spec mpileaks%gcc ^elfutils@0.170 + - python bin/spack test -x --verbose -#============================================================================= -# Notifications -#============================================================================= notifications: email: recipients: -- cgit v1.2.3-70-g09d2