Commit Graph

215 Commits

Author SHA1 Message Date
benvin f4e7dbd1ff Merge pull request 'Protect main on the jellyfin-plugin-sso fork' (#100) from benvin/jellyfin-plugin-sso-protection into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #100
2026-09-19 22:29:11 +10:00
unkin-agent ac5604ec92 Protect main on the jellyfin-plugin-sso fork
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
Require the PR pipeline and Owners merge approval on main, keeping owner push for upstream syncs.
2026-09-19 22:28:09 +10:00
benvin c26a432769 Merge pull request 'Fork the Jellyfin SSO plugin mirror into unkin' (#99) from benvin/fork-jellyfin-plugin-sso into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #99
2026-09-19 17:17:31 +10:00
unkin-agent 289ebc84d6 Fork the Jellyfin SSO plugin mirror into unkin
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
Add config/git.unkin.net/unkin/repository/jellyfin-plugin-sso.yaml forking mirrors/jellyfin-plugin-sso.
2026-09-19 17:11:06 +10:00
benvin 25ef56fc30 Merge pull request 'Use plain git migration service for the SSO plugin mirror' (#98) from benvin/mirror-sso-plain-git into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #98
2026-09-19 17:03:48 +10:00
unkin-agent 112f7c8042 Use plain git migration service for the SSO plugin mirror
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
2026-09-19 16:47:41 +10:00
benvin b126fffe17 Merge pull request 'Mirror the upstream Jellyfin SSO plugin' (#97) from benvin/mirror-jellyfin-plugin-sso into main
ci/woodpecker/push/apply Pipeline failed
Reviewed-on: #97
2026-09-19 16:36:09 +10:00
unkin-agent 8207d8cc8a Mirror the upstream Jellyfin SSO plugin
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
Add a pull mirror of github.com/9p4/jellyfin-plugin-sso into the mirrors
organisation, syncing every 8h with issues, pull requests and release
migration disabled.
2026-09-19 16:18:55 +10:00
benvin 55151a8796 Merge pull request 'Add declarative fork support to repository config' (#96) from benvin/gitea-fork-from into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #96
2026-09-19 16:13:06 +10:00
unkin-agent 8bc04e2c7d Reject fork_from alongside unsupported repository keys
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
gitea_fork can only express the source repo and owning organisation, so any
other setting in a fork's yaml is silently dropped.

- validate fork_from entries carry no other repository attributes, naming the
  offending config key and attributes
- note that gitea_fork has no archive_on_destroy
2026-09-19 16:03:44 +10:00
benvin 2cb056cbac Merge pull request 'Add Gitea pull-mirror support and a mirrors organisation' (#95) from benvin/gitea-mirror-repos into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #95
2026-09-19 15:58:01 +10:00
unkin-agent 9ab540719e Add fork_from to repository config
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
Express a fork as an optional fork_from key on the repository yaml, so a
forked repo is declared the same way as any other repo.

- add fork_from "<owner>/<repo>" to the repository module and object type
- create gitea_fork instead of gitea_repository when fork_from is set
- validate the source repo name matches the config file name, since a fork
  inherits the source name
- move gitea_repository.this to index 0 for the count refactor
- index existing repository import targets to match
2026-09-19 15:55:12 +10:00
unkin-agent 66823a939a Add pull-mirror support and a mirrors organisation
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
Expose the non-secret gitea_repository mirror/migration attributes through
the repository module and add the mirrors org for public upstream mirrors.
2026-09-19 15:47:32 +10:00
benvin 26e7723251 Merge pull request 'Add sshsignhost repository and scope certmanager to X.509' (#94) from benvin/puppet-vault-signers-repo into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #94
2026-09-19 10:25:37 +10:00
unkin-agent 1a43ed6a47 repository: add sshsignhost and scope certmanager to X.509
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
Puppet calls /usr/local/bin/certmanager and /usr/local/bin/sshsignhost at
hardcoded paths, so each tool needs a repo named for its binary.
2026-09-19 10:21:14 +10:00
unkin-agent de2b8acf8a Add puppet-vault-signers repository
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
Host the Go rewrites of the certmanager and sshsignhost Vault signing
helpers.

- Add config/git.unkin.net/unkin/repository/puppet-vault-signers.yaml
- Protect main with Owners-only merge and the standard woodpecker checks
2026-09-14 23:30:11 +10:00
benvin 93b47c0941 Merge pull request 'Add puppet-catalog-tools repository' (#93) from benvin/puppet-catalog-tools-repo into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #93
2026-09-12 15:35:20 +10:00
unkin-agent 73cc875373 Add puppet-catalog-tools repository
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
2026-09-12 15:32:55 +10:00
benvin 4424abad17 Merge pull request 'Make arti-pack repo description vendor-neutral' (#92) from benvin/arti-pack-neutral-description into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #92
2026-09-09 23:12:29 +10:00
unkin-agent 96ca0630d5 Make arti-pack repo description vendor-neutral
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
2026-09-09 22:39:34 +10:00
benvin deaa0f003d Merge pull request 'Add arti-pack repository' (#91) from benvin/arti-pack-repo into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #91
2026-09-08 22:59:29 +10:00
unkin-agent d0c1f7f6bd Add arti-pack repository
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/plan Pipeline was successful
2026-09-07 23:49:12 +10:00
benvin 9230ece23a Merge pull request 'Add vimpack repository' (#90) from benvin/vimpack-repo into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #90
2026-09-05 13:06:55 +10:00
unkin-agent 62b8ab4e9c Add vimpack repository
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
2026-09-05 11:13:50 +10:00
benvin 7b699c36b7 Merge pull request 'Add golib repository' (#89) from benvin/golib-repo into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #89
2026-08-31 06:58:05 +10:00
unkin-agent c731f89dd4 Add golib repository
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
Shared Go library for estate services, starting with a postgres pool and
migrations module.
2026-08-31 04:15:59 +10:00
benvin 2e9a5fb8d4 Merge pull request 'Add repospawner machine user scoped to terraform-git' (#88) from benvin/repospawner-user into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #88
2026-08-30 09:34:47 +10:00
benvin cb61d385e2 Merge pull request 'Add repospawner repository' (#87) from benvin/repospawner-repo into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #87
2026-08-30 09:28:12 +10:00
unkin-agent dd26c861fc repospawner: mark the account restricted
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
Defense in depth for the repo-creation bot: a restricted Gitea account can
only see repositories and organisations it is explicitly added to, so a
leaked repospawner token cannot enumerate or read the rest of the estate.
The repospawner team grant on terraform-git already covers everything the
bot does, so nothing it needs is lost.
2026-08-30 00:55:01 +10:00
unkin-agent 4b30ba0cfd Add repospawner machine user scoped to terraform-git
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
repospawner opens repo-creation PRs against terraform-git and needs no other
access, so give it its own identity and a per-repo team instead of adding it to
the org-wide agents team.

- add config/git.unkin.net/user/repospawner.yaml (limited visibility, not admin,
  no org/repo creation), mirroring the unkin-agent bot posture
- add config/git.unkin.net/unkin/team/repospawner.yaml granting write on the
  terraform-git repository only (include_all_repositories false)
2026-08-30 00:48:10 +10:00
unkin-agent 0e9f2a1279 Add repospawner repository
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
2026-08-30 00:40:44 +10:00
benvin a38a792f69 Merge pull request 'Add mediamark repository' (#86) from benvin/mediamark-repo into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #86
2026-08-29 21:13:42 +10:00
unkin-agent cd006fdff6 mediamark: make repo public and require woodpecker PR checks
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
2026-08-29 21:08:48 +10:00
unkin-agent ae41bf6cdc repository: add mediamark repo
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
2026-08-29 20:57:05 +10:00
benvin 98169c7cf8 Merge pull request 'Archive terraform-nomad repository' (#85) from benvin/archive-nomad into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #85
2026-08-23 22:36:29 +10:00
unkin-agent 960e88cd7e Archive terraform-nomad repository
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
The terraform-nomad project is being decommissioned; mark it archived
in Gitea so it becomes read-only, consistent with other retired repos
in this config (e.g. rpmbuild-template).
2026-08-23 22:34:03 +10:00
benvin 9ac6edd0a1 Merge pull request 'Run plan without acquiring the Consul state lock' (#84) from benvin/lockfree-plan into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #84
2026-08-23 22:31:30 +10:00
unkin-agent f83bdff5e6 Run plan without acquiring the Consul state lock
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/plan Pipeline was successful
PR plan pipelines were failing with "Error acquiring the state lock"
when they collided with a concurrent apply (or another plan) holding
the lock on the same Consul-backed state.

- plan: pass -lock=false to terragrunt plan; apply/apply-if-changes keep locking
2026-08-23 22:21:11 +10:00
benvin e4a65e18ab Merge pull request 'Make clickhouse-tools and logviewer public and require CI status checks' (#83) from benvin/repo-defaults into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #83
2026-08-23 16:56:12 +10:00
unkin-agent 54fb6154af Require all three woodpecker PR contexts (build/test/pre-commit)
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
2026-08-23 16:43:18 +10:00
unkin-agent 3cbfac7017 Make clickhouse-tools and logviewer public and require CI status checks
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
Both repos do not need to be private, and their main branches should
only accept PRs whose Woodpecker pipeline passed.

- private: false for clickhouse-tools and logviewer
- require ci/woodpecker/pr/build status check on main for both
2026-08-23 16:33:47 +10:00
benvin 58c67e69be Merge pull request 'Add clickhouse-tools repository' (#81) from benvin/clickhouse-tools-repo into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #81
2026-08-23 12:40:12 +10:00
benvin 43a43b5f85 Merge pull request 'Add logviewer repository' (#82) from benvin/logviewer-repo into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #82
2026-08-23 12:39:40 +10:00
unkin-agent d4018f6b7e Add logviewer repository
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
2026-08-23 12:37:18 +10:00
unkin-agent 22f11a0bda Add clickhouse-tools repository
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
2026-08-23 12:36:32 +10:00
benvin 78191e8eaf Merge pull request 'Add mediamover repository' (#80) from benvin/mediamover-repo into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #80
2026-08-22 22:53:07 +10:00
unkin-agent 9f85070281 repository: add mediamover repo
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
2026-08-22 22:37:46 +10:00
benvin fe7dec14e8 Merge pull request 'waitfordb: add branch protection on main' (#79) from benvin/waitfordb-branch-protection into main
ci/woodpecker/push/apply Pipeline was successful
Reviewed-on: #79
2026-08-22 17:03:15 +10:00
unkin-agent dd02e3dc75 Require all three PR status checks for waitfordb
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
The waitfordb CI is being split into three Woodpecker PR workflows
(pre-commit, test, build), each exposing its own status context. Require
all three on the main branch protection so a PR cannot merge until
pre-commit, test, and build all pass. Mirrors node-lookup.
2026-08-22 15:16:48 +10:00
unkin-agent c44f90e1ff waitfordb: add branch protection on main
ci/woodpecker/pr/plan Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
Owners-only merge, benvin approval, and the required Woodpecker PR check.
Requires the repo to be activated in Woodpecker so ci/woodpecker/pr/build
reports before a PR can merge.
2026-08-22 15:05:31 +10:00