1 Star 0 Fork 4

peterwd/devops-demo

加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
Jenkinsfile 2.19 KB
一键复制 编辑 原始数据 按行查看 历史
wangdi 提交于 2021-05-25 19:59 +08:00 . feat: 测试 Arthas
pipeline{
// 定义groovy脚本中使用的环境变量
environment{
// 选择构建环境
ENV = sh(returnStdout: true,script: 'echo $env').trim()
// docker镜像仓库地址 目前我们使用阿里云的镜像服务
ORIGIN_REPO = sh(returnStdout: true,script: 'echo $origin_repo').trim()
// 项目名称
PROJECT_NAME = sh(returnStdout: true,script: 'echo $project_name').trim()
// docker镜像标签 示例:master-20210209105814
IMAGE_TAG = sh(returnStdout: true,script: 'echo $branch-`date +%Y%m%d%H%M%S`').trim()
// 将容器部署到k8s集群的命名空间
NAMESPACE = sh(returnStdout: true,script: 'echo $namespace').trim()
}
// 定义本次构建使用哪个标签的构建环境
agent{
node{
label 'slave-pipeline'
}
}
// "stages"定义项目构建的多个模块,可以添加多个 “stage”, 可以多个 “stage” 串行或者并行执行
stages{
// 添加第一个stage, 运行源码打包命令
stage('Package'){
steps{
container("maven") {
sh "mvn package -P $ENV -U -B -DskipTests"
}
}
}
// 添加第二个stage, 运行容器镜像构建和推送命令, 用到了environment中定义的groovy环境变量
stage('Image Build And Publish'){
steps{
container('docker') {
sh 'docker version'
// 刀客编译
sh "docker build -t $ORIGIN_REPO/$PROJECT_NAME:$IMAGE_TAG ."
// 刀客镜像推送
sh "docker push $ORIGIN_REPO/$PROJECT_NAME:$IMAGE_TAG"
// 清理镜像
sh 'docker image prune -f'
}
}
}
// 添加第三个stage, 将容器部署到k8s集群
stage('Deploy to Kubernetes') {
steps {
kubernetesDeploy(
configs: 'deployment.yaml',
enableConfigSubstitution: true,
kubeconfigId: 'kubeconfig'
)
}
}
}
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Java
1
https://gitee.com/peterwd/devops-demo.git
git@gitee.com:peterwd/devops-demo.git
peterwd
devops-demo
devops-demo
master

搜索帮助