From 45e7b6c89f9c98534b2c336d1321b9570277be42 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 07:10:47 +0200 Subject: [PATCH 01/40] Activate github checks --- {.gitea => .github}/workflows/check.yml | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename {.gitea => .github}/workflows/check.yml (100%) diff --git a/.gitea/workflows/check.yml b/.github/workflows/check.yml similarity index 100% rename from .gitea/workflows/check.yml rename to .github/workflows/check.yml From b0af67d09626b71dab24b5f79701e47022146758 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 07:18:58 +0200 Subject: [PATCH 02/40] Rename variables --- .github/workflows/check.yml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index a9e73b3..4b34ec4 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -24,7 +24,7 @@ jobs: echo Debian Fullname: $DEBFULLNAME export DEBEMAIL=${{ github.actor }}@perfact.de echo Debian Email: $DEBEMAIL - debchange --nmu Automated build on commit: ${{ gitea.sha }} + debchange --nmu Automated build on commit: ${{ github.sha }} - name: Update package sources run: sudo apt update || true @@ -37,17 +37,17 @@ jobs: - name: Collect result files run: | - rm -rf /workspace/outputs/${{ gitea.repository }}/${{ gitea.ref_name }}/${{ matrix.target }}/ - mkdir -p /workspace/outputs/${{ gitea.repository }}/${{ gitea.ref_name }}/${{ matrix.target }} - cp /workspace/DebianPackages/*.buildinfo /workspace/outputs/${{ gitea.repository }}/${{ gitea.ref_name }}/${{ matrix.target }}/ - cp /workspace/DebianPackages/*.changes /workspace/outputs/${{ gitea.repository }}/${{ gitea.ref_name }}/${{ matrix.target }}/ - cp /workspace/DebianPackages/*.deb /workspace/outputs/${{ gitea.repository }}/${{ gitea.ref_name }}/${{ matrix.target }}/ - cp /workspace/DebianPackages/*.dsc /workspace/outputs/${{ gitea.repository }}/${{ gitea.ref_name }}/${{ matrix.target }}/ - cp /workspace/DebianPackages/*.tar.xz /workspace/outputs/${{ gitea.repository }}/${{ gitea.ref_name }}/${{ matrix.target }}/ + rm -rf /workspace/outputs/${{ github.repository }}/${{ github.ref_name }}/${{ matrix.target }}/ + mkdir -p /workspace/outputs/${{ github.repository }}/${{ github.ref_name }}/${{ matrix.target }} + cp /workspace/DebianPackages/*.buildinfo /workspace/outputs/${{ github.repository }}/${{ github.ref_name }}/${{ matrix.target }}/ + cp /workspace/DebianPackages/*.changes /workspace/outputs/${{ github.repository }}/${{ github.ref_name }}/${{ matrix.target }}/ + cp /workspace/DebianPackages/*.deb /workspace/outputs/${{ github.repository }}/${{ github.ref_name }}/${{ matrix.target }}/ + cp /workspace/DebianPackages/*.dsc /workspace/outputs/${{ github.repository }}/${{ github.ref_name }}/${{ matrix.target }}/ + cp /workspace/DebianPackages/*.tar.xz /workspace/outputs/${{ github.repository }}/${{ github.ref_name }}/${{ matrix.target }}/ - name: Output the result as artifact uses: actions/upload-artifact@v3 with: name: ${{ matrix.target }} - path: /workspace/outputs/${{ gitea.repository }}/${{ gitea.ref_name }}/${{ matrix.target }}/ + path: /workspace/outputs/${{ github.repository }}/${{ github.ref_name }}/${{ matrix.target }}/ overwrite: true From 4a93f7be1793e3dd6cdcc300b8bb7f2a7613d71b Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 07:44:15 +0200 Subject: [PATCH 03/40] Try defining correct docker source --- .github/workflows/check.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 4b34ec4..f1375a2 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -10,7 +10,9 @@ jobs: strategy: matrix: target: ['jammy', 'bookworm', 'trixie'] - runs-on: perfact-build-${{ matrix.target }} + runs-on: ubuntu-latest + container: + image: dockerhub.io/perfactde/perfact-build-${{ matrix.target }} steps: - name: Checkout Repository uses: actions/checkout@v3 From 1cf92af5d4c15d29d837abbbaa1daf91343f9e40 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 07:45:20 +0200 Subject: [PATCH 04/40] bump --- .github/workflows/check.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index f1375a2..dc9dd14 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -48,7 +48,7 @@ jobs: cp /workspace/DebianPackages/*.tar.xz /workspace/outputs/${{ github.repository }}/${{ github.ref_name }}/${{ matrix.target }}/ - name: Output the result as artifact - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: ${{ matrix.target }} path: /workspace/outputs/${{ github.repository }}/${{ github.ref_name }}/${{ matrix.target }}/ From 56f800a8612e710a492678dfa504b3d1613b9906 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 07:46:05 +0200 Subject: [PATCH 05/40] fix url --- .github/workflows/check.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index dc9dd14..b5c9101 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -12,7 +12,7 @@ jobs: target: ['jammy', 'bookworm', 'trixie'] runs-on: ubuntu-latest container: - image: dockerhub.io/perfactde/perfact-build-${{ matrix.target }} + image: docker.io/perfactde/perfact-build-${{ matrix.target }} steps: - name: Checkout Repository uses: actions/checkout@v3 From 91b8192c5b20b758406a6abe462c39b134f9f21b Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 07:47:22 +0200 Subject: [PATCH 06/40] fix url --- .github/workflows/check.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index b5c9101..5728d28 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -12,7 +12,7 @@ jobs: target: ['jammy', 'bookworm', 'trixie'] runs-on: ubuntu-latest container: - image: docker.io/perfactde/perfact-build-${{ matrix.target }} + image: docker.io/perfactde/build-${{ matrix.target }} steps: - name: Checkout Repository uses: actions/checkout@v3 From 8137a2c1d7533cc8cc9025e77f1c07fb386f9174 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 07:55:19 +0200 Subject: [PATCH 07/40] Use dedicated action --- .github/workflows/check.yml | 44 ++++--------------------------------- 1 file changed, 4 insertions(+), 40 deletions(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 5728d28..43eeaf6 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -9,47 +9,11 @@ jobs: build: strategy: matrix: - target: ['jammy', 'bookworm', 'trixie'] + target: ['ubuntu:jammy', 'debian:bookworm', 'debian:trixie'] runs-on: ubuntu-latest - container: - image: docker.io/perfactde/build-${{ matrix.target }} steps: - name: Checkout Repository - uses: actions/checkout@v3 - - name: Change owner of build output Folder - run: sudo chown build:build /workspace/DebianPackages/ && echo OK! - - - name: Update NMU changelog - run: | - echo Setting environment Variables - export DEBFULLNAME=${{ github.actor }} - echo Debian Fullname: $DEBFULLNAME - export DEBEMAIL=${{ github.actor }}@perfact.de - echo Debian Email: $DEBEMAIL - debchange --nmu Automated build on commit: ${{ github.sha }} - - - name: Update package sources - run: sudo apt update || true - - - name: Install build dependencies - run: sudo apt build-dep -y . - - - name: Build - run: dpkg-buildpackage - - - name: Collect result files - run: | - rm -rf /workspace/outputs/${{ github.repository }}/${{ github.ref_name }}/${{ matrix.target }}/ - mkdir -p /workspace/outputs/${{ github.repository }}/${{ github.ref_name }}/${{ matrix.target }} - cp /workspace/DebianPackages/*.buildinfo /workspace/outputs/${{ github.repository }}/${{ github.ref_name }}/${{ matrix.target }}/ - cp /workspace/DebianPackages/*.changes /workspace/outputs/${{ github.repository }}/${{ github.ref_name }}/${{ matrix.target }}/ - cp /workspace/DebianPackages/*.deb /workspace/outputs/${{ github.repository }}/${{ github.ref_name }}/${{ matrix.target }}/ - cp /workspace/DebianPackages/*.dsc /workspace/outputs/${{ github.repository }}/${{ github.ref_name }}/${{ matrix.target }}/ - cp /workspace/DebianPackages/*.tar.xz /workspace/outputs/${{ github.repository }}/${{ github.ref_name }}/${{ matrix.target }}/ - - - name: Output the result as artifact - uses: actions/upload-artifact@v4 + uses: actions/checkout@v4 + - uses: jtdor/build-deb-action@v1 with: - name: ${{ matrix.target }} - path: /workspace/outputs/${{ github.repository }}/${{ github.ref_name }}/${{ matrix.target }}/ - overwrite: true + docker-image: ${{ matrix.target }} From 125045530f786ebfa5e021a189780965ecd995ea Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 07:57:55 +0200 Subject: [PATCH 08/40] Add missing build dep --- debian/control | 1 + 1 file changed, 1 insertion(+) diff --git a/debian/control b/debian/control index fe4029b..64a8c61 100644 --- a/debian/control +++ b/debian/control @@ -7,6 +7,7 @@ Build-Depends: debhelper-compat (= 13), python3, pybuild-plugin-pyproject, + python3-setuptools, python3-setuptools-scm, Standards-Version: 4.6.2 From b5a47ddaae6dad6efc1b399a4013a0ed0ffb62f7 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 08:01:36 +0200 Subject: [PATCH 09/40] Add missing build dep --- debian/control | 1 + 1 file changed, 1 insertion(+) diff --git a/debian/control b/debian/control index 64a8c61..4cdb613 100644 --- a/debian/control +++ b/debian/control @@ -7,6 +7,7 @@ Build-Depends: debhelper-compat (= 13), python3, pybuild-plugin-pyproject, + tox, python3-setuptools, python3-setuptools-scm, Standards-Version: 4.6.2 From 3eb11adb8de469b90c751726fc23025df4dbdd2e Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 18:24:33 +0200 Subject: [PATCH 10/40] Fetch tags --- .github/workflows/check.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 43eeaf6..bb47f78 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -14,6 +14,8 @@ jobs: steps: - name: Checkout Repository uses: actions/checkout@v4 + with: + fetch-tags: true - uses: jtdor/build-deb-action@v1 with: docker-image: ${{ matrix.target }} From dbec2237545d9c03bb277508fa279fce09b3a06f Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 18:28:11 +0200 Subject: [PATCH 11/40] Restore original gitea action --- .gitea/workflows/check.yml | 53 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 .gitea/workflows/check.yml diff --git a/.gitea/workflows/check.yml b/.gitea/workflows/check.yml new file mode 100644 index 0000000..a9e73b3 --- /dev/null +++ b/.gitea/workflows/check.yml @@ -0,0 +1,53 @@ +name: Build Package +on: + push: + branches: + - 'main' + pull_request: {} + +jobs: + build: + strategy: + matrix: + target: ['jammy', 'bookworm', 'trixie'] + runs-on: perfact-build-${{ matrix.target }} + steps: + - name: Checkout Repository + uses: actions/checkout@v3 + - name: Change owner of build output Folder + run: sudo chown build:build /workspace/DebianPackages/ && echo OK! + + - name: Update NMU changelog + run: | + echo Setting environment Variables + export DEBFULLNAME=${{ github.actor }} + echo Debian Fullname: $DEBFULLNAME + export DEBEMAIL=${{ github.actor }}@perfact.de + echo Debian Email: $DEBEMAIL + debchange --nmu Automated build on commit: ${{ gitea.sha }} + + - name: Update package sources + run: sudo apt update || true + + - name: Install build dependencies + run: sudo apt build-dep -y . + + - name: Build + run: dpkg-buildpackage + + - name: Collect result files + run: | + rm -rf /workspace/outputs/${{ gitea.repository }}/${{ gitea.ref_name }}/${{ matrix.target }}/ + mkdir -p /workspace/outputs/${{ gitea.repository }}/${{ gitea.ref_name }}/${{ matrix.target }} + cp /workspace/DebianPackages/*.buildinfo /workspace/outputs/${{ gitea.repository }}/${{ gitea.ref_name }}/${{ matrix.target }}/ + cp /workspace/DebianPackages/*.changes /workspace/outputs/${{ gitea.repository }}/${{ gitea.ref_name }}/${{ matrix.target }}/ + cp /workspace/DebianPackages/*.deb /workspace/outputs/${{ gitea.repository }}/${{ gitea.ref_name }}/${{ matrix.target }}/ + cp /workspace/DebianPackages/*.dsc /workspace/outputs/${{ gitea.repository }}/${{ gitea.ref_name }}/${{ matrix.target }}/ + cp /workspace/DebianPackages/*.tar.xz /workspace/outputs/${{ gitea.repository }}/${{ gitea.ref_name }}/${{ matrix.target }}/ + + - name: Output the result as artifact + uses: actions/upload-artifact@v3 + with: + name: ${{ matrix.target }} + path: /workspace/outputs/${{ gitea.repository }}/${{ gitea.ref_name }}/${{ matrix.target }}/ + overwrite: true From 3ae490add9a7e0d828675145f758ffc615b10513 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 18:28:19 +0200 Subject: [PATCH 12/40] Add libpq-dev --- debian/control | 1 + 1 file changed, 1 insertion(+) diff --git a/debian/control b/debian/control index 4cdb613..2b92230 100644 --- a/debian/control +++ b/debian/control @@ -8,6 +8,7 @@ Build-Depends: python3, pybuild-plugin-pyproject, tox, + libpq-dev, python3-setuptools, python3-setuptools-scm, Standards-Version: 4.6.2 From 7bb0faec4ba0f6104894a19e6b27d8cc61444bb9 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 18:30:23 +0200 Subject: [PATCH 13/40] Add python3-dev --- debian/control | 1 + 1 file changed, 1 insertion(+) diff --git a/debian/control b/debian/control index 2b92230..1146bf0 100644 --- a/debian/control +++ b/debian/control @@ -9,6 +9,7 @@ Build-Depends: pybuild-plugin-pyproject, tox, libpq-dev, + python3-dev, python3-setuptools, python3-setuptools-scm, Standards-Version: 4.6.2 From bb549271ff2eab04c779c2684fae2f9240ff5df5 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 18:33:06 +0200 Subject: [PATCH 14/40] Fetch all history --- .github/workflows/check.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index bb47f78..127127b 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -15,7 +15,7 @@ jobs: - name: Checkout Repository uses: actions/checkout@v4 with: - fetch-tags: true + fetch-depth: 0 - uses: jtdor/build-deb-action@v1 with: docker-image: ${{ matrix.target }} From 0aae988cca656c5e1a56ce2781b7af60bc99e802 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 18:35:08 +0200 Subject: [PATCH 15/40] Add git --- .github/workflows/check.yml | 5 +++-- debian/control | 1 + 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 127127b..6281a4e 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -9,13 +9,14 @@ jobs: build: strategy: matrix: - target: ['ubuntu:jammy', 'debian:bookworm', 'debian:trixie'] + # target: ['ubuntu:jammy', 'debian:bookworm', 'debian:trixie'] + target: ['debian:trixie'] runs-on: ubuntu-latest steps: - name: Checkout Repository uses: actions/checkout@v4 with: - fetch-depth: 0 + fetch-tags: true - uses: jtdor/build-deb-action@v1 with: docker-image: ${{ matrix.target }} diff --git a/debian/control b/debian/control index 1146bf0..dbee6c9 100644 --- a/debian/control +++ b/debian/control @@ -7,6 +7,7 @@ Build-Depends: debhelper-compat (= 13), python3, pybuild-plugin-pyproject, + git, tox, libpq-dev, python3-dev, From 18ab4738b2e203735f03f68af34a759436892fd2 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 18:41:13 +0200 Subject: [PATCH 16/40] Add postgresql --- debian/control | 1 + 1 file changed, 1 insertion(+) diff --git a/debian/control b/debian/control index dbee6c9..0a74a65 100644 --- a/debian/control +++ b/debian/control @@ -9,6 +9,7 @@ Build-Depends: pybuild-plugin-pyproject, git, tox, + postgresql, libpq-dev, python3-dev, python3-setuptools, From d8577be753ad5516c7e36b9590d7069c797503b5 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 18:45:40 +0200 Subject: [PATCH 17/40] Use our docker image --- .github/workflows/check.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 6281a4e..021db8c 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -19,4 +19,4 @@ jobs: fetch-tags: true - uses: jtdor/build-deb-action@v1 with: - docker-image: ${{ matrix.target }} + docker-image: docker.io/perfact/build-${{ matrix.target }} From fbcba3c597aa801a8630d4b3150485deb6902918 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 18:46:19 +0200 Subject: [PATCH 18/40] Fix image name --- .github/workflows/check.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 021db8c..1447f77 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -10,7 +10,7 @@ jobs: strategy: matrix: # target: ['ubuntu:jammy', 'debian:bookworm', 'debian:trixie'] - target: ['debian:trixie'] + target: ['trixie'] runs-on: ubuntu-latest steps: - name: Checkout Repository From 6865bd298e1791077d0e4391ba52f949ca1c65b3 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 18:47:53 +0200 Subject: [PATCH 19/40] Fix again --- .github/workflows/check.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 1447f77..75dbf30 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -19,4 +19,4 @@ jobs: fetch-tags: true - uses: jtdor/build-deb-action@v1 with: - docker-image: docker.io/perfact/build-${{ matrix.target }} + docker-image: docker.io/perfactde/build-${{ matrix.target }} From ba5202585f12f0928c0d6cc48463cbbfe046b996 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 18:49:49 +0200 Subject: [PATCH 20/40] Go back --- .github/workflows/check.yml | 4 ++-- debian/control | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 75dbf30..6281a4e 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -10,7 +10,7 @@ jobs: strategy: matrix: # target: ['ubuntu:jammy', 'debian:bookworm', 'debian:trixie'] - target: ['trixie'] + target: ['debian:trixie'] runs-on: ubuntu-latest steps: - name: Checkout Repository @@ -19,4 +19,4 @@ jobs: fetch-tags: true - uses: jtdor/build-deb-action@v1 with: - docker-image: docker.io/perfactde/build-${{ matrix.target }} + docker-image: ${{ matrix.target }} diff --git a/debian/control b/debian/control index 0a74a65..f14f36c 100644 --- a/debian/control +++ b/debian/control @@ -9,7 +9,7 @@ Build-Depends: pybuild-plugin-pyproject, git, tox, - postgresql, + postgresql-common, libpq-dev, python3-dev, python3-setuptools, From c354cd6b38bc803180b6e90cbe7f05e797cca840 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 18:56:54 +0200 Subject: [PATCH 21/40] Ensure pg_config and pg_ctl are from the same version --- debian/control | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/debian/control b/debian/control index f14f36c..5c6eb64 100644 --- a/debian/control +++ b/debian/control @@ -9,8 +9,7 @@ Build-Depends: pybuild-plugin-pyproject, git, tox, - postgresql-common, - libpq-dev, + postgresql-all, python3-dev, python3-setuptools, python3-setuptools-scm, From 01124eeddbd8415084c83b3c992fae2864099bae Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 19:07:34 +0200 Subject: [PATCH 22/40] Run without root --- .github/workflows/check.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 6281a4e..96c581e 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -20,3 +20,4 @@ jobs: - uses: jtdor/build-deb-action@v1 with: docker-image: ${{ matrix.target }} + buildpackage-opts: -r"sudo -u nobody" From 7c140c7d3a9f126758e262181363b289683a96ea Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 19:13:04 +0200 Subject: [PATCH 23/40] Fix argument --- .github/workflows/check.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 96c581e..3840209 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -20,4 +20,4 @@ jobs: - uses: jtdor/build-deb-action@v1 with: docker-image: ${{ matrix.target }} - buildpackage-opts: -r"sudo -u nobody" + buildpackage-opts: '-r"sudo -u nobody"' From 04de8e75892356e7f9b1b4717690d82c444079b2 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 19:19:45 +0200 Subject: [PATCH 24/40] Drop privileges if in CI --- .github/workflows/check.yml | 1 - debian/rules | 6 +++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 3840209..6281a4e 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -20,4 +20,3 @@ jobs: - uses: jtdor/build-deb-action@v1 with: docker-image: ${{ matrix.target }} - buildpackage-opts: '-r"sudo -u nobody"' diff --git a/debian/rules b/debian/rules index 1e139cf..3d0ba14 100755 --- a/debian/rules +++ b/debian/rules @@ -5,7 +5,11 @@ #export DH_VERBOSE = 1 override_dh_auto_test: - tox + ifeq($(CI),true) + runuser -u nobody -- tox + else + tox + endif %: dh $@ --with python3 --buildsystem=pybuild From 0b8d2e9d41a03aa702ccba4278cecd151e7ab09f Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 19:23:23 +0200 Subject: [PATCH 25/40] fix indentation --- debian/rules | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/debian/rules b/debian/rules index 3d0ba14..e8e21a3 100755 --- a/debian/rules +++ b/debian/rules @@ -5,11 +5,11 @@ #export DH_VERBOSE = 1 override_dh_auto_test: - ifeq($(CI),true) - runuser -u nobody -- tox - else - tox - endif +ifeq($(CI),true) + runuser -u nobody -- tox +else + tox +endif %: dh $@ --with python3 --buildsystem=pybuild From e8fd77d18d194f63f870f644d62ea3665995de83 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 19:25:01 +0200 Subject: [PATCH 26/40] Fix whitespace --- debian/rules | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/debian/rules b/debian/rules index e8e21a3..aecd0f3 100755 --- a/debian/rules +++ b/debian/rules @@ -5,7 +5,7 @@ #export DH_VERBOSE = 1 override_dh_auto_test: -ifeq($(CI),true) +ifeq ($(CI),true) runuser -u nobody -- tox else tox From d9238bff54ac1bc616255c2f595d8b22e4985054 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 19:31:38 +0200 Subject: [PATCH 27/40] Create ciuser --- debian/rules | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/debian/rules b/debian/rules index aecd0f3..0d0c708 100755 --- a/debian/rules +++ b/debian/rules @@ -6,7 +6,9 @@ override_dh_auto_test: ifeq ($(CI),true) - runuser -u nobody -- tox + adduser --disabled-password --gecos "" ciuser + chown -R ciuser:ciuser $(CURDIR) + runuser -u ciuser -- tox else tox endif From 90211b14521966b04dad6a9fd561e0b8836a9b48 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 19:35:06 +0200 Subject: [PATCH 28/40] Reactivate other targets --- .github/workflows/check.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 6281a4e..bb47f78 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -9,8 +9,7 @@ jobs: build: strategy: matrix: - # target: ['ubuntu:jammy', 'debian:bookworm', 'debian:trixie'] - target: ['debian:trixie'] + target: ['ubuntu:jammy', 'debian:bookworm', 'debian:trixie'] runs-on: ubuntu-latest steps: - name: Checkout Repository From 301eb156e75253b7faabf908d1ecb2e4826394a6 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 19:41:41 +0200 Subject: [PATCH 29/40] Upload artifacts --- .github/workflows/check.yml | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index bb47f78..a98bddc 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -16,6 +16,18 @@ jobs: uses: actions/checkout@v4 with: fetch-tags: true - - uses: jtdor/build-deb-action@v1 + + - name: Build package + uses: jtdor/build-deb-action@v1 with: docker-image: ${{ matrix.target }} + buildpackage-opts: '-uc -us -b' + + - name: Upload built packages + uses: actions/upload-artifact@v4 + with: + name: debian-packages + path: | + ../*.deb + ../*.changes + ../*.buildinfo From ec87b85dd2e0da3c0bf265cf3d2cacbb866d09b6 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 19:47:46 +0200 Subject: [PATCH 30/40] Use artifacts output --- .github/workflows/check.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index a98bddc..2fbe452 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -19,6 +19,7 @@ jobs: - name: Build package uses: jtdor/build-deb-action@v1 + id: build with: docker-image: ${{ matrix.target }} buildpackage-opts: '-uc -us -b' @@ -27,7 +28,4 @@ jobs: uses: actions/upload-artifact@v4 with: name: debian-packages - path: | - ../*.deb - ../*.changes - ../*.buildinfo + path: ${{ steps.build.outputs.artifacts }} From 5afcaaab0b8bbab5e76f4534b56d2cae3554a223 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 19:54:02 +0200 Subject: [PATCH 31/40] Use different artifact names --- .github/workflows/check.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 2fbe452..ad084dd 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -27,5 +27,5 @@ jobs: - name: Upload built packages uses: actions/upload-artifact@v4 with: - name: debian-packages + name: ${{ matrix.target//:/_ }} path: ${{ steps.build.outputs.artifacts }} From 1ebc38854ec25cc32916faf7c2304df435afe715 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 19:55:56 +0200 Subject: [PATCH 32/40] Fix yaml --- .github/workflows/check.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index ad084dd..edf2c34 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -27,5 +27,5 @@ jobs: - name: Upload built packages uses: actions/upload-artifact@v4 with: - name: ${{ matrix.target//:/_ }} + name: ${{ matrix.target }} path: ${{ steps.build.outputs.artifacts }} From f376f172fb55081cabeee89d2815289f32b50507 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 20:03:47 +0200 Subject: [PATCH 33/40] Try again with substitution --- .github/workflows/check.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index edf2c34..6279f85 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -27,5 +27,5 @@ jobs: - name: Upload built packages uses: actions/upload-artifact@v4 with: - name: ${{ matrix.target }} + name: deb-${{ matrix.target//:/_ }} path: ${{ steps.build.outputs.artifacts }} From c4e94393fded1409f40463cb5d94eb270a1b0a57 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 20:08:07 +0200 Subject: [PATCH 34/40] Concatenate instead of replacing --- .github/workflows/check.yml | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 6279f85..25b5ebd 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -9,7 +9,13 @@ jobs: build: strategy: matrix: - target: ['ubuntu:jammy', 'debian:bookworm', 'debian:trixie'] + include: + - os: debian + dist: trixie + - os: debian + dist: bookworm + - os: ubuntu + dist: jammy runs-on: ubuntu-latest steps: - name: Checkout Repository @@ -21,11 +27,11 @@ jobs: uses: jtdor/build-deb-action@v1 id: build with: - docker-image: ${{ matrix.target }} + docker-image: ${{ matrix.os }}:${{ matrix.dist }} buildpackage-opts: '-uc -us -b' - name: Upload built packages uses: actions/upload-artifact@v4 with: - name: deb-${{ matrix.target//:/_ }} + name: deb-${{ matrix.dist }} path: ${{ steps.build.outputs.artifacts }} From 8ec5a9ab231f950f86c84f800193e9867803cbc9 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Tue, 14 Apr 2026 20:12:30 +0200 Subject: [PATCH 35/40] Improve artifact name --- .github/workflows/check.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 25b5ebd..d9cfc93 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -33,5 +33,5 @@ jobs: - name: Upload built packages uses: actions/upload-artifact@v4 with: - name: deb-${{ matrix.dist }} + name: python-perfact-dbutils.${{ matrix.dist }} path: ${{ steps.build.outputs.artifacts }} From 18aa76d26d22bbd382147bd9720f65a10dff4f17 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Wed, 15 Apr 2026 09:08:42 +0200 Subject: [PATCH 36/40] Relax dependency on postgresql again --- .github/workflows/check.yml | 8 ++++---- debian/control | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index d9cfc93..923d1cd 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -12,10 +12,10 @@ jobs: include: - os: debian dist: trixie - - os: debian - dist: bookworm - - os: ubuntu - dist: jammy + # - os: debian + # dist: bookworm + # - os: ubuntu + # dist: jammy runs-on: ubuntu-latest steps: - name: Checkout Repository diff --git a/debian/control b/debian/control index 5c6eb64..f383b7b 100644 --- a/debian/control +++ b/debian/control @@ -6,13 +6,13 @@ Rules-Requires-Root: no Build-Depends: debhelper-compat (= 13), python3, - pybuild-plugin-pyproject, - git, - tox, - postgresql-all, python3-dev, python3-setuptools, python3-setuptools-scm, + pybuild-plugin-pyproject, + git, + tox, + libpq-dev, Standards-Version: 4.6.2 Package: python3-perfact-dbutils From 4deae111c2738b655494792fc7de3250d03c1575 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Wed, 15 Apr 2026 09:11:29 +0200 Subject: [PATCH 37/40] Depend on one of many postgresql versions --- debian/control | 1 + 1 file changed, 1 insertion(+) diff --git a/debian/control b/debian/control index f383b7b..297f03b 100644 --- a/debian/control +++ b/debian/control @@ -13,6 +13,7 @@ Build-Depends: git, tox, libpq-dev, + postgresql-18 | postgresql-17 | postgresql-16 | postgresql-15 | postgresql-14, Standards-Version: 4.6.2 Package: python3-perfact-dbutils From 7bfee84af5c9c54f15b524652ece92b693aaa146 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Wed, 15 Apr 2026 09:26:10 +0200 Subject: [PATCH 38/40] Add other systems again --- .github/workflows/check.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 923d1cd..d9cfc93 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -12,10 +12,10 @@ jobs: include: - os: debian dist: trixie - # - os: debian - # dist: bookworm - # - os: ubuntu - # dist: jammy + - os: debian + dist: bookworm + - os: ubuntu + dist: jammy runs-on: ubuntu-latest steps: - name: Checkout Repository From c86ba0a49e9cae362d2c0021319b7b04809aef06 Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Wed, 15 Apr 2026 13:59:37 +0200 Subject: [PATCH 39/40] Add before-build-hook --- .github/workflows/check.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index d9cfc93..9141603 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -27,6 +27,7 @@ jobs: uses: jtdor/build-deb-action@v1 id: build with: + before-build-hook: debchange --controlmaint --local="+ci${{ github.run_id }}~git$(git rev-parse --short HEAD)" "CI build" docker-image: ${{ matrix.os }}:${{ matrix.dist }} buildpackage-opts: '-uc -us -b' From 1d5f2a34d37de37f3f38b55d2db18efd8bb997df Mon Sep 17 00:00:00 2001 From: Viktor Dick Date: Wed, 15 Apr 2026 15:32:43 +0200 Subject: [PATCH 40/40] Add devscripts --- debian/control | 1 + 1 file changed, 1 insertion(+) diff --git a/debian/control b/debian/control index 297f03b..c7b88b3 100644 --- a/debian/control +++ b/debian/control @@ -4,6 +4,7 @@ Priority: optional Maintainer: Viktor Dick Rules-Requires-Root: no Build-Depends: + devscripts, debhelper-compat (= 13), python3, python3-dev,