После запуска докера мне нужно заменить токен на учетные данные, которые хранятся в Jenkins, в файле конфигурации.
Использование «withCredentials» обеспечивает безопасность и предотвращает печать токена на приборной панели, но я хочу заменить его в файле конфигурации, но я не смог этого добиться.
кошка Дженкинсфайл
node('test') {
withCredentials([string(credentialsId: 'k8s-token', variable: 'SECRET')]) {
stage("Checkout"){
checkout scm
}
...
stage('DockerRun') {
sh "docker run ..."
}
stage('FunctionRun') {
sh "docker exec -i docker /bin/sh -c 'bash /usr/src/app/bin/run.sh ${SECRET}'"
}
...
}
cat /usr/src/app/bin/run.sh
#!/usr/bin/env bash
token=$1
...
sed "s|\${CHANGE_ME}|${token}|g" /usr/src/app/.kube/config
...