Jenkins 流水线多阶段构建

Jenkins流水线配置遇到 无法识别的。需要使用 自定义环境 项。
比如官网的在流水线中使用Docker

Started by remote host 172.17.0.1
Obtained Jenkinsfile from git http://10.99.20.51:8082/root/java-devops-demo.git
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
WorkflowScript: 28: Invalid agent type “docker” specified. Must be one of [any, label, none] @ line 28, column 17.
docker { image ‘maven:3-alpine’ }

原因:docker-pipeline 插件没有安装,只用安装这一个就行

docker-commons docker-java-api docker-build-step docker-workflow dockerpipline
挨个安装
在这里插入图片描述

在清华大学源中 找jenkins 插件源
jenkins插件源

将Jenkins插件站点更换成清华源的
在这里插入图片描述
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

jenkins推荐插件

docker pipeline #可以自定义使用docker环境,无所不能
docker
git parameter #解析git参数,允许选择分支进行构建
active choices 可以做到参数的级联选择(多用于不同区域联动)
generic webhook trigger #通用webhook触发器
role-based authrization strategy RBAC权限指定
list git branches parameter 列出分支参数
build with parameter #自定义参数构建

gitlab webhook自动更新发包提示异常
在这里插入图片描述问题排查:

通过日志发现并没有请求过来,判定可能是权限问题,但不知道为什么是报404而不是报30X权限相关错误,抱着测试的态度尝试居然问题解决了。
解决方法:
获取用户API Token,在webhook中附带用户名和token,格式如下:其中id和token可以在jenkins用户设置页面查看和生成。

http://id:token@jenkins_url/job/myJobName/build?token=my_job_token
http://java2:11b6963f689849bd229be6dd94d27bfc05@10.99.20.51:8080/job/java-devops-demo/build?token=javaops

  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Jenkins是一个开源的持续集成和交付工具,它提供了丰富的功能来自动化构建、测试和部署软件项目。Jenkins构建流水线是一种将软件开发过程划分为多个阶段,并在每个阶段执行一系列操作的方式。 Jenkins构建流水线可以通过Jenkinsfile文件或者通过Jenkins的Web界面进行配置。以下是一个简单的Jenkins构建流水线的示例: 1. 定义流水线的环境和参数: ``` pipeline { agent any parameters { string(name: 'ENV', defaultValue: 'dev', description: 'Environment') } stages { // ... } } ``` 2. 定义流水线阶段: ``` stages { stage('Build') { steps { // 执行构建操作,如编译代码、生成可执行文件等 } } stage('Test') { steps { // 执行测试操作,如运行单元测试、集成测试等 } } stage('Deploy') { steps { // 执行部署操作,如将构建好的软件包部署到目标环境 } } } ``` 3. 定义流水线的触发条件: ``` triggers { // 定时触发 cron('H 0 * * 1-5') // 或者根据代码仓库的变化触发 scm('git@github.com:username/repo.git') } ``` 4. 定义流水线的通知和报告: ``` post { success { // 构建成功后执行的操作,如发送通知、生成报告等 } failure { // 构建失败后执行的操作,如发送通知、生成报告等 } } ``` 通过以上配置,Jenkins会按照定义的流水线顺序执行每个阶段的操作,并根据触发条件自动触发构建。开发人员可以根据实际需求自定义流水线的各个阶段和操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值