12 Commits

Author SHA1 Message Date
benvin 554e2e4f9c Merge pull request 'ci: add buildkit_config CA trust for artifactapi push' (#5) from benvin/buildx-ca-config into main
Reviewed-on: #5
2026-08-15 18:47:15 +10:00
unkin-agent 245a46aa5d ci: add buildkit_config CA trust for artifactapi push
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
ci/woodpecker/pr/build Pipeline was successful
2026-08-15 18:31:01 +10:00
benvin e86b24f493 Merge pull request 'ci: use CA-baked plugin-docker-buildx image for artifactapi push' (#4) from benvin/buildx-ca-plugin-image into main
Reviewed-on: #4
2026-08-15 18:21:10 +10:00
unkin-agent 749059d235 ci: use CA-baked plugin-docker-buildx image for artifactapi push
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
ci/woodpecker/pr/build Pipeline was successful
The upstream woodpeckerci/plugin-docker-buildx image does not trust the
internal CA, so pushes/pulls against artifactapi.k8s.syd1.au.unkin.net
fail. Swap both the docker.yaml push step (docker-encapi) and the
build.yaml PR dry-run step to the custom CA-baked image published at
artifactapi.k8s.syd1.au.unkin.net/docker-internal/plugin-docker-buildx:latest.
2026-08-15 18:04:16 +10:00
benvin 17f043d856 Merge pull request 'ci: push images to artifactapi registry instead of gitea' (#3) from benvin/push-artifactapi into main
Reviewed-on: #3
2026-07-30 20:56:25 +10:00
unkinben 4d8ec0f54c ci: push images to artifactapi registry instead of gitea
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
ci/woodpecker/pr/build Pipeline was successful
Hard switch of the docker push target from the Gitea registry to the
artifactapi local docker registry (docker-internal); the Gitea VM and its
registry are being retired. Drops the droneci/DRONECI_PASSWORD creds since
artifactapi accepts unauthenticated in-cluster pushes. Also updates the README image path.

Claude-Session: https://claude.ai/code/session_015ur3i7D2azsMAWTSVABApv
2026-07-30 00:34:59 +10:00
benvin 1dc02ce5cf Merge pull request 'fix: add missing cmd/ (gitignore excluded source dirs)' (#2) from benvin/fix-missing-cmd into main
ci/woodpecker/tag/release Pipeline was successful
ci/woodpecker/tag/docker Pipeline was successful
Reviewed-on: #2
v0.1.1
2026-07-05 17:18:26 +10:00
unkinben 2946db9b49 fix pre-commit go-vet for multi-package layout
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
The dnephin go-vet hook runs 'go vet' at the repo root, which has no Go files
(all live under cmd/, internal/, pkg/), failing with 'no Go files'. Replace it
with a local 'go vet ./...' hook, mirroring artifactapi.
2026-07-05 17:11:55 +10:00
unkinben 7e9fec60d4 fix: add missing cmd/ (gitignore was excluding source dirs)
ci/woodpecker/pr/pre-commit Pipeline failed
ci/woodpecker/pr/build Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
The initial commit's .gitignore had unanchored 'encapi' and 'encapi-cli'
patterns intended for built binaries; they also matched the cmd/encapi and
cmd/encapi-cli source directories, so those were silently never committed. The
tag build then failed with 'stat /build/cmd/encapi: directory not found'.

- anchor the binary ignores to the repo root (/encapi, /encapi-cli)
- add the cmd/encapi (server) and cmd/encapi-cli (CLI) main packages
2026-07-05 17:04:18 +10:00
benvin 02ef30ee17 Merge pull request 'initial implementation: encapi ENC server + CLI' (#1) from benvin/initial-implementation into main
ci/woodpecker/tag/release Pipeline failed
ci/woodpecker/tag/docker Pipeline failed
Reviewed-on: #1
v0.1.0
2026-07-05 00:10:17 +10:00
unkinben 373d21a744 initial implementation: encapi ENC server + CLI
Postgres-backed External Node Classifier for Puppet, replacing Cobbler.
- encapi HTTP server (chi + pgx): read/write API + two ENC document shapes
  (reshaped for the exec terminus; cobbler-wire for enc_direct_facts.rb)
- encapi-cli: classify/node/role/status CRUD + import-cobbler seeder
- pkg/client Go SDK; unit tests across all packages (DB via testcontainers)
- Dockerfile (distroless), Makefile, nfpm RPM (encapi-cli + encapi-enc wrapper),
  Woodpecker CI, docs/cutover.md
2026-07-04 23:45:15 +10:00
gitadmin b83d214e9a Initial commit 2026-07-04 23:40:45 +10:00