name: linux builds on: push: branches: - develop - releases/** paths-ignore: # Don't run if we only modified packages in the built-in repository - 'var/spack/repos/builtin/**' - '!var/spack/repos/builtin/packages/lz4/**' - '!var/spack/repos/builtin/packages/mpich/**' - '!var/spack/repos/builtin/packages/tut/**' - '!var/spack/repos/builtin/packages/py-setuptools/**' - '!var/spack/repos/builtin/packages/openjpeg/**' - '!var/spack/repos/builtin/packages/r-rcpp/**' - '!var/spack/repos/builtin/packages/ruby-rake/**' # Don't run if we only modified documentation - 'lib/spack/docs/**' pull_request: branches: - develop - releases/** paths-ignore: # Don't run if we only modified packages in the built-in repository - 'var/spack/repos/builtin/**' - '!var/spack/repos/builtin/packages/lz4/**' - '!var/spack/repos/builtin/packages/mpich/**' - '!var/spack/repos/builtin/packages/tut/**' - '!var/spack/repos/builtin/packages/py-setuptools/**' - '!var/spack/repos/builtin/packages/openjpeg/**' - '!var/spack/repos/builtin/packages/r-rcpp/**' - '!var/spack/repos/builtin/packages/ruby-rake/**' # Don't run if we only modified documentation - 'lib/spack/docs/**' jobs: build: runs-on: ubuntu-latest strategy: matrix: package: - lz4 # MakefilePackage - mpich~fortran # AutotoolsPackage - 'tut%gcc@:10.99.99' # WafPackage - py-setuptools # PythonPackage - openjpeg # CMakePackage - r-rcpp # RPackage - ruby-rake # RubyPackage steps: - uses: actions/checkout@v2 - uses: actions/cache@v2.1.5 with: path: ~/.ccache key: ccache-build-${{ matrix.package }} restore-keys: | ccache-build-${{ matrix.package }} - uses: actions/setup-python@v2 with: python-version: 3.9 - name: Install System Packages run: | sudo apt-get update sudo apt-get -yqq install ccache gfortran perl perl-base r-base r-base-core r-base-dev ruby findutils openssl libssl-dev libpciaccess-dev R --version perl --version ruby --version - name: Copy Configuration run: | ccache -M 300M && ccache -z # Set up external deps for build tests, b/c they take too long to compile cp share/spack/qa/configuration/*.yaml etc/spack/ - name: Run the build test run: | . share/spack/setup-env.sh SPEC=${{ matrix.package }} share/spack/qa/run-build-tests ccache -s