117 Commits

Author SHA1 Message Date
unkinben db5a829429 test: validate all metadata.yaml files against schema in pytest
ci/woodpecker/pr/build-fedora42 Pipeline was successful
ci/woodpecker/pr/build-fedora44 Pipeline was successful
ci/woodpecker/pr/build-fedora43 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
2026-05-17 12:32:46 +10:00
unkinben ff34987784 refactor: use make test in pre-commit hook 2026-05-17 12:30:35 +10:00
unkinben f46e8bfc0b feat: add pytest pre-commit hook and tests scaffold (issue #162)
- pyproject.toml with pytest>=8 in [dependency-groups.dev] so
  uv run --group dev pytest resolves without a global install
- tests/__init__.py and tests/conftest.py skeleton referencing issue #162
- pre-commit local hook runs pytest tests/ on Python file changes;
  exit code 5 (no tests collected) is treated as success so commits
  are not blocked while the test suite is being built out
2026-05-17 12:30:35 +10:00
unkinben 26c399598c feat: JSON Schema validation for metadata.yaml as pre-commit hook
Adds schema/metadata.json (JSON Schema draft-07) as the authoritative
schema for all rpms/*/metadata.yaml files.  Key constraints:

- additionalProperties: false at both the top level and builds items,
  so unknown fields are rejected outright
- name allows dots (fixes neovim-glibc-2.17)
- github is optional (fixes claude-code, which has no GitHub repo)
- repository enum includes fedora/42, fedora/43, fedora/44
- dist_tag boolean field documented in schema

Pre-commit hook (check-jsonschema 0.37.2) runs against every file
matching ^rpms/[^/]+/metadata\.yaml$ on every commit.

Also fixes rpms/claude-code/metadata.yaml: removes the unknown
claude_ai field and normalises field order.
2026-05-17 12:30:35 +10:00
unkinben aeea587aeb fix: move unkin-undionly-kpxe preinstall.sh to scripts/ subdirectory (#166)
ci/woodpecker/push/deploy-fedora42 Pipeline was successful
ci/woodpecker/push/deploy-fedora43 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
ci/woodpecker/push/deploy-fedora44 Pipeline was successful
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
nfpm.yaml referenced /app/resources/scripts/preinstall.sh but the file
was at resources/preinstall.sh, causing the build to fail.

Reviewed-on: #166
2026-05-17 12:29:10 +10:00
unkinben 96d0e25e94 feat: update pipelines (#160)
ci/woodpecker/push/deploy-fedora44 Pipeline failed
ci/woodpecker/push/deploy-fedora43 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
ci/woodpecker/push/deploy-fedora42 Pipeline was successful
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
- remove buildah (now in image)
- add fedora42/fedora43/fedora44 pipelines

Reviewed-on: #160
2026-05-16 23:36:13 +10:00
unkinben a61bcb9d60 feat: add kubecolor (#159)
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
- quality of life rpm for colorizing kubernetes

Reviewed-on: #159
2026-05-14 23:29:16 +10:00
unkinben 17ce4eb2cf feat: update incus to 6.23.0 (#151)
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Automated version bump: 6.20.0 → 6.23.0

Reviewed-on: #151
2026-05-02 17:18:31 +10:00
unkinben 24bba58dfd feat: update per workflow resources (#158)
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
trying to avoid contention, where all jobs end up on one host causing
timeouts

- ensure build jobs requests/limits are more specific

Reviewed-on: #158
2026-05-02 17:10:04 +10:00
unkinben d860a9d27f feat: update ruff to 0.15.12 (#123)
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Automated version bump: 0.14.10 → 0.15.12

Reviewed-on: #123
2026-05-02 11:47:30 +10:00
unkinben 9e76b1ad83 feat: update pgbouncer_exporter to 0.12.0 (#127)
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Automated version bump: 0.11.0 → 0.12.0

Reviewed-on: #127
2026-05-02 11:42:53 +10:00
unkinben a5a6c90b8e feat: update vmagent to 1.142.0 (#124)
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
Automated version bump: 1.132.0 → 1.142.0

Reviewed-on: #124
2026-05-02 11:38:45 +10:00
unkinben 99c4db7b51 feat: update cni-plugins to 1.9.1 (#125)
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Automated version bump: 1.9.0 → 1.9.1

Reviewed-on: #125
2026-05-02 11:34:08 +10:00
unkinben 9bc820ceaf feat: update jsonnet to 0.22.0 (#126)
ci/woodpecker/push/deploy-almalinux8 Pipeline failed
ci/woodpecker/push/deploy-almalinux9 Pipeline failed
Automated version bump: 0.21.0 → 0.22.0

Reviewed-on: #126
2026-05-02 11:33:52 +10:00
unkinben 743f272793 Merge pull request 'feat: update stalwart to 0.16.3' (#128) from update/stalwart into master
ci/woodpecker/push/deploy-almalinux9 Pipeline failed
ci/woodpecker/push/deploy-almalinux8 Pipeline failed
Reviewed-on: #128
2026-05-02 11:33:37 +10:00
unkinben e8f87aa9b5 Merge pull request 'feat: update node_exporter to 1.11.1' (#129) from update/node_exporter into master
ci/woodpecker/push/deploy-almalinux9 Pipeline failed
ci/woodpecker/push/deploy-almalinux8 Pipeline failed
Reviewed-on: #129
2026-05-02 11:33:29 +10:00
unkinben ddf4b72ec5 Merge pull request 'feat: update terraform to 1.15.0' (#130) from update/terraform into master
ci/woodpecker/push/deploy-almalinux8 Pipeline failed
ci/woodpecker/push/deploy-almalinux9 Pipeline failed
Reviewed-on: #130
2026-05-02 11:33:21 +10:00
unkinben a915b2c9f4 Merge pull request 'feat: update vmalert to 1.142.0' (#132) from update/vmalert into master
ci/woodpecker/push/deploy-almalinux8 Pipeline failed
ci/woodpecker/push/deploy-almalinux9 Pipeline failed
Reviewed-on: #132
2026-05-02 11:33:13 +10:00
unkinben fb91ae8240 Merge pull request 'feat: update stalwart-foundationdb to 0.16.3' (#145) from update/stalwart-foundationdb into master
ci/woodpecker/push/deploy-almalinux8 Pipeline failed
ci/woodpecker/push/deploy-almalinux9 Pipeline failed
Reviewed-on: #145
2026-05-02 11:33:02 +10:00
unkinben 7b808bce5c Merge branch 'master' into update/stalwart
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 11:07:26 +10:00
unkinben 5a3cca95e8 Merge pull request 'feat: update jsonnet-lint to 0.22.0' (#133) from update/jsonnet-lint into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #133
2026-05-02 10:21:23 +10:00
unkinben cdc60c992f Merge pull request 'feat: update postgres_exporter to 0.19.1' (#135) from update/postgres_exporter into master
ci/woodpecker/push/deploy-almalinux9 Pipeline failed
ci/woodpecker/push/deploy-almalinux8 Pipeline failed
Reviewed-on: #135
2026-05-02 10:21:15 +10:00
unkinben 189b7aaa8b Merge pull request 'feat: update nomad-autoscaler to 0.4.9' (#137) from update/nomad-autoscaler into master
ci/woodpecker/push/deploy-almalinux9 Pipeline failed
ci/woodpecker/push/deploy-almalinux8 Pipeline failed
Reviewed-on: #137
2026-05-02 10:21:07 +10:00
unkinben 2f289a8bea Merge pull request 'feat: update vminsert to 1.142.0' (#139) from update/vminsert into master
ci/woodpecker/push/deploy-almalinux8 Pipeline failed
ci/woodpecker/push/deploy-almalinux9 Pipeline failed
Reviewed-on: #139
2026-05-02 10:20:58 +10:00
unkinben 124f258009 Merge pull request 'feat: update jsonnet-language-server to 0.17.0' (#141) from update/jsonnet-language-server into master
ci/woodpecker/push/deploy-almalinux9 Pipeline failed
ci/woodpecker/push/deploy-almalinux8 Pipeline failed
Reviewed-on: #141
2026-05-02 10:20:50 +10:00
unkinben d71b0570ff Merge pull request 'feat: update victoria-logs to 1.50.0' (#142) from update/victoria-logs into master
ci/woodpecker/push/deploy-almalinux8 Pipeline failed
ci/woodpecker/push/deploy-almalinux9 Pipeline failed
Reviewed-on: #142
2026-05-02 10:20:43 +10:00
unkinben 084d0f7ebb Merge branch 'master' into update/node_exporter
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 10:17:55 +10:00
unkinben 6b7fe0cf50 Merge branch 'master' into update/terraform
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 10:17:19 +10:00
unkinben 447df4116b Merge branch 'master' into update/victoria-logs
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 09:53:57 +10:00
unkinben a46d30fc95 Merge branch 'master' into update/stalwart-foundationdb
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 09:53:47 +10:00
unkinben 5e0f56b6ef Merge pull request 'feat: update vmselect to 1.142.0' (#144) from update/vmselect into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #144
2026-05-02 09:51:17 +10:00
unkinben 58692a96b1 Merge pull request 'feat: update vlutils to 1.50.0' (#147) from update/vlutils into master
ci/woodpecker/push/deploy-almalinux9 Pipeline failed
ci/woodpecker/push/deploy-almalinux8 Pipeline failed
Reviewed-on: #147
2026-05-02 09:51:10 +10:00
unkinben 9e78b93a6a Merge pull request 'feat: update vmstorage to 1.142.0' (#150) from update/vmstorage into master
ci/woodpecker/push/deploy-almalinux8 Pipeline failed
ci/woodpecker/push/deploy-almalinux9 Pipeline failed
Reviewed-on: #150
2026-05-02 09:51:03 +10:00
unkinben 3419072f0c Merge pull request 'feat: update vmutils to 1.142.0' (#156) from update/vmutils into master
ci/woodpecker/push/deploy-almalinux9 Pipeline failed
ci/woodpecker/push/deploy-almalinux8 Pipeline failed
Reviewed-on: #156
2026-05-02 09:50:47 +10:00
unkinben afe6673399 Merge pull request 'feat: update helmfile to 1.4.4' (#148) from update/helmfile into master
ci/woodpecker/push/deploy-almalinux8 Pipeline failed
ci/woodpecker/push/deploy-almalinux9 Pipeline failed
Reviewed-on: #148
2026-05-02 09:50:37 +10:00
unkinben 89185e07c2 Merge branch 'master' into update/nomad-autoscaler
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
2026-05-02 09:44:35 +10:00
unkinben 2bcfad04b0 Merge branch 'master' into update/jsonnet-language-server
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
2026-05-02 09:44:20 +10:00
unkinben b7d5f2d656 Merge pull request 'feat: update packer to 1.15.3' (#149) from update/packer into master
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
Reviewed-on: #149
2026-05-02 09:42:32 +10:00
unkinben 4b5419cf20 Merge pull request 'feat: update vault to 2.0.0' (#153) from update/vault into master
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
Reviewed-on: #153
2026-05-02 09:14:26 +10:00
unkinben 3785181000 Merge pull request 'feat: update frr_exporter to 1.11.0' (#154) from update/frr_exporter into master
ci/woodpecker/push/deploy-almalinux8 Pipeline failed
ci/woodpecker/push/deploy-almalinux9 Pipeline failed
Reviewed-on: #154
2026-05-02 09:12:58 +10:00
unkinben 8801731e13 Merge pull request 'feat: update vals to 0.44.0' (#155) from update/vals into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #155
2026-05-02 09:09:40 +10:00
unkinben 6a764d28d3 Merge pull request 'feat: update consul to 1.22.7' (#134) from update/consul into master
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
Reviewed-on: #134
2026-05-02 09:06:17 +10:00
unkinben 03dd516600 Merge branch 'master' into update/consul
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
2026-05-02 08:57:39 +10:00
unkinben 9872215bf8 Merge branch 'master' into update/vminsert
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 08:57:19 +10:00
unkinben 92a9a20445 Merge branch 'master' into update/vmselect
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 08:57:01 +10:00
unkinben 042029ddc3 Merge branch 'master' into update/vlutils
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
2026-05-02 08:52:36 +10:00
unkinben 3610c20ae6 Merge branch 'master' into update/helmfile
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
2026-05-02 08:52:25 +10:00
unkinben 301f491a7c Merge branch 'master' into update/packer
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
2026-05-02 08:46:34 +10:00
unkinben 58c997a971 Merge branch 'master' into update/vmstorage
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 08:42:56 +10:00
unkinben 34516a951d Merge branch 'master' into update/vault
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
2026-05-02 08:42:33 +10:00
unkinben cd2cee4b44 Merge branch 'master' into update/frr_exporter
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 08:36:42 +10:00
unkinben c5408d231c Merge branch 'master' into update/vals
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
2026-05-02 08:36:29 +10:00
unkinben 1ec69da49b Merge pull request 'feat: update nfpm to 2.46.3' (#122) from update/nfpm into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #122
2026-05-02 08:33:42 +10:00
unkinben 62dc3c56d2 Merge pull request 'feat: update boilerplate to 0.15.0' (#121) from update/boilerplate into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #121
2026-05-02 08:31:09 +10:00
unkinben 0665f3bdb2 Merge pull request 'feat: update uv to 0.11.8' (#146) from update/uv into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #146
2026-05-02 08:27:59 +10:00
unkinben 4ae1758d81 Merge pull request 'feat: update tflint to 0.62.0' (#152) from update/tflint into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #152
2026-05-02 08:26:02 +10:00
unkinben c977bb3f81 Merge branch 'master' into update/uv
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 08:23:51 +10:00
unkinben 13c4a2365d Merge branch 'master' into update/tflint
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 08:21:46 +10:00
unkinben 6db63d80ef Merge branch 'master' into update/nfpm
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
2026-05-02 08:18:54 +10:00
unkinben 79fa72fd09 Merge branch 'master' into update/boilerplate
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 08:14:57 +10:00
unkinben 6c2ae01c1f Merge pull request 'feat: update terragrunt to 1.0.3' (#138) from update/terragrunt into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #138
2026-05-02 08:01:07 +10:00
unkinben b778d77617 Merge branch 'master' into update/terragrunt
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 07:54:40 +10:00
unkinben d4c961c3b0 Merge pull request 'feat: update nzbget to 26.1' (#143) from update/nzbget into master
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
Reviewed-on: #143
2026-05-02 07:52:20 +10:00
unkinben d28087cd7c Merge branch 'master' into update/nzbget
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 07:50:22 +10:00
unkinben 9903a888dc Merge pull request 'feat: update starship to 1.25.1' (#116) from update/starship into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #116
2026-05-02 07:48:11 +10:00
unkinben 6fe13f2c06 Merge pull request 'feat: update claude-code to 2.1.126' (#131) from update/claude-code into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #131
2026-05-02 07:43:36 +10:00
unkinben e1c0dc7f85 Merge pull request 'feat: update helm to 4.1.4' (#157) from update/helm into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #157
2026-05-02 07:41:10 +10:00
unkinben 2de5147e27 feat: update helm to 4.1.4
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 01:48:53 +10:00
unkinben b2e786f444 feat: update vmutils to 1.142.0
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 01:48:47 +10:00
unkinben 0bd0655009 feat: update vals to 0.44.0
ci/woodpecker/pr/build-almalinux8 Pipeline is pending
ci/woodpecker/pr/build-almalinux9 Pipeline is pending
ci/woodpecker/pr/pre-commit Pipeline is pending
2026-05-02 01:48:41 +10:00
unkinben af06a66e86 feat: update frr_exporter to 1.11.0
ci/woodpecker/pr/build-almalinux8 Pipeline is running
ci/woodpecker/pr/pre-commit Pipeline is pending
ci/woodpecker/pr/build-almalinux9 Pipeline is running
2026-05-02 01:48:35 +10:00
unkinben 083abf54b0 feat: update vault to 2.0.0
ci/woodpecker/pr/build-almalinux9 Pipeline failed
ci/woodpecker/pr/pre-commit Pipeline is running
ci/woodpecker/pr/build-almalinux8 Pipeline failed
2026-05-02 01:48:32 +10:00
unkinben 7a7cc8c3ac feat: update tflint to 0.62.0
ci/woodpecker/pr/build-almalinux9 Pipeline is pending
ci/woodpecker/pr/pre-commit Pipeline is pending
ci/woodpecker/pr/build-almalinux8 Pipeline is running
2026-05-02 01:48:23 +10:00
unkinben 955c7d98c8 feat: update vmstorage to 1.142.0
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline failed
2026-05-02 01:48:19 +10:00
unkinben 2b584d74a3 feat: update packer to 1.15.3
ci/woodpecker/pr/build-almalinux9 Pipeline is running
ci/woodpecker/pr/pre-commit Pipeline failed
ci/woodpecker/pr/build-almalinux8 Pipeline failed
2026-05-02 01:48:16 +10:00
unkinben e2634dfa4a feat: update helmfile to 1.4.4
ci/woodpecker/pr/build-almalinux8 Pipeline is running
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline failed
2026-05-02 01:48:10 +10:00
unkinben 6f154faaf1 feat: update vlutils to 1.50.0
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline failed
ci/woodpecker/pr/build-almalinux8 Pipeline failed
2026-05-02 01:48:08 +10:00
unkinben 738541fe59 feat: update uv to 0.11.8
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline failed
2026-05-02 01:48:05 +10:00
unkinben 7fd61d945a feat: update stalwart-foundationdb to 0.16.3
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline failed
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 01:47:54 +10:00
unkinben 83d532a538 feat: update vmselect to 1.142.0
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline failed
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 01:47:54 +10:00
unkinben 071de6a716 feat: update nzbget to 26.1
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline failed
ci/woodpecker/pr/build-almalinux9 Pipeline failed
2026-05-02 01:47:53 +10:00
unkinben 0f97c20f30 feat: update victoria-logs to 1.50.0
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline failed
ci/woodpecker/pr/build-almalinux8 Pipeline failed
2026-05-02 01:47:50 +10:00
unkinben 66ba9e7b8d feat: update jsonnet-language-server to 0.17.0
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline failed
2026-05-02 01:47:50 +10:00
unkinben 39513219c7 feat: update vminsert to 1.142.0
ci/woodpecker/pr/build-almalinux9 Pipeline is running
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
2026-05-02 01:47:37 +10:00
unkinben 40470f4778 feat: update terragrunt to 1.0.3
ci/woodpecker/pr/build-almalinux8 Pipeline is running
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 01:47:35 +10:00
unkinben 7e834112c4 feat: update nomad-autoscaler to 0.4.9
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline failed
2026-05-02 01:47:33 +10:00
unkinben 61513c7647 feat: update jsonnet-lint to 0.22.0
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
2026-05-02 01:47:29 +10:00
unkinben 2d46a58cdb feat: update postgres_exporter to 0.19.1
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
2026-05-02 01:47:29 +10:00
unkinben 9da177743e feat: update consul to 1.22.7
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline failed
2026-05-02 01:47:26 +10:00
unkinben 6a271b988d feat: update vmalert to 1.142.0
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 01:47:18 +10:00
unkinben 17e0568616 feat: update terraform to 1.15.0
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline failed
2026-05-02 01:47:14 +10:00
unkinben a5b7591187 feat: update claude-code to 2.1.126
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 01:47:13 +10:00
unkinben 4ad40ed620 feat: update node_exporter to 1.11.1
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline failed
2026-05-02 01:47:10 +10:00
unkinben 3a7a016592 feat: update stalwart to 0.16.3
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline failed
2026-05-02 01:47:09 +10:00
unkinben 78bb31b806 feat: update nfpm to 2.46.3
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline failed
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
2026-05-02 01:46:49 +10:00
unkinben e4000d4abc feat: update boilerplate to 0.15.0
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline failed
ci/woodpecker/pr/build-almalinux9 Pipeline failed
2026-05-02 01:46:46 +10:00
unkinben a8ec31fbde feat: update starship to 1.25.1
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-05-02 01:45:29 +10:00
unkinben 5a0b93c4b7 Merge pull request 'fix: support builds[].version metadata structure in update-gh' (#114) from worktree-fix+update-gh-builds-version into master
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
Reviewed-on: #114
2026-05-02 01:34:41 +10:00
unkinben 17fec6b015 fix: support builds[].version metadata structure in update-gh
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
Packages use version/release fields nested inside builds[] entries
rather than at the top level of metadata.yaml.
2026-05-02 01:29:15 +10:00
unkinben eafcc7abc4 Merge pull request 'feat: add yq rpm' (#104) from benvin/yq into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #104
2026-04-26 22:03:28 +10:00
unkinben f80fde0524 Merge pull request 'feat: add kubectx rpm (includes kubens)' (#105) from benvin/kubectx into master
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
Reviewed-on: #105
2026-04-26 22:01:15 +10:00
unkinben b4b7b39715 Merge pull request 'feat: add git-delta rpm' (#106) from benvin/git-delta into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #106
2026-04-26 21:38:17 +10:00
unkinben 3a286fc69c Merge pull request 'feat: add hadolint rpm' (#108) from benvin/hadolint into master
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
Reviewed-on: #108
2026-04-26 21:36:21 +10:00
unkinben 029ca3ab17 Merge pull request 'feat: add lazydocker rpm' (#109) from benvin/lazydocker into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #109
2026-04-26 21:33:59 +10:00
unkinben 11ae33d80a Merge pull request 'feat: add code-server rpm' (#110) from benvin/code-server into master
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
Reviewed-on: #110
2026-04-26 21:31:39 +10:00
unkinben dd2c72548f Merge pull request 'feat: add neovim and neovim-glibc-2.17 rpms' (#111) from benvin/neovim into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #111
2026-04-26 21:29:30 +10:00
unkinben 96ca30941a Merge pull request 'feat: add sops rpm' (#107) from benvin/sops into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #107
2026-04-26 21:27:11 +10:00
unkinben f001a9aa4b Merge pull request 'feat: add starship rpm' (#103) from benvin/starship into master
ci/woodpecker/push/deploy-almalinux8 Pipeline was successful
ci/woodpecker/push/deploy-almalinux9 Pipeline was successful
Reviewed-on: #103
2026-04-26 21:24:50 +10:00
unkinben 82ae18e914 feat: add neovim and neovim-glibc-2.17 rpms
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-04-26 16:55:49 +10:00
unkinben 169959a3ac feat: add code-server rpm
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
2026-04-26 16:50:39 +10:00
unkinben ee98e4bcd3 feat: add lazydocker rpm
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
2026-04-26 16:45:58 +10:00
unkinben 2a56be453e feat: add hadolint rpm
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-04-26 16:44:34 +10:00
unkinben 1128eb5d0f feat: add sops rpm
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-04-26 16:43:48 +10:00
unkinben adaa9d8b19 feat: add git-delta rpm
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-04-26 16:42:52 +10:00
unkinben 7f7f314121 feat: add kubectx rpm (includes kubens)
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-04-26 16:41:39 +10:00
unkinben 03e3d6c9ca feat: add yq rpm
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-04-26 16:40:44 +10:00
unkinben 8a7e991c5f feat: add starship rpm
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build-almalinux8 Pipeline was successful
ci/woodpecker/pr/build-almalinux9 Pipeline was successful
2026-04-26 16:39:48 +10:00
90 changed files with 1321 additions and 126 deletions
+18
View File
@@ -31,6 +31,24 @@ repos:
"-s",
]
- repo: local
hooks:
- id: pytest
name: Run unit tests
entry: make test
language: system
types: [python]
pass_filenames: false
- repo: https://github.com/python-jsonschema/check-jsonschema
rev: 0.37.2
hooks:
- id: check-jsonschema
name: Validate RPM package metadata
files: ^rpms/[^/]+/metadata\.yaml$
args: [--schemafile, schema/metadata.json]
language_version: python3.11
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.14.7
hooks:
+7 -1
View File
@@ -7,12 +7,18 @@ steps:
commands:
- mkdir -p /woodpecker/rpms
- ln -s /woodpecker/rpms /workspace
- dnf install buildah -y
- ./tools/build build-all --distro almalinux/el8 --buildah
privileged: true
backend_options:
kubernetes:
serviceAccountName: default
resources:
requests:
memory: 512Mi
cpu: 1
limits:
memory: 2Gi
cpu: 2
- name: show rpms
image: git.unkin.net/unkin/almalinux8-base:latest
+7 -1
View File
@@ -7,12 +7,18 @@ steps:
commands:
- mkdir -p /woodpecker/rpms
- ln -s /woodpecker/rpms /workspace
- dnf install buildah -y
- ./tools/build build-all --distro almalinux/el9 --buildah
privileged: true
backend_options:
kubernetes:
serviceAccountName: default
resources:
requests:
memory: 512Mi
cpu: 1
limits:
memory: 2Gi
cpu: 2
- name: show rpms
image: git.unkin.net/unkin/almalinux9-base:latest
+26
View File
@@ -0,0 +1,26 @@
when:
- event: pull_request
steps:
- name: build rpms
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
commands:
- mkdir -p /woodpecker/rpms
- ln -s /woodpecker/rpms /workspace
- ./tools/build build-all --distro fedora/42 --buildah
privileged: true
backend_options:
kubernetes:
serviceAccountName: default
resources:
requests:
memory: 512Mi
cpu: 1
limits:
memory: 2Gi
cpu: 2
- name: show rpms
image: git.unkin.net/unkin/fedora42-base:latest
commands:
- find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"
+26
View File
@@ -0,0 +1,26 @@
when:
- event: pull_request
steps:
- name: build rpms
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
commands:
- mkdir -p /woodpecker/rpms
- ln -s /woodpecker/rpms /workspace
- ./tools/build build-all --distro fedora/43 --buildah
privileged: true
backend_options:
kubernetes:
serviceAccountName: default
resources:
requests:
memory: 512Mi
cpu: 1
limits:
memory: 2Gi
cpu: 2
- name: show rpms
image: git.unkin.net/unkin/fedora43-base:latest
commands:
- find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"
+26
View File
@@ -0,0 +1,26 @@
when:
- event: pull_request
steps:
- name: build rpms
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
commands:
- mkdir -p /woodpecker/rpms
- ln -s /woodpecker/rpms /workspace
- ./tools/build build-all --distro fedora/44 --buildah
privileged: true
backend_options:
kubernetes:
serviceAccountName: default
resources:
requests:
memory: 512Mi
cpu: 1
limits:
memory: 2Gi
cpu: 2
- name: show rpms
image: git.unkin.net/unkin/fedora44-base:latest
commands:
- find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"
+14 -1
View File
@@ -8,12 +8,18 @@ steps:
commands:
- mkdir -p /woodpecker/rpms
- ln -s /woodpecker/rpms /workspace
- dnf install buildah -y
- ./tools/build build-all --distro almalinux/el8 --buildah
privileged: true
backend_options:
kubernetes:
serviceAccountName: default
resources:
requests:
memory: 512Mi
cpu: 1
limits:
memory: 2Gi
cpu: 2
- name: show-rpms
image: git.unkin.net/unkin/almalinux9-base:latest
@@ -34,4 +40,11 @@ steps:
backend_options:
kubernetes:
serviceAccountName: default
resources:
requests:
memory: 128Mi
cpu: 100m
limits:
memory: 512Mi
cpu: 500m
depends_on: [build-rpms, show-rpms]
+14 -1
View File
@@ -8,12 +8,18 @@ steps:
commands:
- mkdir -p /woodpecker/rpms
- ln -s /woodpecker/rpms /workspace
- dnf install buildah -y
- ./tools/build build-all --distro almalinux/el9 --buildah
privileged: true
backend_options:
kubernetes:
serviceAccountName: default
resources:
requests:
memory: 512Mi
cpu: 1
limits:
memory: 2Gi
cpu: 2
- name: show-rpms
image: git.unkin.net/unkin/almalinux9-base:latest
@@ -34,4 +40,11 @@ steps:
backend_options:
kubernetes:
serviceAccountName: default
resources:
requests:
memory: 128Mi
cpu: 100m
limits:
memory: 512Mi
cpu: 500m
depends_on: [build-rpms, show-rpms]
+50
View File
@@ -0,0 +1,50 @@
when:
- event: push
branch: master
steps:
- name: build-rpms
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
commands:
- mkdir -p /woodpecker/rpms
- ln -s /woodpecker/rpms /workspace
- ./tools/build build-all --distro fedora/42 --buildah
privileged: true
backend_options:
kubernetes:
serviceAccountName: default
resources:
requests:
memory: 512Mi
cpu: 1
limits:
memory: 2Gi
cpu: 2
- name: show-rpms
image: git.unkin.net/unkin/fedora42-rpmbuilder:latest
commands:
- find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"
depends_on: [build-rpms]
- name: deploy-rpms
image: git.unkin.net/unkin/fedora42-rpmbuilder:latest
commands:
- |
for rpm in $(find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"); do
curl --user droneci:$${DRONECI_PASSWORD} --upload-file $rpm https://git.unkin.net/api/packages/unkin/rpm/fedora/42/upload
done
environment:
DRONECI_PASSWORD:
from_secret: DRONECI_PASSWORD
backend_options:
kubernetes:
serviceAccountName: default
resources:
requests:
memory: 128Mi
cpu: 100m
limits:
memory: 512Mi
cpu: 500m
depends_on: [build-rpms, show-rpms]
+50
View File
@@ -0,0 +1,50 @@
when:
- event: push
branch: master
steps:
- name: build-rpms
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
commands:
- mkdir -p /woodpecker/rpms
- ln -s /woodpecker/rpms /workspace
- ./tools/build build-all --distro fedora/43 --buildah
privileged: true
backend_options:
kubernetes:
serviceAccountName: default
resources:
requests:
memory: 512Mi
cpu: 1
limits:
memory: 2Gi
cpu: 2
- name: show-rpms
image: git.unkin.net/unkin/fedora43-rpmbuilder:latest
commands:
- find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"
depends_on: [build-rpms]
- name: deploy-rpms
image: git.unkin.net/unkin/fedora43-rpmbuilder:latest
commands:
- |
for rpm in $(find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"); do
curl --user droneci:$${DRONECI_PASSWORD} --upload-file $rpm https://git.unkin.net/api/packages/unkin/rpm/fedora/43/upload
done
environment:
DRONECI_PASSWORD:
from_secret: DRONECI_PASSWORD
backend_options:
kubernetes:
serviceAccountName: default
resources:
requests:
memory: 128Mi
cpu: 100m
limits:
memory: 512Mi
cpu: 500m
depends_on: [build-rpms, show-rpms]
+50
View File
@@ -0,0 +1,50 @@
when:
- event: push
branch: master
steps:
- name: build-rpms
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
commands:
- mkdir -p /woodpecker/rpms
- ln -s /woodpecker/rpms /workspace
- ./tools/build build-all --distro fedora/44 --buildah
privileged: true
backend_options:
kubernetes:
serviceAccountName: default
resources:
requests:
memory: 512Mi
cpu: 1
limits:
memory: 2Gi
cpu: 2
- name: show-rpms
image: git.unkin.net/unkin/fedora44-rpmbuilder:latest
commands:
- find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"
depends_on: [build-rpms]
- name: deploy-rpms
image: git.unkin.net/unkin/fedora44-rpmbuilder:latest
commands:
- |
for rpm in $(find /woodpecker/src/git.unkin.net/unkin/rpmbuilder/ -type f -name "*.rpm"); do
curl --user droneci:$${DRONECI_PASSWORD} --upload-file $rpm https://git.unkin.net/api/packages/unkin/rpm/fedora/44/upload
done
environment:
DRONECI_PASSWORD:
from_secret: DRONECI_PASSWORD
backend_options:
kubernetes:
serviceAccountName: default
resources:
requests:
memory: 128Mi
cpu: 100m
limits:
memory: 512Mi
cpu: 500m
depends_on: [build-rpms, show-rpms]
+5 -1
View File
@@ -11,7 +11,7 @@ DISTRO ?= almalinux/el9
PACKAGES := $(shell find $(ROOT_DIR)/rpms -mindepth 1 -maxdepth 1 -type d -exec test -f {}/metadata.yaml \; -print | xargs -n1 basename | sort)
# Default target to build all packages
.PHONY: all list build clean
.PHONY: all list build clean test
all: build-all
# List all available packages
@@ -47,6 +47,10 @@ dry-run:
@echo "Dry run - showing what would be built for distro $(DISTRO):"
$(BUILD_TOOL) build-all --distro $(DISTRO) --dry-run
# Run unit tests
test:
@uv run --group dev pytest tests/ -q; rc=$$?; [ $$rc -eq 5 ] && exit 0 || exit $$rc
# Clean target
clean:
@echo "Cleaning build artifacts..."
+11
View File
@@ -0,0 +1,11 @@
[project]
name = "rpmbuilder"
version = "0.1.0"
requires-python = ">=3.11"
[dependency-groups]
dev = [
"pytest>=8",
"jsonschema>=4",
"pyyaml>=6",
]
+2 -2
View File
@@ -12,9 +12,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.10.1
version: 0.15.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.10.1
version: 0.15.0
+15 -15
View File
@@ -1,18 +1,18 @@
---
arch: amd64
builds:
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: '1'
repository: [almalinux/el8]
version: 2.1.120
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: '1'
repository: [almalinux/el9]
version: 2.1.120
claude_ai: true
name: claude-code
description: Claude Code - Anthropic's agentic AI coding tool
arch: amd64
platform: linux
maintainer: Anthropic
homepage: https://claude.ai/code
license: Proprietary
maintainer: Anthropic
name: claude-code
platform: linux
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 2.1.126
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 2.1.126
+2 -2
View File
@@ -12,9 +12,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 1.9.0
version: 1.9.1
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 1.9.0
version: 1.9.1
+20
View File
@@ -0,0 +1,20 @@
---
name: code-server
github: coder/code-server
description: VS Code in the browser.
arch: amd64
platform: linux
maintainer: Coder
homepage: https://github.com/coder/code-server
license: MIT
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 4.117.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 4.117.0
+6
View File
@@ -0,0 +1,6 @@
#!/usr/bin/bash
set -e
curl -L -o /app/dist/code-server-${PACKAGE_VERSION}-${PACKAGE_RELEASE}.x86_64.rpm \
https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/coder/code-server/releases/download/v${PACKAGE_VERSION}/code-server-${PACKAGE_VERSION}-amd64.rpm
+14
View File
@@ -0,0 +1,14 @@
# nfpm.yaml - unused, RPM is downloaded directly in build.sh
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
+9 -2
View File
@@ -12,9 +12,16 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 1.22.2
version: 1.22.7
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 1.22.2
version: 1.22.7
- repository:
- fedora/42
- fedora/43
- fedora/44
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 1.22.7
+2 -2
View File
@@ -11,9 +11,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 1.9.0
version: 1.11.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 1.9.0
version: 1.11.0
+20
View File
@@ -0,0 +1,20 @@
---
name: git-delta
github: dandavison/delta
description: A syntax-highlighting pager for git, diff, grep, and blame output.
arch: amd64
platform: linux
maintainer: dandavison
homepage: https://github.com/dandavison/delta
license: MIT
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.19.2
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.19.2
+12
View File
@@ -0,0 +1,12 @@
#!/usr/bin/bash
set -e
# Note: delta releases use plain version tags (no v prefix)
wget -O /app/delta-${PACKAGE_VERSION}-x86_64-unknown-linux-musl.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/dandavison/delta/releases/download/${PACKAGE_VERSION}/delta-${PACKAGE_VERSION}-x86_64-unknown-linux-musl.tar.gz
tar xf /app/delta-${PACKAGE_VERSION}-x86_64-unknown-linux-musl.tar.gz
mv /app/delta-${PACKAGE_VERSION}-x86_64-unknown-linux-musl/delta /app/delta
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
+30
View File
@@ -0,0 +1,30 @@
# nfpm.yaml
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
disable_globbing: false
replaces:
- git-delta
provides:
- git-delta
contents:
- src: /app/delta
dst: /usr/bin/delta
file_info:
mode: 0755
owner: root
group: root
+20
View File
@@ -0,0 +1,20 @@
---
name: hadolint
github: hadolint/hadolint
description: A smarter Dockerfile linter that helps you build best practice Docker images.
arch: amd64
platform: linux
maintainer: hadolint
homepage: https://github.com/hadolint/hadolint
license: GPL-3.0
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 2.14.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 2.14.0
+10
View File
@@ -0,0 +1,10 @@
#!/usr/bin/bash
set -e
wget -O /app/hadolint https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/hadolint/hadolint/releases/download/v${PACKAGE_VERSION}/hadolint-linux-x86_64
chmod +x /app/hadolint
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
+30
View File
@@ -0,0 +1,30 @@
# nfpm.yaml
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
disable_globbing: false
replaces:
- hadolint
provides:
- hadolint
contents:
- src: /app/hadolint
dst: /usr/bin/hadolint
file_info:
mode: 0755
owner: root
group: root
+2 -2
View File
@@ -11,9 +11,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 4.0.5
version: 4.1.4
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 4.0.5
version: 4.1.4
+2 -2
View File
@@ -13,9 +13,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 1.2.3
version: 1.4.4
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 1.2.3
version: 1.4.4
+1 -1
View File
@@ -11,4 +11,4 @@ builds:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 6.20.0
version: 6.23.0
+12 -10
View File
@@ -1,15 +1,17 @@
---
arch: amd64
builds:
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: '1'
repository: [almalinux/el8]
version: 0.16.0
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: '1'
repository: [almalinux/el9]
version: 0.16.0
description: Jsonnet Language Server Protocol implementation for the Jsonnet templating language.
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
repository:
- almalinux/el8
version: 0.17.0
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
repository:
- almalinux/el9
version: 0.17.0
description: Jsonnet Language Server Protocol implementation for the Jsonnet templating
language.
github: grafana/jsonnet-language-server
homepage: https://github.com/grafana/jsonnet-language-server
license: Apache-2.0
+10 -9
View File
@@ -1,14 +1,15 @@
---
arch: amd64
builds:
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: '1'
repository: [almalinux/el8]
version: 0.21.0
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: '1'
repository: [almalinux/el9]
version: 0.21.0
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
repository:
- almalinux/el8
version: 0.22.0
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
repository:
- almalinux/el9
version: 0.22.0
description: Linter for Jsonnet
github: google/go-jsonnet
homepage: https://github.com/google/go-jsonnet
+10 -9
View File
@@ -1,14 +1,15 @@
---
arch: amd64
builds:
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: '1'
repository: [almalinux/el8]
version: 0.21.0
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: '1'
repository: [almalinux/el9]
version: 0.21.0
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
repository:
- almalinux/el8
version: 0.22.0
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
repository:
- almalinux/el9
version: 0.22.0
description: A data templating language
github: google/go-jsonnet
homepage: https://github.com/google/go-jsonnet
+20
View File
@@ -0,0 +1,20 @@
---
name: kubecolor
github: kubecolor/kubecolor
description: Colorize your kubectl output
arch: amd64
platform: linux
maintainer: kubecolor
homepage: https://github.com/kubecolor/kubecolor
license: Apache-2.0
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.6.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.6.0
+10
View File
@@ -0,0 +1,10 @@
#!/usr/bin/bash
set -e
wget -O /app/kubecolor_${PACKAGE_VERSION}_linux_amd64.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/kubecolor/kubecolor/releases/download/v${PACKAGE_VERSION}/kubecolor_${PACKAGE_VERSION}_linux_amd64.tar.gz
tar xf /app/kubecolor_${PACKAGE_VERSION}_linux_amd64.tar.gz -C /app/ kubecolor
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
+30
View File
@@ -0,0 +1,30 @@
# nfpm.yaml
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
disable_globbing: false
replaces:
- kubecolor
provides:
- kubecolor
contents:
- src: /app/kubecolor
dst: /usr/bin/kubecolor
file_info:
mode: 0755
owner: root
group: root
+20
View File
@@ -0,0 +1,20 @@
---
name: kubectx
github: ahmetb/kubectx
description: Faster way to switch between clusters and namespaces in kubectl.
arch: amd64
platform: linux
maintainer: ahmetb
homepage: https://github.com/ahmetb/kubectx
license: Apache-2.0
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.11.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.11.0
+13
View File
@@ -0,0 +1,13 @@
#!/usr/bin/bash
set -e
wget -O /app/kubectx_v${PACKAGE_VERSION}_linux_x86_64.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/ahmetb/kubectx/releases/download/v${PACKAGE_VERSION}/kubectx_v${PACKAGE_VERSION}_linux_x86_64.tar.gz
wget -O /app/kubens_v${PACKAGE_VERSION}_linux_x86_64.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/ahmetb/kubectx/releases/download/v${PACKAGE_VERSION}/kubens_v${PACKAGE_VERSION}_linux_x86_64.tar.gz
tar xf /app/kubectx_v${PACKAGE_VERSION}_linux_x86_64.tar.gz -C /app/ kubectx
tar xf /app/kubens_v${PACKAGE_VERSION}_linux_x86_64.tar.gz -C /app/ kubens
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
+38
View File
@@ -0,0 +1,38 @@
# nfpm.yaml
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
disable_globbing: false
replaces:
- kubectx
- kubens
provides:
- kubectx
- kubens
contents:
- src: /app/kubectx
dst: /usr/bin/kubectx
file_info:
mode: 0755
owner: root
group: root
- src: /app/kubens
dst: /usr/bin/kubens
file_info:
mode: 0755
owner: root
group: root
+20
View File
@@ -0,0 +1,20 @@
---
name: lazydocker
github: jesseduffield/lazydocker
description: The lazier way to manage everything docker.
arch: amd64
platform: linux
maintainer: jesseduffield
homepage: https://github.com/jesseduffield/lazydocker
license: MIT
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.25.2
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.25.2
+10
View File
@@ -0,0 +1,10 @@
#!/usr/bin/bash
set -e
wget -O /app/lazydocker_${PACKAGE_VERSION}_Linux_x86_64.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/jesseduffield/lazydocker/releases/download/v${PACKAGE_VERSION}/lazydocker_${PACKAGE_VERSION}_Linux_x86_64.tar.gz
tar xf /app/lazydocker_${PACKAGE_VERSION}_Linux_x86_64.tar.gz -C /app/ lazydocker
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
+30
View File
@@ -0,0 +1,30 @@
# nfpm.yaml
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
disable_globbing: false
replaces:
- lazydocker
provides:
- lazydocker
contents:
- src: /app/lazydocker
dst: /usr/bin/lazydocker
file_info:
mode: 0755
owner: root
group: root
+20
View File
@@ -0,0 +1,20 @@
---
name: neovim-glibc-2.17
github: neovim/neovim-releases
description: Vim-fork focused on extensibility and usability (glibc 2.17 compatible build).
arch: amd64
platform: linux
maintainer: neovim
homepage: https://neovim.io
license: Apache-2.0
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.12.2
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.12.2
+11
View File
@@ -0,0 +1,11 @@
#!/usr/bin/bash
set -e
wget -O /app/nvim-linux-x86_64.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/neovim/neovim-releases/releases/download/v${PACKAGE_VERSION}/nvim-linux-x86_64.tar.gz
tar xf /app/nvim-linux-x86_64.tar.gz
mv /app/nvim-linux-x86_64/bin/nvim /app/nvim
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
@@ -0,0 +1,35 @@
# nfpm.yaml
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
disable_globbing: false
replaces:
- neovim-glibc-2.17
- neovim
provides:
- neovim-glibc-2.17
- nvim
conflicts:
- neovim
contents:
- src: /app/nvim
dst: /usr/bin/nvim
file_info:
mode: 0755
owner: root
group: root
+20
View File
@@ -0,0 +1,20 @@
---
name: neovim
github: neovim/neovim
description: Vim-fork focused on extensibility and usability.
arch: amd64
platform: linux
maintainer: neovim
homepage: https://neovim.io
license: Apache-2.0
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.12.2
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.12.2
+11
View File
@@ -0,0 +1,11 @@
#!/usr/bin/bash
set -e
wget -O /app/nvim-linux-x86_64.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/neovim/neovim/releases/download/v${PACKAGE_VERSION}/nvim-linux-x86_64.tar.gz
tar xf /app/nvim-linux-x86_64.tar.gz
mv /app/nvim-linux-x86_64/bin/nvim /app/nvim
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
+35
View File
@@ -0,0 +1,35 @@
# nfpm.yaml
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
disable_globbing: false
replaces:
- neovim
- neovim-glibc-2.17
provides:
- neovim
- nvim
conflicts:
- neovim-glibc-2.17
contents:
- src: /app/nvim
dst: /usr/bin/nvim
file_info:
mode: 0755
owner: root
group: root
+9 -2
View File
@@ -12,9 +12,16 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 2.44.1
version: 2.46.3
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 2.44.1
version: 2.46.3
- repository:
- fedora/42
- fedora/43
- fedora/44
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 2.46.3
+2 -2
View File
@@ -11,9 +11,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 1.10.2
version: 1.11.1
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 1.10.2
version: 1.11.1
+2 -2
View File
@@ -13,9 +13,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.4.8
version: 0.4.9
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.4.8
version: 0.4.9
+4 -4
View File
@@ -11,10 +11,10 @@ builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 2
version: '25.4'
release: 1
version: '26.1'
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 2
version: '25.4'
release: 1
version: '26.1'
+2 -2
View File
@@ -11,9 +11,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 1.14.3
version: 1.15.3
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 1.14.3
version: 1.15.3
+10 -9
View File
@@ -1,14 +1,15 @@
---
arch: amd64
builds:
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: '1'
repository: [almalinux/el8]
version: 0.11.0
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: '1'
repository: [almalinux/el9]
version: 0.11.0
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
repository:
- almalinux/el8
version: 0.12.0
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
repository:
- almalinux/el9
version: 0.12.0
description: Prometheus exporter for PgBouncer
github: prometheus-community/pgbouncer_exporter
homepage: https://github.com/prometheus-community/pgbouncer_exporter
+2 -2
View File
@@ -11,9 +11,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.18.1
version: 0.19.1
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.18.1
version: 0.19.1
+2 -2
View File
@@ -11,9 +11,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.14.10
version: 0.15.12
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.14.10
version: 0.15.12
+20
View File
@@ -0,0 +1,20 @@
---
name: sops
github: getsops/sops
description: Simple and flexible tool for managing secrets.
arch: amd64
platform: linux
maintainer: getsops
homepage: https://github.com/getsops/sops
license: MPL-2.0
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 3.12.2
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 3.12.2
+10
View File
@@ -0,0 +1,10 @@
#!/usr/bin/bash
set -e
wget -O /app/sops https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/getsops/sops/releases/download/v${PACKAGE_VERSION}/sops-v${PACKAGE_VERSION}.linux.amd64
chmod +x /app/sops
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
+30
View File
@@ -0,0 +1,30 @@
# nfpm.yaml
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
disable_globbing: false
replaces:
- sops
provides:
- sops
contents:
- src: /app/sops
dst: /usr/bin/sops
file_info:
mode: 0755
owner: root
group: root
+2 -2
View File
@@ -12,9 +12,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.15.3
version: 0.16.3
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.15.3
version: 0.16.3
+2 -2
View File
@@ -11,9 +11,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.15.3
version: 0.16.3
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.15.3
version: 0.16.3
+20
View File
@@ -0,0 +1,20 @@
name: starship
github: starship/starship
description: The minimal, blazing-fast, and infinitely customizable prompt for any
shell.
arch: amd64
platform: linux
maintainer: starship
homepage: https://starship.rs
license: ISC
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 1.25.1
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 1.25.1
+10
View File
@@ -0,0 +1,10 @@
#!/usr/bin/bash
set -e
wget -O /app/starship-x86_64-unknown-linux-musl.tar.gz https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/starship/starship/releases/download/v${PACKAGE_VERSION}/starship-x86_64-unknown-linux-musl.tar.gz
tar xf /app/starship-x86_64-unknown-linux-musl.tar.gz
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
+30
View File
@@ -0,0 +1,30 @@
# nfpm.yaml
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
disable_globbing: false
replaces:
- starship
provides:
- starship
contents:
- src: /app/starship
dst: /usr/bin/starship
file_info:
mode: 0755
owner: root
group: root
+7
View File
@@ -18,3 +18,10 @@ builds:
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.14.0
- repository:
- fedora/42
- fedora/43
- fedora/44
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.14.0
+2 -2
View File
@@ -14,9 +14,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 1.14.3
version: 1.15.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 1.14.3
version: 1.15.0
+2 -2
View File
@@ -12,9 +12,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.96.1
version: 1.0.3
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.96.1
version: 1.0.3
+2 -2
View File
@@ -12,9 +12,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.60.0
version: 0.62.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.60.0
version: 0.62.0
+11 -2
View File
@@ -3,11 +3,20 @@ arch: amd64
builds:
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: '1'
repository: [almalinux/el8]
repository:
- almalinux/el8
version: 2025.07.13
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: '1'
repository: [almalinux/el9]
repository:
- almalinux/el9
version: 2025.07.13
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: '1'
repository:
- fedora/42
- fedora/43
- fedora/44
version: 2025.07.13
description: ca-certificates for the unkin site
github: unknown/unkin-ca-certificates
+9 -2
View File
@@ -11,9 +11,16 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.9.20
version: 0.11.14
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.9.20
version: 0.11.14
- repository:
- fedora/42
- fedora/43
- fedora/44
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.11.14
+2 -2
View File
@@ -12,9 +12,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 0.43.0
version: 0.44.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.43.0
version: 0.44.0
+9 -2
View File
@@ -14,9 +14,16 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 1.21.1
version: 2.0.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 1.21.1
version: 2.0.0
- repository:
- fedora/42
- fedora/43
- fedora/44
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 2.0.0
+2 -2
View File
@@ -12,9 +12,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 1.43.1
version: 1.50.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 1.43.1
version: 1.50.0
+2 -2
View File
@@ -12,9 +12,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 1.43.1
version: 1.50.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 1.43.1
version: 1.50.0
+2 -2
View File
@@ -12,9 +12,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 1.132.0
version: 1.142.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 1.132.0
version: 1.142.0
+2 -2
View File
@@ -11,9 +11,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 1.132.0
version: 1.142.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 1.132.0
version: 1.142.0
+2 -2
View File
@@ -12,9 +12,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 1.132.0
version: 1.142.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 1.132.0
version: 1.142.0
+2 -2
View File
@@ -12,9 +12,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 1.132.0
version: 1.142.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 1.132.0
version: 1.142.0
+2 -2
View File
@@ -12,9 +12,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 1.132.0
version: 1.142.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 1.132.0
version: 1.142.0
+2 -2
View File
@@ -12,9 +12,9 @@ builds:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 1.132.0
version: 1.142.0
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 1.132.0
version: 1.142.0
+11 -2
View File
@@ -3,11 +3,20 @@ arch: amd64
builds:
- image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: '1'
repository: [almalinux/el8]
repository:
- almalinux/el8
version: 0.25.3
- image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: '1'
repository: [almalinux/el9]
repository:
- almalinux/el9
version: 0.25.3
- repository:
- fedora/42
- fedora/43
- fedora/44
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 0.25.3
description: A friendly and fast tool for sending HTTP requests (HTTPie reimplementation in Rust)
github: ducaale/xh
+27
View File
@@ -0,0 +1,27 @@
---
name: yq
github: mikefarah/yq
description: yq is a portable command-line YAML, JSON, XML, CSV, TOML and properties processor.
arch: amd64
platform: linux
maintainer: mikefarah
homepage: https://github.com/mikefarah/yq
license: MIT
builds:
- repository:
- almalinux/el8
image: git.unkin.net/unkin/almalinux8-rpmbuilder:latest
release: 1
version: 4.53.2
- repository:
- almalinux/el9
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 4.53.2
- repository:
- fedora/42
- fedora/43
- fedora/44
image: git.unkin.net/unkin/almalinux9-rpmbuilder:latest
release: 1
version: 4.53.2
+10
View File
@@ -0,0 +1,10 @@
#!/usr/bin/bash
set -e
wget -O /app/yq https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github/mikefarah/yq/releases/download/v${PACKAGE_VERSION}/yq_linux_amd64
chmod +x /app/yq
envsubst < /app/resources/nfpm.yaml > /app/nfpm.yaml
nfpm pkg --config /app/nfpm.yaml --target /app/dist --packager rpm
+30
View File
@@ -0,0 +1,30 @@
# nfpm.yaml
name: ${PACKAGE_NAME}
version: ${PACKAGE_VERSION}
release: ${PACKAGE_RELEASE}
arch: ${PACKAGE_ARCH}
platform: ${PACKAGE_PLATFORM}
section: default
priority: extra
description: "${PACKAGE_DESCRIPTION}"
maintainer: ${PACKAGE_MAINTAINER}
homepage: ${PACKAGE_HOMEPAGE}
license: ${PACKAGE_LICENSE}
disable_globbing: false
replaces:
- yq
provides:
- yq
contents:
- src: /app/yq
dst: /usr/bin/yq
file_info:
mode: 0755
owner: root
group: root
+111
View File
@@ -0,0 +1,111 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"description": "Schema for rpms/*/metadata.yaml files",
"properties": {
"arch": {
"enum": [
"amd64",
"arm64",
"x86_64"
],
"type": "string"
},
"builds": {
"items": {
"additionalProperties": false,
"properties": {
"image": {
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_.:/@]+$",
"type": "string"
},
"release": {
"oneOf": [
{
"minLength": 1,
"type": "string"
},
{
"type": "number"
}
]
},
"repository": {
"items": {
"enum": [
"almalinux/el8",
"almalinux/el9",
"fedora/42",
"fedora/43",
"fedora/44"
],
"type": "string"
},
"minItems": 1,
"type": "array"
},
"version": {
"minLength": 1,
"pattern": "^[0-9]+(\\.[0-9]+)*(-[a-zA-Z0-9]+)*$",
"type": "string"
}
},
"required": [
"repository",
"image",
"release",
"version"
],
"type": "object"
},
"minItems": 1,
"type": "array"
},
"description": {
"minLength": 1,
"type": "string"
},
"dist_tag": {
"type": "boolean"
},
"github": {
"minLength": 1,
"pattern": "^[a-zA-Z0-9\\-_]+/[a-zA-Z0-9\\-_.]+$",
"type": "string"
},
"github_release_pattern": {
"minLength": 1,
"type": "string"
},
"homepage": {
"minLength": 1,
"pattern": "^https?://.+",
"type": "string"
},
"license": {
"minLength": 1,
"type": "string"
},
"maintainer": {
"minLength": 1,
"type": "string"
},
"name": {
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_.]*$",
"type": "string"
},
"platform": {
"minLength": 1,
"type": "string"
}
},
"required": [
"name",
"description",
"builds"
],
"title": "RPM Package Metadata",
"type": "object"
}
View File
+2
View File
@@ -0,0 +1,2 @@
# Tests for tools/build and tools/update-gh.
# See https://git.unkin.net/unkin/rpmbuilder/issues/162
+36
View File
@@ -0,0 +1,36 @@
"""Validate every rpms/*/metadata.yaml against schema/metadata.json."""
import json
from pathlib import Path
import jsonschema
import pytest
import yaml
REPO_ROOT = Path(__file__).parent.parent
SCHEMA_FILE = REPO_ROOT / "schema" / "metadata.json"
RPMS_DIR = REPO_ROOT / "rpms"
@pytest.fixture(scope="session")
def schema():
with open(SCHEMA_FILE) as f:
return json.load(f)
def metadata_files():
return sorted(RPMS_DIR.glob("*/metadata.yaml"))
@pytest.mark.parametrize("metadata_file", metadata_files(), ids=lambda p: p.parent.name)
def test_metadata_valid(metadata_file, schema):
with open(metadata_file) as f:
data = yaml.safe_load(f)
validator = jsonschema.Draft7Validator(schema)
errors = sorted(validator.iter_errors(data), key=str)
assert not errors, "\n".join(
f" {'.'.join(str(p) for p in e.absolute_path) or '(root)'}: {e.message}"
for e in errors
)
+18 -1
View File
@@ -293,6 +293,10 @@ def update_package_metadata(package_dir: Path, new_version: str, dry_run: bool =
with open(metadata_file, 'r') as f:
metadata = yaml.safe_load(f)
builds = metadata.get('builds', [])
if builds and isinstance(builds, list) and builds[0].get('version') is not None:
old_version = str(builds[0].get('version', 'unknown'))
else:
old_version = metadata.get('version', 'unknown')
logger.info(f"Updating {metadata.get('name', 'unknown')} from {old_version} to {new_version}")
@@ -301,6 +305,13 @@ def update_package_metadata(package_dir: Path, new_version: str, dry_run: bool =
return True
# Update version in metadata and reset release to 1
# Support both top-level version and builds[].version
builds = metadata.get('builds', [])
if builds and isinstance(builds, list) and builds[0].get('version') is not None:
for build in builds:
build['version'] = new_version
build['release'] = 1
else:
metadata['version'] = new_version
metadata['release'] = 1
@@ -340,7 +351,6 @@ def check_package_updates(package_dir: Path, dry_run: bool = False) -> bool:
metadata = yaml.safe_load(f)
package_name = metadata.get('name', package_dir.name)
current_version = metadata.get('version')
github_repo = metadata.get('github')
claude_ai = metadata.get('claude_ai', False)
@@ -348,6 +358,13 @@ def check_package_updates(package_dir: Path, dry_run: bool = False) -> bool:
logger.debug(f"Package {package_name} has no GitHub repo or claude_ai configured")
return True
# Support both top-level version and builds[].version
builds = metadata.get('builds', [])
if builds and isinstance(builds, list) and builds[0].get('version'):
current_version = str(builds[0].get('version'))
else:
current_version = metadata.get('version')
if not current_version:
logger.warning(f"Package {package_name} has no version in metadata")
return False