name: Build test on: pull_request: paths-ignore: - 'Documentation/**' - 'lib*/docs/**' push: branches: - 'cibuild' - 'master' - 'next' - 'stable/**' paths-ignore: - 'Documentation/**' - 'lib*/docs/**' permissions: contents: read # to fetch code (actions/checkout) jobs: build: runs-on: ubuntu-latest strategy: fail-fast: false matrix: env: - { COMPILER: "gcc", COMPILER_VERSION: "10", SANITIZE: "yes" } - { COMPILER: "gcc", COMPILER_VERSION: "10", SANITIZE: "no" } - { COMPILER: "clang", COMPILER_VERSION: "15", SANITIZE: "yes" } - { COMPILER: "clang", COMPILER_VERSION: "15", SANITIZE: "no" } env: ${{ matrix.env }} steps: - name: Repository checkout uses: actions/checkout@v1 - name: Ubuntu setup run: sudo -E .github/workflows/cibuild-setup-ubuntu.sh - name: Configure run: .github/workflows/cibuild.sh CONFIGURE - name: Code checks run: .github/workflows/cibuild.sh CODECHECK - name: Configure & Make run: .github/workflows/cibuild.sh MAKE - name: Check run: sudo -E .github/workflows/cibuild.sh CHECK - name: Make install run: .github/workflows/cibuild.sh INSTALL coveralls: permissions: contents: read # to fetch code (actions/checkout) checks: write # to create new checks (coverallsapp/github-action) runs-on: ubuntu-latest if: github.repository == 'util-linux/util-linux' env: COMPILER: gcc COMPILER_VERSION: 10 SANITIZE: no COVERAGE: yes steps: - name: Repository checkout uses: actions/checkout@v1 - name: Ubuntu setup run: sudo -E .github/workflows/cibuild-setup-ubuntu.sh - name: Configure & Make run: .github/workflows/cibuild.sh CONFIGURE MAKE - name: Check run: sudo -E .github/workflows/cibuild.sh CHECK - name: Coveralls uses: coverallsapp/github-action@master with: github-token: ${{ secrets.GITHUB_TOKEN }} path-to-lcov: ./coverage.info meson: needs: build runs-on: ubuntu-latest env: COMPILER: gcc COMPILER_VERSION: 10 SANITIZE: no steps: - name: Repository checkout uses: actions/checkout@v1 - name: Ubuntu setup run: sudo -E .github/workflows/cibuild-setup-ubuntu.sh - name: Meson configure run: .github/workflows/cibuild.sh MESONCONF - name: Meson build run: .github/workflows/cibuild.sh MESONBUILD distcheck: needs: build runs-on: ubuntu-latest env: COMPILER: gcc COMPILER_VERSION: 10 SANITIZE: no TRANSLATE_MANPAGES: yes steps: - name: Repository checkout uses: actions/checkout@v1 - name: Ubuntu setup run: sudo -E .github/workflows/cibuild-setup-ubuntu.sh - name: Configure run: .github/workflows/cibuild.sh CONFIGURE - name: Make distcheck run: .github/workflows/cibuild.sh DISTCHECK build-arch: name: build (qemu-user, ${{ matrix.arch }}) runs-on: ubuntu-latest strategy: fail-fast: false matrix: include: - arch: s390x - arch: riscv64 steps: - name: Repository checkout uses: actions/checkout@v1 - uses: uraimo/run-on-arch-action@v2 with: arch: ${{ matrix.arch }} dockerRunArgs: --privileged -v /dev:/dev distro: ubuntu_latest run: | export COMPILER=gcc export COMPILER_VERSION=10 export SANITIZE=no export QEMU_USER=1 # name: Ubuntu setup .github/workflows/cibuild-setup-ubuntu.sh git config --global --add safe.directory "$PWD" # Configure & Make .github/workflows/cibuild.sh CONFIGURE MAKE # Check .github/workflows/cibuild.sh CHECK