Неудачный конвейер Jenkins на этапе, когда я git извлекаю "http: {username}: {пароль rout@myrepo.github.com".
В пароле есть @ в соответствии с политика паролей.
pipelinescript. groovy ниже
def credId = 'Идентификатор кредита, сохраненного в учетных данных Jenkins'
stage('Some Stage'){
withCredentials([usernamePassword(credId: "${cred}", passwordVariable: 'GIT_PASSWORD', usernameVariable: 'GIT_USERNAME']){
sh """
git checkout ${myBranch}
git status
git pull https://${GIT_USERNAME}:${GIT_PASSWORD}@github.myorg.com/myrepo.git
"""
}
}
GIT_PASSWORD - "@hello"
Этап завершается с ошибкой не удается разрешить хост: 4hello@github.myorg.com
Я не могу закодировать @ в% 40 и жестко закодировать пароль в указанном выше URL.
I попробовал ниже вместо GIT_PASSWORD
echo -n $ GIT_PASSWORD | od -A n -t x1 | sed 's / /% / g', который выдает% 40% 68% 65% 6c% 6c% 6f
git pull https://${GIT_USERNAME}:$(echo -n $GIT_PASSWORD | od -A n -t x1 | sed 's/ /%/g')@github.myorg.com/myrepo.git
, не уверен, нужен ли плагин или уже установлен в моей организации для помощника по учетным данным, но попытался
sh "git config --global credential.helper \"!echo password=${GIT_PASSWORD}; echo\""
Перепробовал много вещей, размещенных в сети, не смог найти работающее решение. Пожалуйста, помогите