Самый простой способ - запустить экземпляр Jenkins, настроить его так, как я хочу, exec
в него (например, kubectl exec -it {my-jenkins-pod} /bin/bash
), cd
в /var/jenkins_home
и просто взять соответствующие файлы иbase64 кодирует их.
В этом случае соответствующие файлы:
/var/jenkins_home/credentials.xml
/var/jenkins_home/secrets/master.key
/var/jenkins_home/secrets/hudson.util.Secret
Например, вы можете просто base64 -w 0 credentials.xml
получить содержимое в кодировке base64 любого из этих файлов.Затем просто скопируйте его и вставьте в соответствующий секретный ключ k8.
Первый секретный ключ k8, который вам нужно создать:
apiVersion: v1
kind: Secret
metadata:
name: jenkins-credentials
data:
credentials.xml: AAAGHckcdhie==
Где значение, данное credentials.xml
, равно base64
закодированная строка содержимого файла credentials.xml.
Другой секрет k8s, который вам нужно создать:
apiVersion: v1
kind: Secret
metadata:
name: jenkins-secrets-secret
data:
master.key: AAAdjkdfjicki+
hudson.util.Secret: AAAidjciud=
Затем в вашем values.yaml
:
CredentialsXmlSecret: jenkins-credentials
SecretsFilesSecret: jenkins-secrets-secret