Skip to content

feat: bootstrap cleanup + machineconfig-backup (session/24)#24

Merged
ontave merged 4 commits into
mainfrom
session/24-bootstrap-cleanup
May 6, 2026
Merged

feat: bootstrap cleanup + machineconfig-backup (session/24)#24
ontave merged 4 commits into
mainfrom
session/24-bootstrap-cleanup

Conversation

@ontave
Copy link
Copy Markdown
Contributor

@ontave ontave commented May 6, 2026

Summary

  • PLATFORM-BL-TALOSCONFIG-ONTYSYSTEM-REMOVE: ensureExecutorTalosconfig now copies talosconfig only to seam-tenant-{cluster}; removed ont-system destination (day-2 executor Jobs mount from Job namespace).
  • PLATFORM-BL-KUBECONFIG-CANONICAL: removed tenantKubeconfigSecretName constant and ensureTenantKubeconfigCopy; both import and CAPI paths read seam-mc-{cluster}-kubeconfig exclusively. PKI rotation e2e test updated.
  • PLATFORM-BL-CAPI-TENANT-ONBOARDING: step 8.5 added to reconcileCAPIPath -- calls ensureCAPITalosconfig, ensureCAPIKubeconfig, ensureTenantOnboarding after CAPI Running before ensureConductorReadyAndTransition.
  • PLATFORM-BL-MACHINECONFIG-BACKUP: TalosMachineConfigBackup CRD, MachineConfigBackupReconciler (mirrors EtcdMaintenanceReconciler pattern), generic S3 helpers ensureS3EnvSecretFor/resolveS3BackupSecretRef added to s3_env_secret.go. Reconciler registered in main.go.

Test plan

  • go test ./... -- all tests green (unit + integration)
  • TalosMachineConfigBackup CR creates Conductor Job in seam-tenant-{cluster} (live test when ccs-mgmt recovers)
  • CAPI cluster reaching Running now receives full tenant onboarding (live test when ccs-dev provisioned via CAPI)

ontave added 4 commits May 4, 2026 16:38
Governor directive (session/21): CODEBASE.md eliminated from all repos.
The graphify knowledge graph at ~/ontai/graphify-out/graph.json is the
sole authoritative source for codebase understanding. See root CONTEXT.md
and CLAUDE.md for the Graphify Source of Truth Protocol.
PlatformTenant was a planned CRD for tenant coordination that was never
implemented. Tenant coordination is handled by InfrastructureTalosCluster
(mode=import or mode=bootstrap) plus the conductor role=tenant Deployment
managed by the compiler enable bundle. Remove the forward-looking reference
from Step 4b to prevent agents from attempting to implement a non-existent
CRD category.
Replace /tmp/envtest-bins/1.35.0 (ephemeral, stale version) with the
canonical ontai root Makefile target: make envtest-setup && export
KUBEBUILDER_ASSETS=$(make -s envtest-path). Pinned to K8s 1.32.x.
- Remove ont-system talosconfig copy (PLATFORM-BL-TALOSCONFIG-ONTYSYSTEM-REMOVE):
  ensureExecutorTalosconfig now copies only to seam-tenant-{cluster}; day-2
  executor Jobs mount from Job namespace, never from ont-system.

- Canonical kubeconfig rename (PLATFORM-BL-KUBECONFIG-CANONICAL): removed
  tenantKubeconfigSecretName constant and ensureTenantKubeconfigCopy; both import
  and CAPI paths now read seam-mc-{cluster}-kubeconfig exclusively.
  platform_security.go no longer writes target-cluster-kubeconfig.
  PKI rotation e2e test updated to assert seam-mc-{cluster}-kubeconfig.

- CAPI tenant onboarding (PLATFORM-BL-CAPI-TENANT-ONBOARDING): step 8.5 added
  to reconcileCAPIPath after CAPI Running: ensureCAPITalosconfig, ensureCAPIKubeconfig,
  ensureTenantOnboarding called before ensureConductorReadyAndTransition.

- machineconfig-backup CRD and reconciler (PLATFORM-BL-MACHINECONFIG-BACKUP):
  TalosMachineConfigBackup CRD, MachineConfigBackupReconciler, generic
  ensureS3EnvSecretFor/resolveS3BackupSecretRef helpers. Registered in main.go.
@ontave ontave merged commit dd85667 into main May 6, 2026
2 checks passed
@ontave ontave deleted the session/24-bootstrap-cleanup branch May 6, 2026 17:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant