Skip to content

GoatCounter: let the singlefile download unpack the binary - #18721

Merged
MickLesk merged 1 commit into
mainfrom
fix/goatcounter-singlefile-unpack
Nov 14, 2026
Merged

MickLesk merged 1 commit into
mainfrom
fix/goatcounter-singlefile-unpack

Conversation

@MickLesk

Copy link
Copy Markdown
Member

✍️ Description

core unpacks a compressed single binary since #248; the manual gunzip then failed on install and update.

🔗 Related Issue

Fixes #

✅ Prerequisites (x in brackets)

  • Self-review completed – Code follows project standards.
  • Tested thoroughly – Changes work as expected.
  • No security risks – No hardcoded secrets, unnecessary privilege escalations, or permission issues.

Tested on:


🛠️ Type of Change (X in brackets)

  • 🐞 Bug fix – Resolves an issue without breaking functionality.
  • ✨ New feature – Adds new, non-breaking functionality.
  • 💥 Breaking change – Alters existing functionality in a way that may require updates.
  • 🆕 New script – A fully functional and tested script or script set.
  • 🌍 Website update – Changes to script metadata (PocketBase/website data).
  • 🔧 Refactoring / Code Cleanup – Improves readability or maintainability without changing functionality.
  • 📝 Documentation update – Changes to README, AppName.md, CONTRIBUTING.md, or other docs.

💥 Breaking Change Advisory (only if you checked "Breaking change")


🤖 AI Assistance (X in brackets)

If you used an AI tool (GitHub Copilot, Claude, ChatGPT, etc.) to write or generate any scripts in this PR, you must confirm compliance below.
Select exactly one option.

  • No AI used – Scripts were written without AI assistance.
  • AI was used – I confirm the scripts were built using AGENTS.md and .github/agents/pve-script-creator.agent.md as guidance, and the output has been reviewed and corrected to match those guidelines.

core unpacks a compressed single binary since #248; the manual gunzip then failed on install and update.
@MickLesk
MickLesk requested a review from a team as a code owner November 14, 2026 18:06
@github-actions github-actions Bot added bugfix update script A change that updates a script labels Nov 14, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Try this branch

The engine and the scripts resolve independently, so this runs the changed
ct/ and install/ scripts against the production engine:

export COMMUNITY_SCRIPTS_URL=https://raw.githubusercontent.com/community-scripts/ProxmoxVE/fix/goatcounter-singlefile-unpack
bash -c "$(curl -fsSL "$COMMUNITY_SCRIPTS_URL/ct/goatcounter.sh")"

Both lines are needed. Without COMMUNITY_SCRIPTS_URL the engine falls back to
main, so curling the branch URL on its own gives you the ct/ script from
this PR and the install/ script from main. Frequently the one you meant to test.

The same command works on an Incus host: the engine detects the platform and
loads the matching backend, while the scripts still come from this branch.

Useful while testing

dev_mode=net logs every fetch with status and URL, which is the quickest way
to confirm the branch is really being used. dev_mode=keep stops a failed
build from deleting the container along with the evidence.

export COMMUNITY_SCRIPTS_URL=https://raw.githubusercontent.com/community-scripts/ProxmoxVE/fix/goatcounter-singlefile-unpack
dev_mode=net,keep bash -c "$(curl -fsSL "$COMMUNITY_SCRIPTS_URL/ct/goatcounter.sh")"

@github-actions

Copy link
Copy Markdown
Contributor

Proxmox script test

@MickLesk ⚠️ 2/3 passed, 1 could not be tested because of a problem with the test setup (not the PR) at 921fa1d

Script Platform Install Update Duration Detail
ct/goatcounter.sh pve ✅ ✅ 6m41s http://10.99.0.172:8080 → 200
ct/goatcounter.sh incus ✅ ✅ 3m07s http://10.98.0.108:8080 → 200
ct/goatcounter.sh arm64 ✅ ✅ 2m55s http://10.98.0.131:8080 → 200
ct/goatcounter.sh pve · upgrade ⚠️ – 3m09s the install before this PR (community-scripts/ProxmoxVE@​7d269d5) failed, so the upgrade was not tested: install script exited 1: [2026-11-14 19:18:26] [ERROR] in line 19: exit code 1 (gunzip exited w

ARM64 (information only, not counted): 1/1 passed.

upgrade: installed from the base branch as it is now, then updated with this PR, as a user who installed before the merge would.

📊 Resources
Script Platform Usage
ct/goatcounter.sh pve disk 0.7 of 2 GB · RAM at rest 60 of 512 MB · OOM kills 0
ct/goatcounter.sh incus disk 0.5 of 2 GB · RAM at rest 58 of 512 MB · OOM kills 0
ct/goatcounter.sh arm64 disk 0.8 of 2 GB · RAM at rest 57 of 512 MB · OOM kills 0
ct/goatcounter.sh pve · upgrade disk 0.8 of 2 GB · RAM at rest 12 of 512 MB · OOM kills 0
📸 ct/goatcounter.sh (pve) — http://10.99.0.172:8080: after install / after update

Screenshot of ct/goatcounter.sh Screenshot of ct/goatcounter.sh

📸 ct/goatcounter.sh (incus) — http://10.98.0.108:8080: after install / after update

Screenshot of ct/goatcounter.sh Screenshot of ct/goatcounter.sh

📸 ct/goatcounter.sh (arm64) — http://10.98.0.131:8080: after install / after update

Screenshot of ct/goatcounter.sh Screenshot of ct/goatcounter.sh

📄 ct/goatcounter.sh (pve) — install log (893 lines)
… 633 earlier lines cut, the full log is in the run artifacts
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 20284 files and directories currently installed.)
Preparing to unpack .../archives/apt_3.0.4_amd64.deb ...
Unpacking apt (3.0.4) over (3.0.3) ...
Setting up apt (3.0.4) ...
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 20284 files and directories currently installed.)
Preparing to unpack .../apt-utils_3.0.4_amd64.deb ...
Unpacking apt-utils (3.0.4) over (3.0.3) ...
Preparing to unpack .../libc-bin_2.41-12+deb13u4_amd64.deb ...
Unpacking libc-bin (2.41-12+deb13u4) over (2.41-12+deb13u3) ...
Setting up libc-bin (2.41-12+deb13u4) ...
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 20284 files and directories currently installed.)
Preparing to unpack .../login_1%3a4.16.0-2+really2.41.5-0+deb13u1_amd64.deb ...
Unpacking login (1:4.16.0-2+really2.41.5-0+deb13u1) over (1:4.16.0-2+really2.41-5) ...
Preparing to unpack .../logsave_1.47.2-3+b12_amd64.deb ...
Unpacking logsave (1.47.2-3+b12) over (1.47.2-3+b11) ...
Preparing to unpack .../libext2fs2t64_1.47.2-3+b12_amd64.deb ...
Leaving 'diversion of /lib/x86_64-linux-gnu/libe2p.so.2 to /lib/x86_64-linux-gnu/libe2p.so.2.usr-is-merged by libext2fs2t64'
Leaving 'diversion of /lib/x86_64-linux-gnu/libe2p.so.2.3 to /lib/x86_64-linux-gnu/libe2p.so.2.3.usr-is-merged by libext2fs2t64'
Leaving 'diversion of /lib/x86_64-linux-gnu/libext2fs.so.2 to /lib/x86_64-linux-gnu/libext2fs.so.2.usr-is-merged by libext2fs2t64'
Leaving 'diversion of /lib/x86_64-linux-gnu/libext2fs.so.2.4 to /lib/x86_64-linux-gnu/libext2fs.so.2.4.usr-is-merged by libext2fs2t64'
Unpacking libext2fs2t64:amd64 (1.47.2-3+b12) over (1.47.2-3+b11) ...
Setting up libext2fs2t64:amd64 (1.47.2-3+b12) ...
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 20286 files and directories currently installed.)
Preparing to unpack .../0-e2fsprogs_1.47.2-3+b12_amd64.deb ...
Unpacking e2fsprogs (1.47.2-3+b12) over (1.47.2-3+b11) ...
Preparing to unpack .../1-libexpat1_2.9.0-1~deb13u1_amd64.deb ...
Unpacking libexpat1:amd64 (2.9.0-1~deb13u1) over (2.7.1-2) ...
Preparing to unpack .../2-postfix_3.10.13-0+deb13u1_amd64.deb ...
Unpacking postfix (3.10.13-0+deb13u1) over (3.10.12-0+deb13u2) ...
Preparing to unpack .../3-python3.13_3.13.5-2+deb13u5_amd64.deb ...
Unpacking python3.13 (3.13.5-2+deb13u5) over (3.13.5-2+deb13u3) ...
Preparing to unpack .../4-libpython3.13-stdlib_3.13.5-2+deb13u5_amd64.deb ...
Unpacking libpython3.13-stdlib:amd64 (3.13.5-2+deb13u5) over (3.13.5-2+deb13u3) ...
Preparing to unpack .../5-python3.13-minimal_3.13.5-2+deb13u5_amd64.deb ...
Unpacking python3.13-minimal (3.13.5-2+deb13u5) over (3.13.5-2+deb13u3) ...
Preparing to unpack .../6-libpython3.13-minimal_3.13.5-2+deb13u5_amd64.deb ...
Unpacking libpython3.13-minimal:amd64 (3.13.5-2+deb13u5) over (3.13.5-2+deb13u3) ...
Preparing to unpack .../7-tzdata_2026f-0+deb13u1_all.deb ...
Unpacking tzdata (2026f-0+deb13u1) over (2026b-0+deb13u1) ...
Preparing to unpack .../8-libcap2_1%3a2.75-10+deb13u1+b3_amd64.deb ...
Unpacking libcap2:amd64 (1:2.75-10+deb13u1+b3) over (1:2.75-10+deb13u1+b1) ...
Setting up libcap2:amd64 (1:2.75-10+deb13u1+b3) ...
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 20286 files and directories currently installed.)
Preparing to unpack .../libpcre2-8-0_10.46-1~deb13u3_amd64.deb ...
Unpacking libpcre2-8-0:amd64 (10.46-1~deb13u3) over (10.46-1~deb13u1) ...
Setting up libpcre2-8-0:amd64 (10.46-1~deb13u3) ...
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 20286 files and directories currently installed.)
Preparing to unpack .../00-dhcpcd-base_1%3a10.1.0-11+deb13u4_amd64.deb ...
Unpacking dhcpcd-base (1:10.1.0-11+deb13u4) over (1:10.1.0-11+deb13u3) ...
Preparing to unpack .../01-vim-tiny_2%3a9.1.1230-2+deb13u2_amd64.deb ...
Unpacking vim-tiny (2:9.1.1230-2+deb13u2) over (2:9.1.1230-2) ...
Preparing to unpack .../02-vim-common_2%3a9.1.1230-2+deb13u2_all.deb ...
Unpacking vim-common (2:9.1.1230-2+deb13u2) over (2:9.1.1230-2) ...
Preparing to unpack .../03-bind9-dnsutils_1%3a9.20.30-1~deb13u1_amd64.deb ...
Unpacking bind9-dnsutils (1:9.20.30-1~deb13u1) over (1:9.20.23-1~deb13u1) ...
Preparing to unpack .../04-bind9-host_1%3a9.20.30-1~deb13u1_amd64.deb ...
Unpacking bind9-host (1:9.20.30-1~deb13u1) over (1:9.20.23-1~deb13u1) ...
Preparing to unpack .../05-bind9-libs_1%3a9.20.30-1~deb13u1_amd64.deb ...
Unpacking bind9-libs:amd64 (1:9.20.30-1~deb13u1) over (1:9.20.23-1~deb13u1) ...
Preparing to unpack .../06-openssl_3.5.7-1~deb13u3_amd64.deb ...
Unpacking openssl (3.5.7-1~deb13u3) over (3.5.6-1~deb13u2) ...
Preparing to unpack .../07-ca-certificates_20250419+deb13u1_all.deb ...
Unpacking ca-certificates (20250419+deb13u1) over (20250419) ...
Preparing to unpack .../08-libc-l10n_2.41-12+deb13u4_all.deb ...
Unpacking libc-l10n (2.41-12+deb13u4) over (2.41-12+deb13u3) ...
Preparing to unpack .../09-locales_2.41-12+deb13u4_all.deb ...
Unpacking locales (2.41-12+deb13u4) over (2.41-12+deb13u3) ...
Preparing to unpack .../10-xz-utils_5.8.1-1+deb13u2_amd64.deb ...
Unpacking xz-utils (5.8.1-1+deb13u2) over (5.8.1-1+deb13u1) ...
Preparing to unpack .../11-libcap2-bin_1%3a2.75-10+deb13u1+b3_amd64.deb ...
Unpacking libcap2-bin (1:2.75-10+deb13u1+b3) over (1:2.75-10+deb13u1+b1) ...
Preparing to unpack .../12-libcom-err2_1.47.2-3+b12_amd64.deb ...
Unpacking libcom-err2:amd64 (1.47.2-3+b12) over (1.47.2-3+b11) ...
Preparing to unpack .../13-libss2_1.47.2-3+b12_amd64.deb ...
Unpacking libss2:amd64 (1.47.2-3+b12) over (1.47.2-3+b11) ...
Setting up libexpat1:amd64 (2.9.0-1~deb13u1) ...
Setting up libc-l10n (2.41-12+deb13u4) ...
Setting up apt-utils (3.0.4) ...
Setting up bsdextrautils (2.41.5-0+deb13u1) ...
Setting up bind9-libs:amd64 (1:9.20.30-1~deb13u1) ...
Setting up libcom-err2:amd64 (1.47.2-3+b12) ...
Setting up locales (2.41-12+deb13u4) ...
Generating locales (this might take a while)...
  C.UTF-8... done
  en_SC.UTF-8... done
  es_EC.UTF-8... done
Generation complete.
Setting up tzdata (2026f-0+deb13u1) ...
Current default time zone: 'Europe/Vienna'
Local time is now:      Sat Nov 14 19:09:47 CET 2026.
Universal Time is now:  Sat Nov 14 18:09:47 UTC 2026.
Run 'dpkg-reconfigure tzdata' if you wish to change it.
Setting up libcap2-bin (1:2.75-10+deb13u1+b3) ...
Setting up libpython3.13-minimal:amd64 (3.13.5-2+deb13u5) ...
Setting up vim-common (2:9.1.1230-2+deb13u2) ...
Setting up xz-utils (5.8.1-1+deb13u2) ...
Setting up libss2:amd64 (1.47.2-3+b12) ...
Setting up dhcpcd-base (1:10.1.0-11+deb13u4) ...
Setting up logsave (1.47.2-3+b12) ...
Setting up libfdisk1:amd64 (2.41.5-0+deb13u1) ...
Setting up postfix (3.10.13-0+deb13u1) ...
Postfix (main.cf) configuration was not modified by debconf.  If you need to 
make changes, edit /etc/postfix/main.cf (and others) as needed.  To view 
Postfix configuration values, see postconf(1).
After modifying main.cf, be sure to run 'systemctl reload postfix'.
Setting up mount (2.41.5-0+deb13u1) ...
Setting up perl-modules-5.40 (5.40.1-6+deb13u1) ...
Setting up python3.13-minimal (3.13.5-2+deb13u5) ...
Setting up bind9-host (1:9.20.30-1~deb13u1) ...
Setting up openssl (3.5.7-1~deb13u3) ...
Setting up libpython3.13-stdlib:amd64 (3.13.5-2+deb13u5) ...
Setting up util-linux-extra (2.41.5-0+deb13u1) ...
Setting up login (1:4.16.0-2+really2.41.5-0+deb13u1) ...
Setting up python3.13 (3.13.5-2+deb13u5) ...
Setting up e2fsprogs (1.47.2-3+b12) ...
Setting up vim-tiny (2:9.1.1230-2+deb13u2) ...
Setting up fdisk (2.41.5-0+deb13u1) ...
Setting up libperl5.40:amd64 (5.40.1-6+deb13u1) ...
Setting up ca-certificates (20250419+deb13u1) ...
Updating certificates in /etc/ssl/certs...
rehash: warning: skipping ca-certificates.crt, it does not contain exactly one certificate or CRL
0 added, 2 removed; done.
Setting up perl (5.40.1-6+deb13u1) ...
Setting up bind9-dnsutils (1:9.20.30-1~deb13u1) ...
Processing triggers for libc-bin (2.41-12+deb13u4) ...
Processing triggers for systemd (257.13-1~deb13u1) ...
Processing triggers for man-db (2.13.1-1) ...
Processing triggers for debianutils (5.23.2) ...
Processing triggers for mailcap (3.74) ...
Processing triggers for postfix (3.10.13-0+deb13u1) ...
Restarting postfix
Processing triggers for ca-certificates (20250419+deb13u1) ...
Updating certificates in /etc/ssl/certs...
0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...
done.
[2026-11-14 19:10:08] [OK] Updated Container OS
[2026-11-14 19:10:12] [INFO] Fetching github release: goatcounter (2.7.0)
[2026-11-14 19:10:26] [OK] Deployed: goatcounter (2.7.0)
[2026-11-14 19:10:26] [INFO] Configuring GoatCounter
[2026-11-14 19:10:28] [OK] Configured GoatCounter
[2026-11-14 19:10:28] [INFO] Creating Service
[2026-11-14 19:10:29] [OK] Created Service
[2026-11-14 19:10:29] [INFO] Customizing Container
[2026-11-14 19:10:31] [OK] Customized Container
[2026-11-14 19:10:31] [INFO] Cleaning up
Reading package lists...
Building dependency tree...
Reading state information...
Summary:
  Upgrading: 0, Installing: 0, Removing: 0, Not Upgrading: 0
[2026-11-14 19:10:40] [OK] Cleaned
🔄 ct/goatcounter.sh (pve) — update log (21 lines)
   ______            __  ______                  __           
  / ____/___  ____ _/ /_/ ____/___  __  ______  / /____  _____
 / / __/ __ \/ __ `/ __/ /   / __ \/ / / / __ \/ __/ _ \/ ___/
/ /_/ / /_/ / /_/ / /_/ /___/ /_/ / /_/ / / / / /_/  __/ /    
\____/\____/\__,_/\__/\____/\____/\__,_/_/ /_/\__/\___/_/     
   ______            __  ______                  __           
  / ____/___  ____ _/ /_/ ____/___  __  ______  / /____  _____
 / / __/ __ \/ __ `/ __/ /   / __ \/ / / / __ \/ __/ _ \/ ___/
/ /_/ / /_/ / /_/ / /_/ /___/ /_/ / /_/ / / / / /_/  __/ /    
\____/\____/\__,_/\__/\____/\____/\__,_/_/ /_/\__/\___/_/     
  ⏳   Checking for update: goatcounter
  ✔️  Update available: goatcounter 2.7.0-dev -> 2.7.0
  ⏳   Stopping GoatCounter
  ✔️  Stopped GoatCounter
  ⏳   Fetching github release: goatcounter (2.7.0)
  ✔️  Deployed: goatcounter (2.7.0)
  ⏳   Starting GoatCounter
  ✔️  Started GoatCounter
  ✔️  Updated successfully!
  ⏳   Cleaning up
  ✔️  Cleaned
🔁 ct/goatcounter.sh (pve) — second update log
   ______            __  ______                  __           
  / ____/___  ____ _/ /_/ ____/___  __  ______  / /____  _____
 / / __/ __ \/ __ `/ __/ /   / __ \/ / / / __ \/ __/ _ \/ ___/
/ /_/ / /_/ / /_/ / /_/ /___/ /_/ / /_/ / / / / /_/  __/ /    
\____/\____/\__,_/\__/\____/\____/\__,_/_/ /_/\__/\___/_/     
   ______            __  ______                  __           
  / ____/___  ____ _/ /_/ ____/___  __  ______  / /____  _____
 / / __/ __ \/ __ `/ __/ /   / __ \/ / / / __ \/ __/ _ \/ ___/
/ /_/ / /_/ / /_/ / /_/ /___/ /_/ / /_/ / / / / /_/  __/ /    
\____/\____/\__,_/\__/\____/\____/\__,_/_/ /_/\__/\___/_/     
  ⏳   Checking for update: goatcounter
  ✔️  No update available: goatcounter (2.7.0)
  ⏳   Cleaning up
  ✔️  Cleaned
📄 ct/goatcounter.sh (incus) — install log (32 lines)
[2026-11-14 19:15:00] [INFO] Setting up Container OS
[2026-11-14 19:15:00] [OK] Set up Container OS
[2026-11-14 19:15:00] [OK] Network Connected: 10.98.0.108
[2026-11-14 19:15:01] [OK] IPv4 Internet Connected
[2026-11-14 19:15:01] No IPv6 Internet (IPv4 is enough)
[2026-11-14 19:15:01] [OK] Git DNS: github.com:(✔️ ) raw.githubusercontent.com:(✔️ ) api.github.com:(✔️ )
[2026-11-14 19:15:01] [INFO] Updating Container OS
Hit:1 http://deb.debian.org/debian trixie InRelease
Hit:2 http://deb.debian.org/debian trixie-updates InRelease
Hit:3 http://deb.debian.org/debian-security trixie-security InRelease
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
Calculating upgrade...
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
[2026-11-14 19:15:03] [OK] Updated Container OS
[2026-11-14 19:15:04] [INFO] Fetching github release: goatcounter (2.7.0)
[2026-11-14 19:15:05] [OK] Deployed: goatcounter (2.7.0)
[2026-11-14 19:15:05] [INFO] Configuring GoatCounter
[2026-11-14 19:15:05] [OK] Configured GoatCounter
[2026-11-14 19:15:05] [INFO] Creating Service
[2026-11-14 19:15:06] [OK] Created Service
[2026-11-14 19:15:06] [INFO] Customizing Container
[2026-11-14 19:15:08] [OK] Customized Container
[2026-11-14 19:15:08] [INFO] Cleaning up
Reading package lists...
Building dependency tree...
Reading state information...
Summary:
  Upgrading: 0, Installing: 0, Removing: 0, Not Upgrading: 0
[2026-11-14 19:15:09] [OK] Cleaned
🔄 ct/goatcounter.sh (incus) — update log (20 lines)
   ______            __  ______                  __           
  / ____/___  ____ _/ /_/ ____/___  __  ______  / /____  _____
 / / __/ __ \/ __ `/ __/ /   / __ \/ / / / __ \/ __/ _ \/ ___/
/ /_/ / /_/ / /_/ / /_/ /___/ /_/ / /_/ / / / / /_/  __/ /    
\____/\____/\__,_/\__/\____/\____/\__,_/_/ /_/\__/\___/_/     
10.98.0.108
   ______            __  ______                  __           
  / ____/___  ____ _/ /_/ ____/___  __  ______  / /____  _____
 / / __/ __ \/ __ `/ __/ /   / __ \/ / / / __ \/ __/ _ \/ ___/
/ /_/ / /_/ / /_/ / /_/ /___/ /_/ / /_/ / / / / /_/  __/ /    
\____/\____/\__,_/\__/\____/\____/\__,_/_/ /_/\__/\___/_/     
  ⏳   Checking for update: goatcounter
  ✔️  Update available: goatcounter 2.7.0-dev -> 2.7.0
  ⏳   Stopping GoatCounter
  ✔️  Stopped GoatCounter
  ⏳   Fetching github release: goatcounter (2.7.0)
  ✔️  Deployed: goatcounter (2.7.0)
  ⏳   Starting GoatCounter
  ✔️  Started GoatCounter
  ✔️  Updated successfully!
🔁 ct/goatcounter.sh (incus) — second update log
   ______            __  ______                  __           
  / ____/___  ____ _/ /_/ ____/___  __  ______  / /____  _____
 / / __/ __ \/ __ `/ __/ /   / __ \/ / / / __ \/ __/ _ \/ ___/
/ /_/ / /_/ / /_/ / /_/ /___/ /_/ / /_/ / / / / /_/  __/ /    
\____/\____/\__,_/\__/\____/\____/\__,_/_/ /_/\__/\___/_/     
10.98.0.108
   ______            __  ______                  __           
  / ____/___  ____ _/ /_/ ____/___  __  ______  / /____  _____
 / / __/ __ \/ __ `/ __/ /   / __ \/ / / / __ \/ __/ _ \/ ___/
/ /_/ / /_/ / /_/ / /_/ /___/ /_/ / /_/ / / / / /_/  __/ /    
\____/\____/\__,_/\__/\____/\____/\__,_/_/ /_/\__/\___/_/     
  ⏳   Checking for update: goatcounter
  ✔️  No update available: goatcounter (2.7.0)
📄 ct/goatcounter.sh (arm64) — install log (32 lines)
[2026-11-14 18:09:36] [INFO] Setting up Container OS
[2026-11-14 18:09:36] [OK] Set up Container OS
[2026-11-14 18:09:36] [OK] Network Connected: 10.98.0.131
[2026-11-14 18:09:40] [OK] IPv4 Internet Connected (TCP reachable; ICMP is filtered)
[2026-11-14 18:09:40] No IPv6 Internet (IPv4 is enough)
[2026-11-14 18:09:40] [OK] Git DNS: github.com:(✔️ ) raw.githubusercontent.com:(✔️ ) api.github.com:(✔️ )
[2026-11-14 18:09:41] [INFO] Updating Container OS
Hit:1 http://deb.debian.org/debian trixie InRelease
Hit:2 http://deb.debian.org/debian trixie-updates InRelease
Hit:3 http://deb.debian.org/debian-security trixie-security InRelease
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
Calculating upgrade...
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
[2026-11-14 18:09:42] [OK] Updated Container OS
[2026-11-14 18:09:42] [INFO] Fetching github release: goatcounter (2.7.0)
[2026-11-14 18:09:43] [OK] Deployed: goatcounter (2.7.0)
[2026-11-14 18:09:43] [INFO] Configuring GoatCounter
[2026-11-14 18:09:43] [OK] Configured GoatCounter
[2026-11-14 18:09:43] [INFO] Creating Service
[2026-11-14 18:09:43] [OK] Created Service
[2026-11-14 18:09:43] [INFO] Customizing Container
[2026-11-14 18:09:44] [OK] Customized Container
[2026-11-14 18:09:44] [INFO] Cleaning up
Reading package lists...
Building dependency tree...
Reading state information...
Summary:
  Upgrading: 0, Installing: 0, Removing: 0, Not Upgrading: 0
[2026-11-14 18:09:45] [OK] Cleaned
🔄 ct/goatcounter.sh (arm64) — update log (20 lines)
   ______            __  ______                  __           
  / ____/___  ____ _/ /_/ ____/___  __  ______  / /____  _____
 / / __/ __ \/ __ `/ __/ /   / __ \/ / / / __ \/ __/ _ \/ ___/
/ /_/ / /_/ / /_/ / /_/ /___/ /_/ / /_/ / / / / /_/  __/ /    
\____/\____/\__,_/\__/\____/\____/\__,_/_/ /_/\__/\___/_/     
10.98.0.131
   ______            __  ______                  __           
  / ____/___  ____ _/ /_/ ____/___  __  ______  / /____  _____
 / / __/ __ \/ __ `/ __/ /   / __ \/ / / / __ \/ __/ _ \/ ___/
/ /_/ / /_/ / /_/ / /_/ /___/ /_/ / /_/ / / / / /_/  __/ /    
\____/\____/\__,_/\__/\____/\____/\__,_/_/ /_/\__/\___/_/     
  ⏳   Checking for update: goatcounter
  ✔️  Update available: goatcounter 2.7.0-dev -> 2.7.0
  ⏳   Stopping GoatCounter
  ✔️  Stopped GoatCounter
  ⏳   Fetching github release: goatcounter (2.7.0)
  ✔️  Deployed: goatcounter (2.7.0)
  ⏳   Starting GoatCounter
  ✔️  Started GoatCounter
  ✔️  Updated successfully!
🔁 ct/goatcounter.sh (arm64) — second update log
   ______            __  ______                  __           
  / ____/___  ____ _/ /_/ ____/___  __  ______  / /____  _____
 / / __/ __ \/ __ `/ __/ /   / __ \/ / / / __ \/ __/ _ \/ ___/
/ /_/ / /_/ / /_/ / /_/ /___/ /_/ / /_/ / / / / /_/  __/ /    
\____/\____/\__,_/\__/\____/\____/\__,_/_/ /_/\__/\___/_/     
10.98.0.131
   ______            __  ______                  __           
  / ____/___  ____ _/ /_/ ____/___  __  ______  / /____  _____
 / / __/ __ \/ __ `/ __/ /   / __ \/ / / / __ \/ __/ _ \/ ___/
/ /_/ / /_/ / /_/ / /_/ /___/ /_/ / /_/ / / / / /_/  __/ /    
\____/\____/\__,_/\__/\____/\____/\__,_/_/ /_/\__/\___/_/     
  ⏳   Checking for update: goatcounter
  ✔️  No update available: goatcounter (2.7.0)
⚠️ ct/goatcounter.sh (pve · upgrade) — build log
  ────────────────────────────────────────────────────────────
   ______            __  ______                  __           
  / ____/___  ____ _/ /_/ ____/___  __  ______  / /____  _____
 / / __/ __ \/ __ `/ __/ /   / __ \/ / / / __ \/ __/ _ \/ ___/
/ /_/ / /_/ / /_/ / /_/ /___/ /_/ / /_/ / / / / /_/  __/ /    
\____/\____/\__,_/\__/\____/\____/\__,_/_/ /_/\__/\___/_/     
   ______            __  ______                  __           
  / ____/___  ____ _/ /_/ ____/___  __  ______  / /____  _____
 / / __/ __ \/ __ `/ __/ /   / __ \/ / / / __ \/ __/ _ \/ ___/
/ /_/ / /_/ / /_/ / /_/ /___/ /_/ / /_/ / / / / /_/  __/ /    
\____/\____/\__,_/\__/\____/\____/\__,_/_/ /_/\__/\___/_/     
  ⚙️  Using Default Settings on node pve-ci-2
  💡  PVE Version 9.2.26 (Kernel: 7.0.14-28-pve)
  🔀  Scripts source: http://10.99.0.1:18080/43624767193-1-pve-ct-goatcounter-default-upgrade-base
  🆔  Container ID: 9050
  🖥️  Operating System: debian (13)
  📦  Container Type: Unprivileged
  💾  Disk Size: 2 GB
  🧠  CPU Cores: 1
  🛠️  RAM Size: 512 MiB
  🚀  Creating a GoatCounter LXC using the above default settings
  ⏳   Validating storage 'local'
  ✔️  Storage 'local' (dir) validated - Free: 223.6GB  Used: 12.3GB
  ⏳   Validating template storage 'local'
  ✔️  Template storage 'local' validated - Free: 223.6GB  Used: 12.3GB
  ⏳   Searching for template 'debian-13'
  ✔️  Template search completed
  ✔️  Template debian-13-standard_13.6-1_amd64.tar.zst [local]
  ⏳   Creating container
  ✔️  Container 9050 created
  ⏳   Starting container
  ✔️  Container started
  ⏳   Waiting for the container network
  ✔️  Network reachable (10.99.0.122)
  ⏳   Customizing container
  ✔️  Container customized
  ⏳   Setting up Container OS
  ✔️  Set up Container OS
  ✔️  Network Connected: 10.99.0.122
  ✔️  IPv4 Internet Connected
  ℹ️  No IPv6 Internet (IPv4 is enough)
  ✔️  Git DNS: github.com:(✔️ ) raw.githubusercontent.com:(✔️ ) api.github.com:(✔️ )
  ⏳   Updating Container OS
  ✔️  Updated Container OS
  ⏳   Fetching github release: goatcounter (2.7.0)
  ✔️  Deployed: goatcounter (2.7.0)
gzip: /opt/goatcounter/goatcounter.gz: not in gzip format
  ✖️  in line 19: exit code 1 (gunzip exited with status 1): while executing command gunzip -f /opt/goatcounter/goatcounter.gz
  --- Output of the failing step ---
[2026-11-14 19:18:26] [OK] Deployed: goatcounter (2.7.0)
[2026-11-14 19:18:26] [ERROR] in line 19: exit code 1 (gunzip exited with status 1): while executing command gunzip -f /opt/goatcounter/goatcounter.gz
  -----------------------------------
  ✖️  Installation failed in container 9050 (exit code: 1)
  📋  Installation log: /tmp/goatcounter-9050-40610d1a.log
  🔍  🔧 [DEV] Keep mode active - container 9050 preserved
  ✔️  Completed Successfully!
  🚀  GoatCounter setup has been successfully initialized!
  💡  Access it using the following URL:
  🌐  http://10.99.0.122:8080
  💡  Admin login: /opt/goatcounter_data/.env (inside the container)
📄 ct/goatcounter.sh (pve · upgrade) — install log (881 lines)
… 685 earlier lines cut, the full log is in the run artifacts
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 20284 files and directories currently installed.)
Preparing to unpack .../login_1%3a4.16.0-2+really2.41.5-0+deb13u1_amd64.deb ...
Unpacking login (1:4.16.0-2+really2.41.5-0+deb13u1) over (1:4.16.0-2+really2.41-5) ...
Preparing to unpack .../logsave_1.47.2-3+b12_amd64.deb ...
Unpacking logsave (1.47.2-3+b12) over (1.47.2-3+b11) ...
Preparing to unpack .../libext2fs2t64_1.47.2-3+b12_amd64.deb ...
Leaving 'diversion of /lib/x86_64-linux-gnu/libe2p.so.2 to /lib/x86_64-linux-gnu/libe2p.so.2.usr-is-merged by libext2fs2t64'
Leaving 'diversion of /lib/x86_64-linux-gnu/libe2p.so.2.3 to /lib/x86_64-linux-gnu/libe2p.so.2.3.usr-is-merged by libext2fs2t64'
Leaving 'diversion of /lib/x86_64-linux-gnu/libext2fs.so.2 to /lib/x86_64-linux-gnu/libext2fs.so.2.usr-is-merged by libext2fs2t64'
Leaving 'diversion of /lib/x86_64-linux-gnu/libext2fs.so.2.4 to /lib/x86_64-linux-gnu/libext2fs.so.2.4.usr-is-merged by libext2fs2t64'
Unpacking libext2fs2t64:amd64 (1.47.2-3+b12) over (1.47.2-3+b11) ...
Setting up libext2fs2t64:amd64 (1.47.2-3+b12) ...
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 20286 files and directories currently installed.)
Preparing to unpack .../0-e2fsprogs_1.47.2-3+b12_amd64.deb ...
Unpacking e2fsprogs (1.47.2-3+b12) over (1.47.2-3+b11) ...
Preparing to unpack .../1-libexpat1_2.9.0-1~deb13u1_amd64.deb ...
Unpacking libexpat1:amd64 (2.9.0-1~deb13u1) over (2.7.1-2) ...
Preparing to unpack .../2-postfix_3.10.13-0+deb13u1_amd64.deb ...
Unpacking postfix (3.10.13-0+deb13u1) over (3.10.12-0+deb13u2) ...
Preparing to unpack .../3-python3.13_3.13.5-2+deb13u5_amd64.deb ...
Unpacking python3.13 (3.13.5-2+deb13u5) over (3.13.5-2+deb13u3) ...
Preparing to unpack .../4-libpython3.13-stdlib_3.13.5-2+deb13u5_amd64.deb ...
Unpacking libpython3.13-stdlib:amd64 (3.13.5-2+deb13u5) over (3.13.5-2+deb13u3) ...
Preparing to unpack .../5-python3.13-minimal_3.13.5-2+deb13u5_amd64.deb ...
Unpacking python3.13-minimal (3.13.5-2+deb13u5) over (3.13.5-2+deb13u3) ...
Preparing to unpack .../6-libpython3.13-minimal_3.13.5-2+deb13u5_amd64.deb ...
Unpacking libpython3.13-minimal:amd64 (3.13.5-2+deb13u5) over (3.13.5-2+deb13u3) ...
Preparing to unpack .../7-tzdata_2026f-0+deb13u1_all.deb ...
Unpacking tzdata (2026f-0+deb13u1) over (2026b-0+deb13u1) ...
Preparing to unpack .../8-libcap2_1%3a2.75-10+deb13u1+b3_amd64.deb ...
Unpacking libcap2:amd64 (1:2.75-10+deb13u1+b3) over (1:2.75-10+deb13u1+b1) ...
Setting up libcap2:amd64 (1:2.75-10+deb13u1+b3) ...
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 20286 files and directories currently installed.)
Preparing to unpack .../libpcre2-8-0_10.46-1~deb13u3_amd64.deb ...
Unpacking libpcre2-8-0:amd64 (10.46-1~deb13u3) over (10.46-1~deb13u1) ...
Setting up libpcre2-8-0:amd64 (10.46-1~deb13u3) ...
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 20286 files and directories currently installed.)
Preparing to unpack .../00-dhcpcd-base_1%3a10.1.0-11+deb13u4_amd64.deb ...
Unpacking dhcpcd-base (1:10.1.0-11+deb13u4) over (1:10.1.0-11+deb13u3) ...
Preparing to unpack .../01-vim-tiny_2%3a9.1.1230-2+deb13u2_amd64.deb ...
Unpacking vim-tiny (2:9.1.1230-2+deb13u2) over (2:9.1.1230-2) ...
Preparing to unpack .../02-vim-common_2%3a9.1.1230-2+deb13u2_all.deb ...
Unpacking vim-common (2:9.1.1230-2+deb13u2) over (2:9.1.1230-2) ...
Preparing to unpack .../03-bind9-dnsutils_1%3a9.20.30-1~deb13u1_amd64.deb ...
Unpacking bind9-dnsutils (1:9.20.30-1~deb13u1) over (1:9.20.23-1~deb13u1) ...
Preparing to unpack .../04-bind9-host_1%3a9.20.30-1~deb13u1_amd64.deb ...
Unpacking bind9-host (1:9.20.30-1~deb13u1) over (1:9.20.23-1~deb13u1) ...
Preparing to unpack .../05-bind9-libs_1%3a9.20.30-1~deb13u1_amd64.deb ...
Unpacking bind9-libs:amd64 (1:9.20.30-1~deb13u1) over (1:9.20.23-1~deb13u1) ...
Preparing to unpack .../06-openssl_3.5.7-1~deb13u3_amd64.deb ...
Unpacking openssl (3.5.7-1~deb13u3) over (3.5.6-1~deb13u2) ...
Preparing to unpack .../07-ca-certificates_20250419+deb13u1_all.deb ...
Unpacking ca-certificates (20250419+deb13u1) over (20250419) ...
Preparing to unpack .../08-libc-l10n_2.41-12+deb13u4_all.deb ...
Unpacking libc-l10n (2.41-12+deb13u4) over (2.41-12+deb13u3) ...
Preparing to unpack .../09-locales_2.41-12+deb13u4_all.deb ...
Unpacking locales (2.41-12+deb13u4) over (2.41-12+deb13u3) ...
Preparing to unpack .../10-xz-utils_5.8.1-1+deb13u2_amd64.deb ...
Unpacking xz-utils (5.8.1-1+deb13u2) over (5.8.1-1+deb13u1) ...
Preparing to unpack .../11-libcap2-bin_1%3a2.75-10+deb13u1+b3_amd64.deb ...
Unpacking libcap2-bin (1:2.75-10+deb13u1+b3) over (1:2.75-10+deb13u1+b1) ...
Preparing to unpack .../12-libcom-err2_1.47.2-3+b12_amd64.deb ...
Unpacking libcom-err2:amd64 (1.47.2-3+b12) over (1.47.2-3+b11) ...
Preparing to unpack .../13-libss2_1.47.2-3+b12_amd64.deb ...
Unpacking libss2:amd64 (1.47.2-3+b12) over (1.47.2-3+b11) ...
Setting up libexpat1:amd64 (2.9.0-1~deb13u1) ...
Setting up libc-l10n (2.41-12+deb13u4) ...
Setting up apt-utils (3.0.4) ...
Setting up bsdextrautils (2.41.5-0+deb13u1) ...
Setting up bind9-libs:amd64 (1:9.20.30-1~deb13u1) ...
Setting up libcom-err2:amd64 (1.47.2-3+b12) ...
Setting up locales (2.41-12+deb13u4) ...
Generating locales (this might take a while)...
  C.UTF-8... done
  en_SC.UTF-8... done
  es_EC.UTF-8... done
Generation complete.
Setting up tzdata (2026f-0+deb13u1) ...
Current default time zone: 'Europe/Vienna'
Local time is now:      Sat Nov 14 19:18:07 CET 2026.
Universal Time is now:  Sat Nov 14 18:18:07 UTC 2026.
Run 'dpkg-reconfigure tzdata' if you wish to change it.
Setting up libcap2-bin (1:2.75-10+deb13u1+b3) ...
Setting up libpython3.13-minimal:amd64 (3.13.5-2+deb13u5) ...
Setting up vim-common (2:9.1.1230-2+deb13u2) ...
Setting up xz-utils (5.8.1-1+deb13u2) ...
Setting up libss2:amd64 (1.47.2-3+b12) ...
Setting up dhcpcd-base (1:10.1.0-11+deb13u4) ...
Setting up logsave (1.47.2-3+b12) ...
Setting up libfdisk1:amd64 (2.41.5-0+deb13u1) ...
Setting up postfix (3.10.13-0+deb13u1) ...
Postfix (main.cf) configuration was not modified by debconf.  If you need to 
make changes, edit /etc/postfix/main.cf (and others) as needed.  To view 
Postfix configuration values, see postconf(1).
After modifying main.cf, be sure to run 'systemctl reload postfix'.
Setting up mount (2.41.5-0+deb13u1) ...
Setting up perl-modules-5.40 (5.40.1-6+deb13u1) ...
Setting up python3.13-minimal (3.13.5-2+deb13u5) ...
Setting up bind9-host (1:9.20.30-1~deb13u1) ...
Setting up openssl (3.5.7-1~deb13u3) ...
Setting up libpython3.13-stdlib:amd64 (3.13.5-2+deb13u5) ...
Setting up util-linux-extra (2.41.5-0+deb13u1) ...
Setting up login (1:4.16.0-2+really2.41.5-0+deb13u1) ...
Setting up python3.13 (3.13.5-2+deb13u5) ...
Setting up e2fsprogs (1.47.2-3+b12) ...
Setting up vim-tiny (2:9.1.1230-2+deb13u2) ...
Setting up fdisk (2.41.5-0+deb13u1) ...
Setting up libperl5.40:amd64 (5.40.1-6+deb13u1) ...
Setting up ca-certificates (20250419+deb13u1) ...
Updating certificates in /etc/ssl/certs...
rehash: warning: skipping ca-certificates.crt, it does not contain exactly one certificate or CRL
0 added, 2 removed; done.
Setting up perl (5.40.1-6+deb13u1) ...
Setting up bind9-dnsutils (1:9.20.30-1~deb13u1) ...
Processing triggers for libc-bin (2.41-12+deb13u4) ...
Processing triggers for systemd (257.13-1~deb13u1) ...
Processing triggers for man-db (2.13.1-1) ...
Processing triggers for debianutils (5.23.2) ...
Processing triggers for mailcap (3.74) ...
Processing triggers for postfix (3.10.13-0+deb13u1) ...
Restarting postfix
Processing triggers for ca-certificates (20250419+deb13u1) ...
Updating certificates in /etc/ssl/certs...
0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...
done.
[2026-11-14 19:18:23] [OK] Updated Container OS
[2026-11-14 19:18:25] [INFO] Fetching github release: goatcounter (2.7.0)
[2026-11-14 19:18:26] [OK] Deployed: goatcounter (2.7.0)
[2026-11-14 19:18:26] [ERROR] in line 19: exit code 1 (gunzip exited with status 1): while executing command gunzip -f /opt/goatcounter/goatcounter.gz

Full logs: workflow run (artifacts result-*). Comment /test to build again.

@MickLesk
MickLesk merged commit d74706d into main Nov 14, 2026
11 of 12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bugfix update script A change that updates a script

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants