Estoy usando Helm con Kubernetes y estoy tratando de agregar datos que tengo en un Configmap existente a un secreto existente. La razón de esto es que hay una propiedad en un CRD que debo configurar que solo acepta una referencia de clave secreta única. Vault crea el secreto existente y el mapa de configuración existente se configura en el gráfico de Helm en texto sin formato. Por razones que no explicaré, no podemos incluir el contenido del mapa de configuración en la entrada secreta de Vault, por lo que DEBO poder fusionar estos dos en un secreto.
Intenté buscar esto, pero la mayoría de las respuestas que veo implican crear un initContainer y configurar un volumen, pero desafortunadamente no creo que esto funcione para mi situación. Solo necesito un único secreto al que pueda hacer referencia en un CRD y el problema resuelto. ¿Es esto posible usando Kubernetes/Helm?
Mi plan alternativo es crear mi propio CRD y el controlador asociado para fusionar los datos del mapa de configuración y los datos del secreto y, básicamente, crear un nuevo secreto, pero parece una exageración.
Que yo sepa, no hay forma de hacer esto en kubernetes.
La única solución que puedo ver sería implementar alguna herramienta usted mismo. Con algo como kopf podría implementar un operador simple que escucha la creación/actualización de un secreto específico y un mapa de configuración, obtiene sus datos y los fusiona en un nuevo secreto. El uso de un operador le permite manejar todos los casos que pueden ocurrir durante la vida útil de sus recursos, como cuando se elimina o actualiza su nuevo secreto, etc.