我已经检查了所有关于同一个错误的主题,尝试了一切,但我无法找到任何东西来帮助我解决我的问题。
我的代码构建一个Docker容器,启动一个flask应用程序并运行一个python脚本,运行测试,然后合并Master。代码如下:
pipeline {
agent any
stages {
stage('Master merging'){
steps{
script{
passwordVariable = 'password'
usernameVariable = 'unsername'
// Variables for input
if(env.BRANCH_NAME == 'features'||env.BRANCH_NAME == 'main'){
sh 'git checkout origin/features'
sh 'git pull'
sh 'git remote update'
sh 'git fetch'
sh 'git checkout origin/main'
sh 'git merge origin/features'
withCredentials([usernamePassword(credentialsId : 'GitHub', passwordVariable:'GIT_PASSWORD', usernameVariable:'GIT_USERNAME')]){
sh "git push http://${GIT_USERNAME}:${GIT_PASSWORD}@github.com/Username/Repo.git"
}
}}
}
}
}
}
当我到达舞台(“大师合并”)时,我有以下错误
Masking supported pattern matches of $GIT_PASSWORD
[Pipeline] {
[Pipeline] }
[Pipeline] // withCredentials
[Pipeline] }
[Pipeline] // script
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (container shutdown)
Stage "container shutdown" skipped due to earlier failure(s)
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // withEnv
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
groovy.lang.MissingPropertyException: No such property: GIT_PASSWORD for class: groovy.lang.Binding
at groovy.lang.Binding.getVariable(Binding.java:63)
提前感谢您的帮助:)
1条答案
按热度按时间qcuzuvrc1#
我有一个答案:)
先决条件:在管理jenkins -〉管理凭证-〉jenkins -〉全局凭证(不受限制)-〉用户名和密码中创建一个凭证。用户名查询github用户名,密码查询Personal access token。ID由您决定。
编码: