name: Build/Test on: push: branches: - '*' - '!gh-pages' paths-ignore: - 'kernel_module/**' pull_request: branches: [ master ] jobs: build: if: "!(contains(github.event.head_commit.message, '[ci skip]') || contains(github.event.head_commit.message, '[skip ci]'))" name: ${{ join(matrix.*, '/') }} runs-on: ${{ matrix.os }} continue-on-error: ${{ matrix.os == 'macos-latest' }} env: CC: ${{ matrix.cc }} strategy: matrix: os: ['ubuntu-16.04', 'ubuntu-18.04', 'ubuntu-20.04', 'macos-latest'] cc: ['gcc', 'clang'] steps: - name: Checkout repository uses: actions/checkout@v2 - name: Install dependencies (Ubuntu) run: ./.github/scripts/install-dependencies-ubuntu.sh if: ${{ matrix.os != 'macos-latest' }} - name: Install dependencies (MacOS) run: ./.github/scripts/install-dependencies-macos.sh if: ${{ matrix.os == 'macos-latest' }} - name: Build and Test run: ./.github/scripts/build-and-test.sh - name: Generate Doxygen documentation uses: mattnotmitt/doxygen-action@v1 with: working-directory: './build' - name: Deploy generated documentation to Github pages uses: peaceiris/actions-gh-pages@v3 with: github_token: ${{ secrets.GITHUB_TOKEN }} publish_dir: ./build/docs