Skip to content

Replace mirror.cgi with Python #223

Replace mirror.cgi with Python

Replace mirror.cgi with Python #223

Workflow file for this run

name: CI build
on:
pull_request:
push:
# don't run on packaging and dependabot branches
branches-ignore:
- 'for-debian'
- 'debian/**'
- 'pristine-tar'
- 'dependabot/**'
permissions:
contents: read
jobs:
build:
strategy:
fail-fast: false
matrix:
container:
- 'debian:bookworm'
- 'debian:sid'
- 'fedora:39'
- 'alpine:latest'
runs-on: ubuntu-latest
container: ${{ matrix.container }}
name: ${{ matrix.container }}
steps:
- uses: actions/checkout@v4
- name: install dependencies (Debian)
if: startsWith(matrix.container, 'debian')
run: |
export DEBIAN_FRONTEND=noninteractive
apt-get update
apt-get -y install python3-yaml apache2-bin apache2-dev curl gnutls-bin libapr1-dev libgnutls28-dev make meson openssl pandoc pkgconf procps iproute2 softhsm2
- name: install dependencies (Fedora)
if: startsWith(matrix.container, 'fedora')
run: |
dnf -y install bzip2 curl gcc gnutls-devel gnutls-utils httpd-devel iproute make meson pkgconf python3-pyyaml redhat-rpm-config softhsm
- name: install dependencies (Alpine)
if: startsWith(matrix.container, 'alpine')
run: |
apk add apache2 apache2-dev apache2-proxy build-base gnutls-dev gnutls-utils make meson musl-dev pkgconf python3 py3-yaml
- name: set prefix for container-specific artifacts
# this is because upload-artifact doesn't like ":" in file names
env:
CONTAINER_NAME: ${{ matrix.container }}
run: |
echo "artifact_prefix=$(echo ${CONTAINER_NAME} | sed s/:/-/)" >> ${GITHUB_ENV}
- name: build mod_gnutls and run tests
uses: ./.github/build-action/
with:
artifact-prefix: ${{ env.artifact_prefix }}
coverage:
runs-on: ubuntu-latest
container: debian:trixie
name: coverage
steps:
- uses: actions/checkout@v4
- name: install dependencies
run: |
export DEBIAN_FRONTEND=noninteractive
apt-get update
apt-get -y install python3-yaml apache2-bin apache2-dev curl gnutls-bin libapr1-dev libgnutls28-dev openssl make meson pkgconf procps iproute2 softhsm2 clang llvm gcovr
- name: build mod_gnutls with coverage support
uses: ./.github/build-action/
with:
cc: clang
configure-options: -Db_coverage=true
artifact-prefix: coverage
- name: generate coverage report
run: ninja -C build/ coverage-html
- name: store coverage report
uses: actions/upload-artifact@v4
with:
name: coverage-report
path: build/meson-logs/coveragereport/