They are newly failing since the previous commit (upgrading to Ubuntu focal), so instead of debugging what the issue is, let’s just remove them entirely. Not many i386 users are left, as the world is on amd64 and arm64 these days.
87 lines
3.7 KiB
YAML
87 lines
3.7 KiB
YAML
name: GitHub Actions
|
|
|
|
on:
|
|
push:
|
|
branches: [ next, master, actions ]
|
|
pull_request:
|
|
branches: [ next ]
|
|
|
|
jobs:
|
|
build:
|
|
name: build and test
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
compiler: [gcc, clang]
|
|
env:
|
|
CC: ${{ matrix.compiler }}
|
|
DOCKER_PASS: ${{ secrets.DOCKER_PASS }}
|
|
DOCKER_EMAIL: ${{ secrets.DOCKER_EMAIL }}
|
|
DOCKER_USER: ${{ secrets.DOCKER_USER }}
|
|
GH_TOKEN: ${{ secrets.GH_TOKEN }}
|
|
BALTO_TOKEN: ${{ secrets.BALTO_TOKEN }}
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- run: git fetch --prune --unshallow
|
|
- name: construct container name
|
|
run: |
|
|
echo "BASENAME=i3wm/travis-base:$(date +'%Y-%m')-$(./travis/ha.sh travis/travis-base.Dockerfile)" >> $GITHUB_ENV
|
|
echo "BASENAME_UBUNTU=i3wm/travis-base-ubuntu:$(date +'%Y-%m')-$(./travis/ha.sh travis/travis-base-ubuntu.Dockerfile)" >> $GITHUB_ENV
|
|
- name: fetch or build Docker container
|
|
run: |
|
|
docker pull ${{ env.BASENAME }} || ./travis/docker-build-and-push.sh ${{ env.BASENAME }} travis/travis-base.Dockerfile
|
|
- name: fetch or build extra Docker containers
|
|
run: |
|
|
./travis/skip-pkg.sh || docker pull ${{ env.BASENAME_UBUNTU }} || ./travis/docker-build-and-push.sh ${{ env.BASENAME_UBUNTU }} travis/travis-base-ubuntu.Dockerfile
|
|
- name: build i3
|
|
run: |
|
|
docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 -e CC ${{ env.BASENAME }} /bin/sh -c 'rm -rf build; mkdir -p build && cd build && CFLAGS="-Wformat -Wformat-security -Wextra -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Werror -fno-common -D_FORTIFY_SOURCE=2" meson setup .. -Ddocs=true -Dmans=true -Db_sanitize=address --buildtype=debugoptimized && ninja -v'
|
|
- name: check spelling
|
|
run: |
|
|
docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 ${{ env.BASENAME }} ./travis/check-spelling.pl
|
|
- name: run i3 tests
|
|
run: |
|
|
docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 -e CC ${{ env.BASENAME }} ./travis/run-tests.sh
|
|
- name: Archive test logs
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: test-logs
|
|
path: build/testsuite-*
|
|
if: ${{ failure() }}
|
|
- name: build dist tarball
|
|
run: |
|
|
docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 -e CC ${{ env.BASENAME }} /bin/sh -c 'rm -rf distbuild; mkdir distbuild && cd distbuild && meson setup .. -Ddocs=true -Dmans=true && meson dist --no-tests'
|
|
- name: build Debian packages
|
|
run: |
|
|
echo "::group::Debian amd64"
|
|
./travis/skip-pkg.sh || docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 ${{ env.BASENAME }} ./travis/debian-build.sh deb/debian-amd64/DIST
|
|
echo "::endgroup::"
|
|
echo "::group::Ubuntu amd64"
|
|
./travis/skip-pkg.sh || docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 ${{ env.BASENAME_UBUNTU }} ./travis/debian-build.sh deb/ubuntu-amd64/DIST
|
|
echo "::endgroup::"
|
|
- name: push Debian packages to balto
|
|
run: |
|
|
./travis/skip-pkg.sh || travis/push-balto.sh
|
|
- name: build docs
|
|
run: |
|
|
./travis/skip-pkg.sh || docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 ${{ env.BASENAME }} ./travis/docs.sh
|
|
- name: push docs to GitHub pages
|
|
run: |
|
|
./travis/skip-pkg.sh || travis/deploy-github-pages.sh
|
|
formatting:
|
|
name: Check formatting
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: check & print release notes
|
|
run: ./release-notes/generator.pl
|
|
- name: Install dependencies
|
|
run: |
|
|
sudo apt-get install -y clang-format-12
|
|
- name: Check formatting
|
|
run: clang-format-12 --dry-run --Werror $(git ls-files '*.c' '*.h')
|
|
- name: Verify safe wrapper functions are used
|
|
run: ./travis/check-safe-wrappers.sh
|