Я закончил тем, что взломал это с помощью bash скрипта для вывода секрета yaml secret.yaml.sh
cat <<EOF
apiVersion: v1
kind: Secret
metadata:
name: test-secret
type: Opaque
data:
username: $1
password: $2
jdbcUrl: $3
EOF
Затем в моем конвейере CI вызвать secret.yml.sh
и передать значения в кодировке base64, которые хранятся в хранилище учетных данных системы CI, а затем направьте его на kubectl, например, ./secret.yaml.sh $USERNAME $PASSWORD $URL | kubectl apply -f -
Этот хак позволяет мне запустить конвейер CI и обновить секреты на основе того, что хранится в системах CI.
Как отмечали другие, секреты в Kubernetes etcd небезопасны, и с k8s лучше использовать систему управления ключами. Однако у меня нет доступа к хранилищу ключей для этого проекта.