# AddonClaim — vive FUERA del chart Helm (ADR-066). # # El workflow del tenant sustituye los placeholders con `sed` y aplica con # `kubectl apply -f -` ANTES de `helm upgrade --install`. helm nunca lo # trackea — al `helm uninstall` no lo borra; al `helm upgrade --install` # repetido no lo toca. Idempotente. # # Lifecycle gobernado por addon-provisioner (CRD idp.coralware.cloud/v1alpha1): # - reconcilia cada RECONCILE_INTERVAL (default 60s) por TenantProfile. # - crea BD logica + user + GRANT via Job DDL efimero en cluster tenant. # - publica Secret `${RELEASE_NAME}-db-creds` en ns `apps`. # - agrega finalizer `addon-provisioner.idp.coralware.cloud/cleanup-logical`. # # Cleanup explicito post `helm uninstall`: # kubectl delete addonclaim ${RELEASE_NAME}-db -n apps # (con deletionPolicy: Retain — default — preserva la BD; Event # OrphanLogicalDatabase. Cambiar a Delete previo para DROP DATABASE.) apiVersion: idp.coralware.cloud/v1alpha1 kind: AddonClaim metadata: name: ${RELEASE_NAME}-db namespace: apps labels: app.kubernetes.io/name: ${RELEASE_NAME} app.kubernetes.io/part-of: ${RELEASE_NAME} idp.coralware.cloud/golden-path: web-backend idp.coralware.cloud/golden-path-lang: python spec: addonType: mariadb databaseName: ${DATABASE_NAME} user: permissions: rw secretName: ${RELEASE_NAME}-db-creds deletionPolicy: Retain