converge: delete the legacy luxfi/kms-operator, and the Infisical NOTICE

Two homes existed for one job — reconciling KMSSecret CRs into k8s Secrets:

  cmd/kms-operator (252 lines) -> ghcr.io/luxfi/kms-operator
  hanzoai/kms-operator (own repo) -> ghcr.io/hanzoai/kms-operator

hanzoai/kms-operator is the one that actually runs, on BOTH clusters
(lux-k8s kms-operator-system/kms-operator-controller-manager and hanzo-k8s
kms-operator-canonical). This repo's own docs already say so:
internal/documents/architecture.md calls hanzoai/kms-operator canonical and the
luxfi name "older"; index.md flags the remaining luxfi pins as drift. The only
thing still pinning ghcr.io/luxfi/kms-operator is lux-devnet/kms-zap-operator,
scaled 0/0.

So this was the dead duplicate. Delete it rather than keep fixing it — I had
just repaired its vendor drift in v1.12.8, which fixed a build for a component
that should not exist. Deleting beats fixing a second way to do one thing.

Also drop NOTICE. It carried the MIT attribution for Infisical-derived code —
required while that code was present, and it was: the vendored Infisical
console. a6a933d removed it. Nothing derived remains (0 TS/JS files, 0
Infisical references across all 60 Go files), so the attribution no longer
applies. The empty frontend/ directories go too.

The KMS service itself is untouched: cmd/kms builds and pkg/keys + cmd/kms
tests pass.

Co-authored-by: Hanzo Dev <dev@hanzo.ai>
This commit is contained in:
zeekay
2026-07-25 17:51:02 -07:00
co-authored by Hanzo Dev
parent 299b2307bf
commit baecefad0d
4 changed files with 0 additions and 405 deletions
-84
View File
@@ -1,84 +0,0 @@
name: Build KMS Operator
# Builds the KMSSecret reconciler (cmd/kms-operator) over the native luxfi/zap
# binary transport — replaces the legacy HTTP operator that
# POSTed /api/v1/auth/universal-auth/login (which the Go KMS server does not
# expose → 404, breaking every KMSSecret sync). Self-contained build (no
# cross-org reusable workflow); same pattern as build-lux-kms.yml /
# build-server-self.yml. Dockerfile.operator is a scratch image building the
# single static CGO=0 binary from the repo's own vendor tree.
on:
push:
branches: [main]
paths:
- 'cmd/kms-operator/**'
- 'pkg/zapclient/**'
- 'pkg/envelope/**'
- 'pkg/zap/**'
- 'Dockerfile.operator'
- '.github/workflows/build-operator.yml'
tags: ['v*']
workflow_dispatch:
permissions:
contents: read
packages: write
jobs:
build:
runs-on: lux-build
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- name: Compute tags
id: meta
run: |
if [[ "$GITHUB_REF" == refs/tags/v* ]]; then
VERSION="${GITHUB_REF#refs/tags/v}"
{
echo "tags<<EOF"
echo "ghcr.io/luxfi/kms-operator:v${VERSION}"
echo "ghcr.io/luxfi/kms-operator:${VERSION}"
echo "ghcr.io/luxfi/kms-operator:sha-${GITHUB_SHA:0:7}"
echo "EOF"
} >> "$GITHUB_OUTPUT"
else
{
echo "tags<<EOF"
echo "ghcr.io/luxfi/kms-operator:main"
echo "ghcr.io/luxfi/kms-operator:sha-${GITHUB_SHA:0:7}"
echo "EOF"
} >> "$GITHUB_OUTPUT"
fi
- name: Login to GHCR
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Buildx
uses: docker/setup-buildx-action@v3
- name: Build and push (linux/amd64, ZAP-transport reconciler)
uses: docker/build-push-action@v6
with:
context: .
file: Dockerfile.operator
platforms: linux/amd64
build-args: |
GITHUB_TOKEN=${{ secrets.GITHUB_TOKEN }}
push: true
tags: ${{ steps.meta.outputs.tags }}
cache-from: type=gha
cache-to: type=gha,mode=max
- name: Summary
run: |
echo "### KMS operator build complete" >> "$GITHUB_STEP_SUMMARY"
echo '```' >> "$GITHUB_STEP_SUMMARY"
echo '${{ steps.meta.outputs.tags }}' >> "$GITHUB_STEP_SUMMARY"
echo '```' >> "$GITHUB_STEP_SUMMARY"