Private
Public Access
1
0
Commit Graph

19 Commits

Author SHA1 Message Date
8952589efd fix: align all non-Ubuntu packages with Debian baseline behavior
Some checks failed
CI/CD Pipeline / Code Format (push) Successful in 4s
CI/CD Pipeline / Clippy Lints (push) Successful in 44s
CI/CD Pipeline / All Unit Tests (push) Successful in 1m12s
CI/CD Pipeline / Security Audit (push) Successful in 5s
CI/CD Pipeline / Enrollment Tests (push) Successful in 1m15s
CI/CD Pipeline / Build Debian Package (push) Has been cancelled
CI/CD Pipeline / Build Debian Package (Ubuntu 22.04) (push) Has been cancelled
CI/CD Pipeline / Build Arch Package (push) Has been cancelled
CI/CD Pipeline / Build RPM Package (push) Has been cancelled
CI/CD Pipeline / Verify Enrollment CLI Flag (push) Has been cancelled
CI/CD Pipeline / Build Alpine Package (push) Has been cancelled
- Arch: remove system user creation, root:root ownership, fix $startdir path in PKGBUILD
- RPM: uncomment BuildRequires, add runtime deps (openssl-libs, ca-certificates), remove system user, root:root ownership
- Alpine: remove system user creation, root:root ownership, co-locate install script with APKBUILD
- All platforms now match Debian: no system user, root:root, create dirs, copy example configs, enable service
2026-05-20 02:01:52 +00:00
1af72deb16 fix: Arch build - install script filename must match PKGBUILD install= reference
All checks were successful
CI/CD Pipeline / Code Format (push) Successful in 3s
CI/CD Pipeline / Clippy Lints (push) Successful in 44s
CI/CD Pipeline / All Unit Tests (push) Successful in 1m12s
CI/CD Pipeline / Security Audit (push) Successful in 4s
CI/CD Pipeline / Enrollment Tests (push) Successful in 1m14s
CI/CD Pipeline / Verify Enrollment CLI Flag (push) Successful in 1m24s
CI/CD Pipeline / Build Arch Package (push) Successful in 2m53s
CI/CD Pipeline / Build Debian Package (Ubuntu 22.04) (push) Successful in 2m37s
CI/CD Pipeline / Build Debian Package (push) Successful in 2m39s
CI/CD Pipeline / Build Alpine Package (push) Successful in 4m11s
CI/CD Pipeline / Build RPM Package (push) Successful in 4m27s
2026-05-19 00:21:59 +00:00
653623b9f0 fix: FQDN resolution and display_name blank bug; fix: Arch/Alpine/RPM packages
Some checks failed
CI/CD Pipeline / Code Format (push) Failing after 2s
CI/CD Pipeline / Clippy Lints (push) Successful in 44s
CI/CD Pipeline / Enrollment Tests (push) Has been skipped
CI/CD Pipeline / All Unit Tests (push) Successful in 1m13s
CI/CD Pipeline / Build Debian Package (push) Has been skipped
CI/CD Pipeline / Build Debian Package (Ubuntu 22.04) (push) Has been skipped
CI/CD Pipeline / Build RPM Package (push) Has been skipped
CI/CD Pipeline / Build Alpine Package (push) Has been skipped
CI/CD Pipeline / Build Arch Package (push) Has been skipped
CI/CD Pipeline / Security Audit (push) Successful in 4s
CI/CD Pipeline / Verify Enrollment CLI Flag (push) Successful in 55s
Bug fixes:
- get_fqdn() now prioritizes 'hostname -f' (returns full FQDN) over /etc/hostname (returns short hostname)
- Added get_hostname() for short hostname extraction
- Added hostname field to EnrollmentRequest for manager display_name population
- Updated SPEC.md and API_DOCUMENTATION.md

Package fixes:
- Arch: Added linux-patch-api.install with post_install/upgrade/remove hooks, user creation, directory creation, config handling
- Alpine: Added linux-patch-api.apk-install with pre/post install/deinstall hooks, user creation, directory creation, config handling, missing config.yaml.example
- RPM: Dynamic version from Cargo.toml, %ghost %config(noreplace) for live configs, tarball exclusions, /var/log in %files
2026-05-18 23:51:00 +00:00
945febbe96 feat(enrollment): add route-based IP selection and fix package versioning for v1.1.5
Some checks failed
CI/CD Pipeline / Code Format (push) Failing after 2s
CI/CD Pipeline / Clippy Lints (push) Successful in 44s
CI/CD Pipeline / Enrollment Tests (push) Has been skipped
CI/CD Pipeline / All Unit Tests (push) Successful in 1m12s
CI/CD Pipeline / Build Debian Package (push) Has been skipped
CI/CD Pipeline / Build Debian Package (Ubuntu 22.04) (push) Has been skipped
CI/CD Pipeline / Build RPM Package (push) Has been skipped
CI/CD Pipeline / Build Alpine Package (push) Has been skipped
CI/CD Pipeline / Build Arch Package (push) Has been skipped
CI/CD Pipeline / Security Audit (push) Successful in 4s
CI/CD Pipeline / Verify Enrollment CLI Flag (push) Successful in 55s
2026-05-18 03:35:46 +00:00
2caf13b6a5 fix: properly commit build fixes that were never in 2774e02
Some checks failed
CI/CD Pipeline / Code Format (push) Successful in 1s
CI/CD Pipeline / Clippy Lints (push) Successful in 36s
CI/CD Pipeline / Unit Tests (push) Successful in 47s
CI/CD Pipeline / Security Audit (push) Successful in 5s
CI/CD Pipeline / Build Debian Package (push) Failing after 1m57s
CI/CD Pipeline / Build Arch Package (push) Failing after 1m46s
CI/CD Pipeline / Build Alpine Package (push) Failing after 3m8s
CI/CD Pipeline / Build RPM Package (push) Failing after 3m27s
CRITICAL: Previous commit 2774e02 did not include these fixes.

Debian (debian/rules):
- Use && to keep cargo build in same shell as . "$HOME/.cargo/env"
- Make runs each recipe line in a separate shell

Arch (build-arch.sh):
- Use << "EOF" heredoc with hardcoded path to prevent $pkgdir expansion
- $pkgdir must be literal for makepkg to expand at runtime

Alpine (build-alpine.sh):
- Copy signing public key to /etc/apk/keys/ BEFORE abuild
- Use || true on abuild because index update may fail but APK is still created
2026-04-27 01:52:56 +00:00
2774e02cde fix: resolve final build failures
Some checks failed
CI/CD Pipeline / Code Format (push) Successful in 3s
CI/CD Pipeline / Clippy Lints (push) Successful in 36s
CI/CD Pipeline / Unit Tests (push) Successful in 47s
CI/CD Pipeline / Security Audit (push) Successful in 4s
CI/CD Pipeline / Build Debian Package (push) Failing after 3s
CI/CD Pipeline / Build Arch Package (push) Failing after 1m43s
CI/CD Pipeline / Build RPM Package (push) Successful in 3m11s
CI/CD Pipeline / Build Alpine Package (push) Failing after 2m51s
debian/rules: Escape $HOME for make (use $$HOME)
  - Make interprets $H as variable, $$ escapes it

build-alpine.sh: Install signing public key
  - Copy .abuild/*.rsa.pub to /etc/apk/keys/
  - Fixes UNTRUSTED signature error on index update

build-arch.sh: Use /home/builduser/repo for all paths
  - PKGDIR=/home/builduser/repo/arch-package
  - WORKSPACE_DIR=/home/builduser/repo
  - Fixes permission denied on act cache path
2026-04-27 01:06:56 +00:00
93602db2f3 fix: resolve remaining build failures
Some checks failed
CI/CD Pipeline / Code Format (push) Successful in 4s
CI/CD Pipeline / Clippy Lints (push) Successful in 36s
CI/CD Pipeline / Unit Tests (push) Successful in 47s
CI/CD Pipeline / Security Audit (push) Successful in 4s
CI/CD Pipeline / Build Debian Package (push) Failing after 3s
CI/CD Pipeline / Build Arch Package (push) Failing after 1m46s
CI/CD Pipeline / Build Alpine Package (push) Failing after 2m55s
CI/CD Pipeline / Build RPM Package (push) Successful in 3m13s
debian/rules: Source cargo env before calling cargo
  - Add `. "$HOME/.cargo/env"` to override_dh_auto_build

build-alpine.sh: Use /home/builduser for all paths
  - PKGDIR=/home/builduser/apk-package (accessible by builduser)
  - WORKSPACE_DIR=/home/builduser (for APKBUILD package function)
  - Removed duplicate else line

build-arch.sh: Copy repo to accessible directory
  - Copy repo contents to /home/builduser/repo before makepkg
  - Run makepkg in /home/builduser/repo (not act cache path)
2026-04-27 00:57:03 +00:00
b74d5386d3 fix: resolve all build job failures
Some checks failed
CI/CD Pipeline / Code Format (push) Successful in 4s
CI/CD Pipeline / Clippy Lints (push) Successful in 37s
CI/CD Pipeline / Unit Tests (push) Successful in 47s
CI/CD Pipeline / Security Audit (push) Successful in 4s
CI/CD Pipeline / Build Debian Package (push) Failing after 3s
CI/CD Pipeline / Build Arch Package (push) Failing after 1m43s
CI/CD Pipeline / Build Alpine Package (push) Failing after 2m54s
CI/CD Pipeline / Build RPM Package (push) Successful in 3m10s
CI workflow (ci.yml):
- Proper YAML structure for all steps
- curl+tar checkout (act runners lack git)
- GITEATOKEN authentication for private repo access
- build-essential/gcc added to all jobs
- dpkg-buildpackage -d flag (skip apt dep check)

Build scripts:
- build-alpine.sh: Copy APKBUILD to /home/builduser before abuild
- build-arch.sh: Use REPO_DIR variable instead of $(pwd) in su commands
2026-04-27 00:37:51 +00:00
a4026a471a refactor: update CI for native per-OS runners
Some checks failed
CI/CD Pipeline / Code Format (push) Failing after 6s
CI/CD Pipeline / Clippy Lints (push) Failing after 11s
CI/CD Pipeline / Unit Tests (push) Failing after 1s
CI/CD Pipeline / Build Debian Package (push) Has been skipped
CI/CD Pipeline / Build RPM Package (push) Has been skipped
CI/CD Pipeline / Build Alpine Package (push) Has been skipped
CI/CD Pipeline / Build Arch Package (push) Has been skipped
CI/CD Pipeline / Security Audit (push) Failing after 1s
- Replace generic "linux" runner label with dedicated per-OS labels
  (ubuntu-24.04, fedora, alpine, arch)
- Remove all container declarations (native runner execution)
- Add build gate dependencies: build jobs need fmt+clippy+test
- Extract release upload logic into reusable scripts/upload-release.sh
- Fix build-alpine.sh: remove hardcoded container paths, add
  SKIP_CARGO_BUILD support
- Fix build-arch.sh: remove hardcoded container paths, add
  SKIP_CARGO_BUILD support
- Fix build-rpm.sh: remove sudo, native runner compatible
- Remove Dockerfile.rpm and Dockerfile.arch (no longer needed)
- Add sudo to Ubuntu/Fedora/Arch package installs for safety
- Add nodejs to Alpine deps for Gitea Actions compatibility
- Make upload-release.sh POSIX sh compatible (Alpine)
- Fix curl -sf to curl -s in upload-release.sh (404 on new releases)
2026-04-26 19:21:09 +00:00
7bee3ddd88 Fix: Use absolute workspace path in PKGBUILD package() function
Some checks failed
CI/CD Pipeline / Code Format (push) Successful in 11s
CI/CD Pipeline / Build Debian Package (push) Successful in 1m56s
CI/CD Pipeline / Build RPM Package (push) Successful in 3m24s
CI/CD Pipeline / Build Alpine Package (push) Failing after 0s
CI/CD Pipeline / Build Arch Package (push) Successful in 2m14s
2026-04-13 19:37:28 +00:00
542cbc8fb0 Fix: Use $(pwd)/arch-package path in PKGBUILD package() function
Some checks failed
CI/CD Pipeline / Code Format (push) Successful in 12s
CI/CD Pipeline / Build Debian Package (push) Successful in 1m57s
CI/CD Pipeline / Build RPM Package (push) Successful in 4m12s
CI/CD Pipeline / Build Alpine Package (push) Failing after 0s
CI/CD Pipeline / Build Arch Package (push) Failing after 2m13s
2026-04-13 18:20:52 +00:00
f054e31f85 Fix: Use non-root builduser for makepkg in CI container
Some checks failed
CI/CD Pipeline / Code Format (push) Successful in 12s
CI/CD Pipeline / Build Debian Package (push) Successful in 1m58s
CI/CD Pipeline / Build RPM Package (push) Successful in 3m24s
CI/CD Pipeline / Build Alpine Package (push) Failing after 0s
CI/CD Pipeline / Build Arch Package (push) Failing after 2m12s
2026-04-13 18:02:04 +00:00
5fbbea9b03 Fix: Restore execute permission on build-arch.sh (2nd time)
Some checks failed
CI/CD Pipeline / Code Format (push) Successful in 11s
CI/CD Pipeline / Build Debian Package (push) Successful in 1m56s
CI/CD Pipeline / Build RPM Package (push) Successful in 3m22s
CI/CD Pipeline / Build Alpine Package (push) Failing after 0s
CI/CD Pipeline / Build Arch Package (push) Failing after 2m10s
2026-04-13 17:19:51 +00:00
85d451bc85 Fix: Add --allow-root to makepkg --printsrcinfo for CI container builds
Some checks failed
CI/CD Pipeline / Code Format (push) Successful in 12s
CI/CD Pipeline / Build Debian Package (push) Successful in 1m56s
CI/CD Pipeline / Build RPM Package (push) Successful in 3m21s
CI/CD Pipeline / Build Alpine Package (push) Failing after 0s
CI/CD Pipeline / Build Arch Package (push) Failing after 2m11s
2026-04-13 17:06:47 +00:00
be2c7ddc72 Fix: Restore execute permission on build-arch.sh
Some checks failed
CI/CD Pipeline / Code Format (push) Successful in 12s
CI/CD Pipeline / Build Debian Package (push) Successful in 1m54s
CI/CD Pipeline / Build RPM Package (push) Successful in 3m21s
CI/CD Pipeline / Build Alpine Package (push) Failing after 0s
CI/CD Pipeline / Build Arch Package (push) Failing after 2m12s
2026-04-13 16:41:36 +00:00
9a55c7f85d Fix: Add --allow-root flag to makepkg for CI container builds
Some checks failed
CI/CD Pipeline / Code Format (push) Successful in 11s
CI/CD Pipeline / Build Debian Package (push) Successful in 1m57s
CI/CD Pipeline / Build RPM Package (push) Successful in 4m15s
CI/CD Pipeline / Build Alpine Package (push) Failing after 0s
CI/CD Pipeline / Build Arch Package (push) Failing after 2m10s
2026-04-13 15:52:57 +00:00
6f00f5dd8b Fix RPM build: correct tarball structure, add Source0 to spec, restore script permissions
Some checks failed
CI/CD Pipeline / Code Format (push) Successful in 12s
CI/CD Pipeline / Clippy Lints (push) Successful in 10m35s
CI/CD Pipeline / Unit Tests (push) Successful in 10m59s
CI/CD Pipeline / Security Audit (push) Successful in 1m34s
CI/CD Pipeline / Build Debian Package (push) Successful in 1m56s
CI/CD Pipeline / Build RPM Package (push) Failing after 1m57s
CI/CD Pipeline / Build Alpine Package (push) Failing after 2s
CI/CD Pipeline / Build Arch Package (push) Failing after 2s
2026-04-13 00:33:25 +00:00
2c870781ca Fix all build jobs: add cargo build --release before helper scripts, add abuild to apk deps, remove sudo from build-arch.sh
Some checks failed
CI/CD Pipeline / Code Format (push) Successful in 11s
CI/CD Pipeline / Clippy Lints (push) Successful in 10m35s
CI/CD Pipeline / Unit Tests (push) Successful in 10m59s
CI/CD Pipeline / Security Audit (push) Successful in 1m33s
CI/CD Pipeline / Build Debian Package (push) Successful in 1m58s
CI/CD Pipeline / Build RPM Package (push) Failing after 1m52s
CI/CD Pipeline / Build Alpine Package (push) Failing after 2s
CI/CD Pipeline / Build Arch Package (push) Failing after 2s
2026-04-12 23:16:17 +00:00
4cab32d3a8 Add multi-platform build scripts
- build-rpm.sh: Build RPM packages on RHEL/CentOS/Fedora
- build-alpine.sh: Build APK packages on Alpine Linux
- build-arch.sh: Build Arch packages on Arch Linux/Manjaro

Each script can also run in Docker containers for cross-platform builds.
Complements CI/CD pipeline for local package building.
2026-04-10 02:01:46 +00:00