Loading .github/workflows/ci.yml +45 −36 Changes for .github/workflows/ci.yml: 45 added lines, 36 removed lines. Original line number Diff line number Diff line --- # The runners use ubuntu-22.04, because ubuntu-24.04 on GHA does not have this fix yet: # https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/2079019 name: CI on: push: Loading @@ -20,7 +18,7 @@ jobs: # ============================================================ tests-latest: name: py3.14 unit tests runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Install uv Loading @@ -32,10 +30,12 @@ jobs: - name: Install apt dependencies run: | sudo apt update sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install apparmor-utils libsasl2-dev python3-dev libldap2-dev libssl-dev slapd ldap-utils sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install libsasl2-dev python3-dev libldap2-dev libssl-dev slapd ldap-utils - name: App armor configuration for slapd if: ${{ !env.ACT }} run: sudo aa-complain /usr/sbin/slapd # aa-complain fails on ubuntu-24.04, so the profile is unloaded directly: # https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/2079019 run: sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.slapd - name: Run tests env: FORCE_COLOR: "1" Loading @@ -48,7 +48,7 @@ jobs: tests: name: py${{ matrix.python }} unit tests runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 strategy: fail-fast: false matrix: Loading @@ -67,10 +67,12 @@ jobs: - name: Install apt dependencies run: | sudo apt update sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install apparmor-utils libsasl2-dev python3-dev libldap2-dev libssl-dev slapd ldap-utils sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install libsasl2-dev python3-dev libldap2-dev libssl-dev slapd ldap-utils - name: App armor configuration for slapd if: ${{ !env.ACT }} run: sudo aa-complain /usr/sbin/slapd # aa-complain fails on ubuntu-24.04, so the profile is unloaded directly: # https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/2079019 run: sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.slapd - name: Run tests env: FORCE_COLOR: "1" Loading @@ -83,7 +85,7 @@ jobs: coverage: name: code coverage runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Install uv Loading @@ -95,10 +97,12 @@ jobs: - name: Install apt dependencies run: | sudo apt update sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install apparmor-utils libsasl2-dev python3-dev libldap2-dev libssl-dev slapd ldap-utils sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install libsasl2-dev python3-dev libldap2-dev libssl-dev slapd ldap-utils - name: App armor configuration for slapd if: ${{ !env.ACT }} run: sudo aa-complain /usr/sbin/slapd # aa-complain fails on ubuntu-24.04, so the profile is unloaded directly: # https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/2079019 run: sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.slapd - name: Run tests with coverage continue-on-error: true env: Loading @@ -118,7 +122,7 @@ jobs: minversions: name: minimum dependency versions runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Install uv Loading @@ -130,10 +134,12 @@ jobs: - name: Install apt dependencies run: | sudo apt update sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install apparmor-utils libsasl2-dev python3-dev libldap2-dev libssl-dev slapd ldap-utils sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install libsasl2-dev python3-dev libldap2-dev libssl-dev slapd ldap-utils - name: App armor configuration for slapd if: ${{ !env.ACT }} run: sudo aa-complain /usr/sbin/slapd # aa-complain fails on ubuntu-24.04, so the profile is unloaded directly: # https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/2079019 run: sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.slapd - name: Run tests env: FORCE_COLOR: "1" Loading @@ -145,7 +151,7 @@ jobs: uv run pytest --numprocesses auto style: runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Install uv Loading @@ -157,10 +163,12 @@ jobs: - name: Install apt dependencies run: | sudo apt update sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install apparmor-utils libsasl2-dev python3-dev libldap2-dev libssl-dev slapd ldap-utils sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install libsasl2-dev python3-dev libldap2-dev libssl-dev slapd ldap-utils - name: App armor configuration for slapd if: ${{ !env.ACT }} run: sudo aa-complain /usr/sbin/slapd # aa-complain fails on ubuntu-24.04, so the profile is unloaded directly: # https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/2079019 run: sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.slapd - name: Run linters run: | # python tzinfo fails on 'act' without this Loading @@ -170,7 +178,7 @@ jobs: uv run prek run --all-files doc: runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Install uv Loading @@ -195,7 +203,7 @@ jobs: # ============================================================ build-wheel: needs: [tests-latest, tests, minversions, style] runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 Loading @@ -216,6 +224,7 @@ jobs: build-pyinstaller: needs: [tests-latest, style] # The binary needs the glibc of the build system or a newer one. runs-on: ubuntu-22.04 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 Loading Loading @@ -250,7 +259,7 @@ jobs: build-docker: needs: [tests-latest, style] runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 Loading Loading @@ -283,7 +292,7 @@ jobs: integration-dev: name: integration (dev, ${{ matrix.database }}) needs: [tests-latest, tests, minversions, style] runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 strategy: fail-fast: false matrix: Loading @@ -304,8 +313,8 @@ jobs: - name: Install slapd for LDAP tests if: matrix.database == 'ldap' run: | sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install apparmor-utils slapd ldap-utils sudo aa-complain /usr/sbin/slapd sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install slapd ldap-utils sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.slapd - name: Install Python 3.14 run: uv python install 3.14 Loading @@ -320,7 +329,7 @@ jobs: integration-package: name: integration (package, ${{ matrix.database }}) needs: [build-wheel] runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 strategy: fail-fast: false matrix: Loading @@ -341,8 +350,8 @@ jobs: - name: Install slapd for LDAP tests if: matrix.database == 'ldap' run: | sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install apparmor-utils slapd ldap-utils sudo aa-complain /usr/sbin/slapd sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install slapd ldap-utils sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.slapd - name: Download wheel artifact uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 Loading @@ -364,7 +373,7 @@ jobs: integration-pyinstaller: name: integration (pyinstaller, ${{ matrix.database }}) needs: [build-pyinstaller] runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 strategy: fail-fast: false matrix: Loading @@ -385,8 +394,8 @@ jobs: - name: Install slapd for LDAP tests if: matrix.database == 'ldap' run: | sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install apparmor-utils slapd ldap-utils sudo aa-complain /usr/sbin/slapd sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install slapd ldap-utils sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.slapd - name: Download PyInstaller artifact uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 Loading @@ -410,7 +419,7 @@ jobs: integration-docker: name: integration (docker, ${{ matrix.database }}) needs: [build-docker] runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 strategy: fail-fast: false matrix: Loading @@ -431,8 +440,8 @@ jobs: - name: Install slapd for LDAP tests if: matrix.database == 'ldap' run: | sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install apparmor-utils slapd ldap-utils sudo aa-complain /usr/sbin/slapd sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install slapd ldap-utils sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.slapd - name: Download Docker image artifact uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 Loading @@ -456,7 +465,7 @@ jobs: integration-minimal: name: integration (minimal extras) needs: [build-wheel] runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 Loading Loading @@ -488,7 +497,7 @@ jobs: publish-pypi: needs: [integration-dev, integration-package, integration-pyinstaller, integration-docker, integration-minimal] if: startsWith(github.ref, 'refs/tags/') runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 environment: pypi permissions: id-token: write Loading @@ -505,7 +514,7 @@ jobs: publish-github-release: needs: [integration-dev, integration-package, integration-pyinstaller, integration-docker, integration-minimal] if: startsWith(github.ref, 'refs/tags/') runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 permissions: contents: write steps: Loading Loading @@ -533,7 +542,7 @@ jobs: publish-docker-hub: needs: [integration-dev, integration-package, integration-pyinstaller, integration-docker, integration-minimal] if: startsWith(github.ref, 'refs/tags/') runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 steps: - name: Download Docker image artifact uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 Loading Loading
.github/workflows/ci.yml +45 −36 Changes for .github/workflows/ci.yml: 45 added lines, 36 removed lines. Original line number Diff line number Diff line --- # The runners use ubuntu-22.04, because ubuntu-24.04 on GHA does not have this fix yet: # https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/2079019 name: CI on: push: Loading @@ -20,7 +18,7 @@ jobs: # ============================================================ tests-latest: name: py3.14 unit tests runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Install uv Loading @@ -32,10 +30,12 @@ jobs: - name: Install apt dependencies run: | sudo apt update sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install apparmor-utils libsasl2-dev python3-dev libldap2-dev libssl-dev slapd ldap-utils sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install libsasl2-dev python3-dev libldap2-dev libssl-dev slapd ldap-utils - name: App armor configuration for slapd if: ${{ !env.ACT }} run: sudo aa-complain /usr/sbin/slapd # aa-complain fails on ubuntu-24.04, so the profile is unloaded directly: # https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/2079019 run: sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.slapd - name: Run tests env: FORCE_COLOR: "1" Loading @@ -48,7 +48,7 @@ jobs: tests: name: py${{ matrix.python }} unit tests runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 strategy: fail-fast: false matrix: Loading @@ -67,10 +67,12 @@ jobs: - name: Install apt dependencies run: | sudo apt update sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install apparmor-utils libsasl2-dev python3-dev libldap2-dev libssl-dev slapd ldap-utils sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install libsasl2-dev python3-dev libldap2-dev libssl-dev slapd ldap-utils - name: App armor configuration for slapd if: ${{ !env.ACT }} run: sudo aa-complain /usr/sbin/slapd # aa-complain fails on ubuntu-24.04, so the profile is unloaded directly: # https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/2079019 run: sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.slapd - name: Run tests env: FORCE_COLOR: "1" Loading @@ -83,7 +85,7 @@ jobs: coverage: name: code coverage runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Install uv Loading @@ -95,10 +97,12 @@ jobs: - name: Install apt dependencies run: | sudo apt update sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install apparmor-utils libsasl2-dev python3-dev libldap2-dev libssl-dev slapd ldap-utils sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install libsasl2-dev python3-dev libldap2-dev libssl-dev slapd ldap-utils - name: App armor configuration for slapd if: ${{ !env.ACT }} run: sudo aa-complain /usr/sbin/slapd # aa-complain fails on ubuntu-24.04, so the profile is unloaded directly: # https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/2079019 run: sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.slapd - name: Run tests with coverage continue-on-error: true env: Loading @@ -118,7 +122,7 @@ jobs: minversions: name: minimum dependency versions runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Install uv Loading @@ -130,10 +134,12 @@ jobs: - name: Install apt dependencies run: | sudo apt update sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install apparmor-utils libsasl2-dev python3-dev libldap2-dev libssl-dev slapd ldap-utils sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install libsasl2-dev python3-dev libldap2-dev libssl-dev slapd ldap-utils - name: App armor configuration for slapd if: ${{ !env.ACT }} run: sudo aa-complain /usr/sbin/slapd # aa-complain fails on ubuntu-24.04, so the profile is unloaded directly: # https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/2079019 run: sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.slapd - name: Run tests env: FORCE_COLOR: "1" Loading @@ -145,7 +151,7 @@ jobs: uv run pytest --numprocesses auto style: runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Install uv Loading @@ -157,10 +163,12 @@ jobs: - name: Install apt dependencies run: | sudo apt update sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install apparmor-utils libsasl2-dev python3-dev libldap2-dev libssl-dev slapd ldap-utils sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install libsasl2-dev python3-dev libldap2-dev libssl-dev slapd ldap-utils - name: App armor configuration for slapd if: ${{ !env.ACT }} run: sudo aa-complain /usr/sbin/slapd # aa-complain fails on ubuntu-24.04, so the profile is unloaded directly: # https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/2079019 run: sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.slapd - name: Run linters run: | # python tzinfo fails on 'act' without this Loading @@ -170,7 +178,7 @@ jobs: uv run prek run --all-files doc: runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Install uv Loading @@ -195,7 +203,7 @@ jobs: # ============================================================ build-wheel: needs: [tests-latest, tests, minversions, style] runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 Loading @@ -216,6 +224,7 @@ jobs: build-pyinstaller: needs: [tests-latest, style] # The binary needs the glibc of the build system or a newer one. runs-on: ubuntu-22.04 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 Loading Loading @@ -250,7 +259,7 @@ jobs: build-docker: needs: [tests-latest, style] runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 Loading Loading @@ -283,7 +292,7 @@ jobs: integration-dev: name: integration (dev, ${{ matrix.database }}) needs: [tests-latest, tests, minversions, style] runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 strategy: fail-fast: false matrix: Loading @@ -304,8 +313,8 @@ jobs: - name: Install slapd for LDAP tests if: matrix.database == 'ldap' run: | sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install apparmor-utils slapd ldap-utils sudo aa-complain /usr/sbin/slapd sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install slapd ldap-utils sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.slapd - name: Install Python 3.14 run: uv python install 3.14 Loading @@ -320,7 +329,7 @@ jobs: integration-package: name: integration (package, ${{ matrix.database }}) needs: [build-wheel] runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 strategy: fail-fast: false matrix: Loading @@ -341,8 +350,8 @@ jobs: - name: Install slapd for LDAP tests if: matrix.database == 'ldap' run: | sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install apparmor-utils slapd ldap-utils sudo aa-complain /usr/sbin/slapd sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install slapd ldap-utils sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.slapd - name: Download wheel artifact uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 Loading @@ -364,7 +373,7 @@ jobs: integration-pyinstaller: name: integration (pyinstaller, ${{ matrix.database }}) needs: [build-pyinstaller] runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 strategy: fail-fast: false matrix: Loading @@ -385,8 +394,8 @@ jobs: - name: Install slapd for LDAP tests if: matrix.database == 'ldap' run: | sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install apparmor-utils slapd ldap-utils sudo aa-complain /usr/sbin/slapd sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install slapd ldap-utils sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.slapd - name: Download PyInstaller artifact uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 Loading @@ -410,7 +419,7 @@ jobs: integration-docker: name: integration (docker, ${{ matrix.database }}) needs: [build-docker] runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 strategy: fail-fast: false matrix: Loading @@ -431,8 +440,8 @@ jobs: - name: Install slapd for LDAP tests if: matrix.database == 'ldap' run: | sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install apparmor-utils slapd ldap-utils sudo aa-complain /usr/sbin/slapd sudo DEBIAN_FRONTEND=noninteractive apt --yes --quiet install slapd ldap-utils sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.slapd - name: Download Docker image artifact uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 Loading @@ -456,7 +465,7 @@ jobs: integration-minimal: name: integration (minimal extras) needs: [build-wheel] runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 Loading Loading @@ -488,7 +497,7 @@ jobs: publish-pypi: needs: [integration-dev, integration-package, integration-pyinstaller, integration-docker, integration-minimal] if: startsWith(github.ref, 'refs/tags/') runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 environment: pypi permissions: id-token: write Loading @@ -505,7 +514,7 @@ jobs: publish-github-release: needs: [integration-dev, integration-package, integration-pyinstaller, integration-docker, integration-minimal] if: startsWith(github.ref, 'refs/tags/') runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 permissions: contents: write steps: Loading Loading @@ -533,7 +542,7 @@ jobs: publish-docker-hub: needs: [integration-dev, integration-package, integration-pyinstaller, integration-docker, integration-minimal] if: startsWith(github.ref, 'refs/tags/') runs-on: ubuntu-22.04 runs-on: ubuntu-24.04 steps: - name: Download Docker image artifact uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 Loading