任何人都可以共享Jenkin文件或为jenkin的Bitbucket专用存储库创建CI / CD的步骤。
构建Docker镜像并上传到Docker Hub并部署到kubernetes。
我已经尝试下载插件一点Bukcet到目前为止没有帮助。
我没有使用过多的Jenkin管道,也没有使用过Freestyle项目,对Jenkin的使用经验不多,不胜感激。
pipeline {
environment {
registry = "*******/test_case"
registryCredential = 'dockerhub'
}
agent any
stages {
stage('Cloning Git') {
steps {
git 'https://[email protected]/harshmanvar/configuring-ci-cd-on-kubernetes-with-jenkins.git'
}
}
stage('Docker Build') {
steps {
sh "docker build -t ****/test_case:${env.BUILD_NUMBER} ."
}
}
stage('Docker Push') {
steps {
withCredentials([usernamePassword(credentialsId: 'dockerhub', passwordVariable: 'dockerHubPassword', usernameVariable: 'dockerHubUser')]) {
sh "docker login -u ${env.dockerHubUser} -p ${env.dockerHubPassword}"
sh "docker push ******/test_case:${env.BUILD_NUMBER}"
}
}
}
stage('Docker Remove Image') {
steps {
sh "docker rmi ********/test_case:${env.BUILD_NUMBER}"
}
}
stage('Apply Kubernetes Files') {
steps {
withKubeConfig([credentialsId: 'kubeconfig']) {
sh 'cat deployment.yaml | sed "s/{{BUILD_NUMBER}}/$BUILD_NUMBER/g" | kubectl apply -f -'
sh 'kubectl apply -f service.yaml'
}
}
}
}
post {
success {
slackSend(message: "Pipeline is successfully completed.")
}
failure {
slackSend(message: "Pipeline failed. Please check the logs.")
}
}
}
第一步,不是关闭仓库,而我的仓库是非私有(private)的。
谢谢
最佳答案
无论您的git存储库是否为私有(private),只需在git开发人员设置中设置您的私有(private)访问 token 并将其添加到Jenkins凭证即可。之后,尝试此脚本cloning Git
阶段:
stage('Cloning Git') {
steps {
git credentialsId:'Your_Credential_Id',
url:'https://[email protected]/harshmanvar/configuring-ci-cd-on-kubernetes-with-jenkins.git', branch:'master'
}}
希望对您有帮助。