diff --git a/.github/workflows/build_test_docker.yml b/.github/workflows/build_test_docker.yml new file mode 100644 index 00000000..23550cfa --- /dev/null +++ b/.github/workflows/build_test_docker.yml @@ -0,0 +1,47 @@ +name: Build and Test - Linux Docker + +on: [ push, pull_request ] + +jobs: + build: + + # ubuntu-latest will be shortly upgrading to this + runs-on: ubuntu-20.04 + + strategy: + fail-fast: false + matrix: + python: [ python, python3 ] + cxx: [ g++, clang++ ] + std: [ c++98, c++11] + include: + # Add the appropriate docker image for each compiler. + # The images from teeks99/boost-python-test already have boost::python + # pre-reqs installed, see: + # https://github.com/teeks99/boost-python-test-docker + - cxx: clang++ + docker-img: teeks99/boost-python-test:clang-11_1.66.0 + - cxx: g++ + docker-img: teeks99/boost-python-test:gcc-9_1.66.0 + + container: + image: ${{ matrix.docker-img }} + + steps: + - uses: actions/checkout@v2 + + - name: Test + run: | + ${{ matrix.python }} --version + ${{ matrix.cxx }} --version + faber -v + ls -l ${BOOST_PY_DEPS} + + sed -e "s/\$PYTHON/${{ matrix.python }}/g" .ci/faber > ~/.faber + + faber \ + --with-boost-include=${BOOST_PY_DEPS} \ + --builddir=build test.report \ + cxx.name=${{ matrix.cxx }} \ + cxxflags=-std=${{ matrix.std }} \ + -j`nproc`