jenkins argocd cicd git
argo-cd job
cd脚本拉去初始化chart,sed替换对应微服务chart文件参数,并提交到新环境的chart仓库
label = "master"
node(label) {
stage('env info'){
echo sh(returnStdout: true, script: "env")
}
stage('Checkout Charts From Source') {
sh "rm ./* -fr"
sh("git clone http://root:root@gitbucket.yangxl.com:80/git/devops/argocd-repo.git sourceDir")
}
stage('Checkout Charts From DestEnv') {
dir("destDir"){
git credentialsId: 'gitaccount', url: "https://gitee.com/yangxlgit/argo-repo.git", branch: "master"
// 保存git密码,以免 git push再提示输入密码
sh '''
echo "[credential]" >> .git/config
echo " helper = store" >> .git/config
'''
}
}
stage('Modify Service ChartFile') {
sh("pwd")
NewimageTag= sh( returnStdout: true, script: "cat sourceDir/guestbook/guestbook-ui-deployment.yaml |grep image|awk -F: '{print \$3}'|tr '\n' ' '")
OldimageTag= sh( returnStdout: true, script: "cat destDir/guestbook/guestbook-ui-deployment.yaml |grep image|awk -F: '{print \$3}'|tr '\n' ' '")
//echo OldimageTag
//echo NewimageTag
sh """
sed -i "s#$OldimageTag#$NewimageTag#g" destDir/guestbook/guestbook-ui-deployment.yaml
cat destDir/guestbook/guestbook-ui-deployment.yaml
"""
}
stage('Update Charts To DestEnv ') {
commitInfo = "testcommit"
dir("destDir"){
sh "pwd"
sh """
git remote -v
git config -l
git add guestbook/guestbook-ui-deployment.yaml
git commit -m $commitInfo
git push origin HEAD:refs/heads/master
"""
}
}
}

浙公网安备 33010602011771号