diff --git a/.github/workflows/debian.yml b/.github/workflows/debian.yml new file mode 100644 index 0000000000..efa18ed069 --- /dev/null +++ b/.github/workflows/debian.yml @@ -0,0 +1,49 @@ +name: Passenger Debian packaging tests + +env: + ENTERPRISE: 0 + +on: + push: + branches: [ 'stable-*', 'feature/*' ] + pull_request: + branches: [ 'stable-*', 'feature/*' ] + +jobs: + define-matrix: + runs-on: ubuntu-latest + outputs: + distros: ${{ steps.distros.outputs.distros }} + steps: + - name: Define Distros + id: distros + run: echo "distros=[$(awk -F= '/DEFAULT_DISTROS/{print $2}' packaging/debian/internal/lib/distro_info.sh | sed -e 's/ /", "/g')]" >> "$GITHUB_OUTPUT" + + test: + name: "Test ${{ matrix.distro }} packages" + needs: define-matrix + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + distro: ${{ fromJSON(needs.define-matrix.outputs.distros) }} + arch: + - amd64 + - arm64 + env: + WORKSPACE: ${{ github.workspace }} + ARCHITECTURE: ${{ matrix.arch }} + CACHE_DIR: ${{ github.workspace }}/cache/debian-test/${{ matrix.distro }}-${{ matrix.arch }} + DISTRIBUTION: ${{ matrix.distro }} + steps: + - uses: actions/checkout@v4 + with: + submodules: true + - uses: docker/setup-qemu-action@v3 + - uses: docker/setup-buildx-action@v3 + - run: ./dev/ci/tests/debian/run + - run: ls -R "$WORKSPACE/output" + # - uses: actions/upload-artifact@v4 + # with: + # name: debian-${{ matrix.distro }}-${{ matrix.arch }} + # path: '**/*'