name: Release Builder on: push: branches: - "release-*" - "master" tags: - "v*" pull_request: branches: - "release-*" jobs: build-deb: runs-on: ubuntu-latest name: ${{ matrix.name }} container: ${{ matrix.container }} strategy: fail-fast: false matrix: name: [ "debian-buster", "debian-bullseye", "debian-sid", "debian-bookworm", "ubuntu-focal", "ubuntu-jammy", "ubuntu-lunar", ] include: - name: debian-buster container: debian:buster - name: debian-bullseye container: debian:bullseye - name: debian-sid container: debian:sid - name: debian-bookworm container: debian:bookworm - name: ubuntu-focal container: ubuntu:focal - name: ubuntu-jammy container: ubuntu:jammy - name: ubuntu-lunar container: ubuntu:lunar steps: - name: Checkout code uses: actions/checkout@v3 - name: Set timezone if: startsWith(matrix.container, 'ubuntu:') run: ln -snf /usr/share/zoneinfo/Europe/Paris /etc/localtime && echo Europe/Paris > /etc/timezone - name: Update OS run: | apt-get -qqy update || \ sudo apt-get -qqy update - name: Install deps run: | export DEBIAN_FRONTEND=noninteractive export PACKAGES_TO_INSTALL="fakeroot php-xml php-curl dpkg-dev gcc make libpcre2-dev dh-php php-dev build-essential" apt-get -qqy --no-install-recommends install $PACKAGES_TO_INSTALL || sudo apt-get -qqy --no-install-recommends install $PACKAGES_TO_INSTALL - name: Build debs run: DEB_BUILD_OPTIONS=nocheck dpkg-buildpackage -i -us -uc -tc -I -rfakeroot - name: Move built debs and rename run: | mv -v ../*.deb ./ ls *.deb | xargs -I % mv -v % ${{ matrix.name }}-% - name: Upload artifacts uses: actions/upload-artifact@v4 with: name: snuffleupagus-${{ matrix.name }} path: ./*.deb