Skip to content

Track application restart generations #118

Track application restart generations

Track application restart generations #118

Workflow file for this run

name: Passenger Debian packaging tests
env:
FORCE_COLOR: 1
RUST_LOG_STYLE: always
on:
push: {}
pull_request: {}
jobs:
define-matrix:
runs-on: ubuntu-latest
outputs:
distros: ${{ steps.distros.outputs.distros }}
steps:
- uses: actions/checkout@v4
with:
submodules: true
- 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: ${{ matrix.distro }} ${{ matrix.arch.name }}
needs: define-matrix
strategy:
fail-fast: false
matrix:
distro: ${{ fromJSON(needs.define-matrix.outputs.distros) }}
arch:
- name: amd64
runner: ubuntu-24.04
- name: arm64
runner: passenger-ubuntu-24.04-arm64-4cpu
runs-on: ${{ matrix.arch.runner }}
env:
WORKSPACE: ${{ github.workspace }}
ARCHITECTURE: ${{ matrix.arch.name }}
CACHE_DIR: ${{ github.workspace }}/cache/debian-test/${{ matrix.distro }}-${{ matrix.arch.name }}
DISTRIBUTION: ${{ matrix.distro }}
steps:
- uses: actions/checkout@v4
with:
submodules: true
- run: mkdir work cache output
- name: Fetch cache
run: ./dev/ci/fetch-cache-az-blob-storage
env:
AZURE_STORAGE_CONNECTION_STRING: ${{ secrets.AZURE_CI_STORAGE_CONNECTION_STRING }}
CONTAINER_NAME: ${{ vars.SCCACHE_AZURE_BLOB_CONTAINER }}
BLOB_NAME: "binaries/debian-cache-${{ matrix.distro }}-${{ matrix.arch.name }}.tar.zstd"
CACHE_PATH: packaging/debian/cache
SUDO: true
- name: Build
run: ./build -w work -c cache -o output -p "$WORKSPACE" -d "$DISTRIBUTION" -a "$ARCHITECTURE" -R pkg:all
env:
WORKSPACE: ${{ github.workspace }}
DISTRIBUTION: ${{ matrix.distro }}
ARCHITECTURE: ${{ matrix.arch.name }}
working-directory: packaging/debian
- name: Test
run: >
./test
-p "$WORKSPACE"
-d "output/$DISTRIBUTION"
-c cache
-x "$DISTRIBUTION"
-a "$ARCHITECTURE"
-j
env:
WORKSPACE: ${{ github.workspace }}
DISTRIBUTION: ${{ matrix.distro }}
ARCHITECTURE: ${{ matrix.arch.name }}
working-directory: packaging/debian
- name: Update cache
run: ./dev/ci/update-cache-az-blob-storage
env:
AZURE_STORAGE_CONNECTION_STRING: ${{ secrets.AZURE_CI_STORAGE_CONNECTION_STRING }}
CONTAINER_NAME: ${{ vars.SCCACHE_AZURE_BLOB_CONTAINER }}
BLOB_NAME: "binaries/debian-cache-${{ matrix.distro }}-${{ matrix.arch.name }}.tar.zstd"
CACHE_PATH: packaging/debian/cache
SUDO: true
if: '!cancelled()'
- uses: actions/upload-artifact@v4
with:
name: debian-${{ matrix.distro }}-${{ matrix.arch.name }}
path: packaging/debian/output/${{ matrix.distro }}/*