jenkins 部署golang 应用到k8s与测试环境
pipeline {
agent any
stages {
stage('Build') {
steps {
sh 'go build -o myapp'
sh 'docker build -t myapp:latest .'
sh 'docker tag myapp:latest myapp-repo/myapp:latest'
sh 'docker push myapp-repo/myapp:latest'
}
}
stage('Deploy to Test') {
steps {
sh 'sed -i "s#image: .*#image: myapp-repo/myapp:latest#" deployment.yaml'
sh 'kubectl apply -f deployment.yaml'
}
}
}
}
这个Jenkinsfile使用了Groovy的pipeline语法,定义了一个包含Build和Deploy to Test两个阶段的流水线。在Build阶段,它使用sh
步骤来构建Go应用,并且创建、标记和推送Docker镜像到指定的仓库。在Deploy to Test阶段,它使用sed
命令替换YAML文件中的镜像名,并应用这个配置来部署到测试环境。
评论已关闭