当前位置: 首页 > article >正文

Jenkins 新建配置Pipeline任务 三

Jenkins 新建配置Pipeline任务 三

一. 登录 Jenkins

网页输入 http://localhost:8080
在这里插入图片描述
输入账号、密码登录
在这里插入图片描述
一个没有创建任务的空 Jenkins

二. 创建 任务

图 NewItem
在这里插入图片描述
界面左上角 + New Item
图NewItemSelect
在这里插入图片描述
1.Enter an item name:输入任务名
2.Select an item type:选择 Pipeline:Pipeline 表示创建的是一个流水线任务
3.点击 OK
创建完成默认打开界面如下
图Configure
图Configure
修改参数、配置 之后点击 下面 Apply 按钮
需要退出编辑界面点击 Save 按钮
点击左上角 Dashboard-> TestProject1,回到项目基本信息界面
在这里插入图片描述
Stauts:项目状态,这是一个新任务,右侧只显示了 TestProject1 、Permalinks
Changes:记录变化信息,一般不需要关注
Build Now:点击这个按钮,开始执行构建
Configure:这个任务的所有配置在这里修改,点击Configure,回到 图Configure 界面
Delete Pipeline:删除这个任务
Stages:记录每次构建执行的阶段,一般不需要关注
Rename:重命名,点击进入修改任务名界面
Pipeline Syntax:流水线语法

三. 配置任务

点击 Configure 按钮,切换到配置界面
在这里插入图片描述
在这里插入图片描述
先看左上角 Configure
General:
Triggers:
Pipeline:
Advanced:
分别对应右侧不同模块
切换方式一:在左上角点击任意一个,就会切换到它对应的模块
切换方式二:在右侧区域,鼠标滚轮或者上下拖动网页,也可以看到所有的模块

四、General 模块

Description:项目描述
在这里插入图片描述
勾选 Discard old builds

  • Discard old builds:控制何时丢弃项目的构建记录
    • Days to keep builds :如果非空,例如填 5,则构建日期超过5天的记录将被删除
    • Max # of builds to keep :如果非空,例如填10,则当构建次数超过10次时,丢弃最旧的构建
      Days to keep builds 和 Max # of builds to keep 这两个选项可以同时激活,因此可以将构建保存7天,但最多只能保存10个构建。如果超过任何一个限制,那么超出该限制的任何构建都将被丢弃
      在 Advanced 部分,可以指定相同的选项

在这里插入图片描述

  • Do not allow concurrent builds:不允许并行构建,如果当前正在构建,执行新的构建,默认为等待当前的构建完成,再开始新的构建

    • Abort previous builds:勾选这个,如果当前正在构建,则立即停止构建,重新开始新的构建
  • Do not allow the pipeline to resume if the controller restarts:当Jenkins重启时,不恢复流水线

  • Throttle builds:控制每次构建的间隔

    • Number of builds:构建之间的间隔时长
    • Time period:时间类型控制 Number of builds:Year、Month、Week、Day、Hour、Minute、Second

在这里插入图片描述
勾选 This project is parameterized

  • This project is parameterized :添加参数
    在这里插入图片描述
    Jenkins 配置 Git Parameter 参数
五、Triggers

在这里插入图片描述
顾名思义就是触发器

Build after other projects are built:设置一个触发器,以便在其他项目完成构建时,为该项目安排一个新的构建
Build periodically:定期自动构建
在这里插入图片描述
如上配置,周一到周五每天早上 7:00 自动构建这个任务
GitHub hook trigger for GITSCM polling:跟 GitHub 推送 Hook 时,检测触发构建的机制,一般也用不到

六、Pipeline

在这里插入图片描述
在这里插入图片描述
在 Definition 处选择 Pipeline script from SCM
配置使用 SCM 源代码存储库中的 Pipeline 脚本
关于 Git 的配置看 Git仓库配置
在这里插入图片描述
Script Path:这个路径就是在 git 仓库中已经写好上传的 Pipeline 脚本,看下面 git 仓库中的文件
其中 testPipeline 就是 Pipeline 脚本,在跟目录
在这里插入图片描述
testPipeline 脚本内容如下

pipeline {agent anystages {stage('Print WorkSpace') {steps {script {echo "Hello world"echo "当前的工作目录: ${env.WORKSPACE}"}}}}
}

编辑完成之后点击 按钮 Apply -> 按钮 Save

七、构建任务

回到 TestProject1 配置界面
点 Build With parameters
在这里插入图片描述
在这里插入图片描述
构建信息会显示在 左侧下方的 Builds 区域,上图中显示的状态是 14:55 时刻的一个构建,状态显示未 绿色对勾,表示构建成功

那么这个构建做了什么?
执行的内容就是 Configure 模块中的 Pipeline 部分

1.在构建界面选择了:构建的分支 会赋值给参数 BRANCH_NAME
2.点 Build 会执行到 Pipeline script from SCM 模块的 Git,会执行 Git Checkout 分支的操作,把项目拉取到本地,切换到BRANCH_NAME分支
3.git 操作完成之后,调用 Script Path 路径配置的 Pipeline 脚本,也就是 我这里的 git 仓库目录的 Pipeline/testPipeline 脚本
这个脚本代码在上面已经有了,其实就做了两个输出

	 echo "Hello world"echo "当前的工作目录: ${env.WORKSPACE}"

关于 Pipeline 的语法,可以看到 Pipeline 模块最下方有一个 Pipeline Syntax 可以点击查看需要的各种功能应该怎么写

八、查看构建结果

在这里插入图片描述
选择最后一次构建,点击打开
在这里插入图片描述
1.Stauts:构建状态
在这里插入图片描述
2. **Console Output:**构建过程中的所有输出日志

Started by user admin
Lightweight checkout support not available, falling back to full checkout.
Checking out git https://github.com/LIQIANGEASTSUN/JenkinsTest.git into /Users/liqiang/.jenkins/workspace/TestProject1@script/a82089facc9f5b750180801ee6442a8ef978414d304ab5cc580f6728c566c0a8 to read testPipeline
The recommended git tool is: NONE
using credential xxx_credentials> git rev-parse --resolve-git-dir /Users/liqiang/.jenkins/workspace/TestProject1@script/a82089facc9f5b750180801ee6442a8ef978414d304ab5cc580f6728c566c0a8/.git # timeout=10
Fetching changes from the remote Git repository> git config remote.origin.url https://github.com/LIQIANGEASTSUN/JenkinsTest.git # timeout=10
Fetching upstream changes from https://github.com/LIQIANGEASTSUN/JenkinsTest.git> git --version # timeout=10> git --version # 'git version 2.39.5 (Apple Git-154)'
using GIT_SSH to set credentials xxx project git credentials
Verifying host key using known hosts file> git fetch --tags --force --progress -- https://github.com/LIQIANGEASTSUN/JenkinsTest.git +refs/heads/*:refs/remotes/origin/* # timeout=10> git rev-parse refs/remotes/origin/master^{commit} # timeout=10
Checking out Revision 9d2960eafc0c158d780d5849b638ebaf303cb96b (refs/remotes/origin/master)> git config core.sparsecheckout # timeout=10> git checkout -f 9d2960eafc0c158d780d5849b638ebaf303cb96b # timeout=10
Commit message: "ceshi"
First time build. Skipping changelog.
[Pipeline] Start of Pipeline
[Pipeline] node
Running on Jenkins in /Users/liqiang/.jenkins/workspace/TestProject1
[Pipeline] {
[Pipeline] stage
[Pipeline] { (Declarative: Checkout SCM)
[Pipeline] checkout
The recommended git tool is: NONE
using credential xxx_credentials> git rev-parse --resolve-git-dir /Users/liqiang/.jenkins/workspace/TestProject1/.git # timeout=10
Fetching changes from the remote Git repository> git config remote.origin.url https://github.com/LIQIANGEASTSUN/JenkinsTest.git # timeout=10
Fetching upstream changes from https://github.com/LIQIANGEASTSUN/JenkinsTest.git> git --version # timeout=10> git --version # 'git version 2.39.5 (Apple Git-154)'
using GIT_SSH to set credentials xxx project git credentials
Verifying host key using known hosts file> git fetch --tags --force --progress -- https://github.com/LIQIANGEASTSUN/JenkinsTest.git +refs/heads/*:refs/remotes/origin/* # timeout=10> git rev-parse refs/remotes/origin/master^{commit} # timeout=10
Checking out Revision 9d2960eafc0c158d780d5849b638ebaf303cb96b (refs/remotes/origin/master)> git config core.sparsecheckout # timeout=10> git checkout -f 9d2960eafc0c158d780d5849b638ebaf303cb96b # timeout=10
Commit message: "ceshi"
[Pipeline] }
[Pipeline] // stage
[Pipeline] withEnv
[Pipeline] {
[Pipeline] stage
[Pipeline] { (Print WorkSpace)
[Pipeline] script
[Pipeline] {
[Pipeline] echo
Hello world
[Pipeline] echo
当前的工作目录: /Users/liqiang/.jenkins/workspace/TestProject1
[Pipeline] }
[Pipeline] // script
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // withEnv
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
Finished: SUCCESS

点击 Console Output 右侧显示输出日志,可以看到日志中一些 git 操作命令
以及 Pipeline 执行的输出结果

# 可以看到 Commit message:这个是 构建的 git 分支,的提交记录
Commit message: "ceshi"
[Pipeline] echo
Hello world
[Pipeline] echo
当前的工作目录: /Users/liqiang/.jenkins/workspace/TestProject1
  1. Parameters
    在这里插入图片描述
    点击左侧的 Parameters 在右侧显示构建时,所有参数的值

  2. Pipeline Console:Pipeline 模块输出日志信息
    在这里插入图片描述

  3. Workspaces:上面执行 git 操作拉取 git 仓库,就是存储在这个目录了
    在这里插入图片描述
    可以看到一个目录路径,点击路径,可以将项目显示在 Jenkins 界面上
    在这里插入图片描述
    可以点击文件夹一层一层打开
    在任何一层 点击 下方的 all files in zip 就会将这个目录下的所有文件打包到一个 zip 中并且下载
    点击任何一个单独的文件,会自动下载这个文件

到此 Jenkins 新建配置 Pipeline 任务的基本操作已经完成了

相关文章:

Jenkins 新建配置Pipeline任务 三

Jenkins 新建配置Pipeline任务 三 一. 登录 Jenkins 网页输入 http://localhost:8080 输入账号、密码登录 一个没有创建任务的空 Jenkins 二. 创建 任务 图 NewItem 界面左上角 New Item 图NewItemSelect 1.Enter an item name:输入任务名 2.Select an ite…...

社区版IDEA中配置TomCat(详细版)

文章目录 1、下载Smart TomCat2、配置TomCat3、运行代码 1、下载Smart TomCat 由于小编的是社区版,没有自带的tomcat server,所以在设置的插件里面搜索,安装第一个(注意:安装时一定要关闭外网,小编因为这个…...

FFmpeg Audio options

ffmpeg音频命令选项: 1. -aframes number (output) 设置输出音频帧的数量。这是一个已经过时的别名,应该使用 -frames:a 参数来代替。 示例: ffmpeg -i input.mp4 -frames:a 300 output.mp4 表示输出300帧音频 2. -ar[:stream_specifier] freq (in…...

MATLAB 生成脉冲序列 pulstran函数使用详解

MATLAB 生成脉冲序列 pulstran函数使用详解 目录 前言 一、参数说明 二、示例一 三、示例二 总结 前言 MATLAB中的pulstran函数用于生成脉冲序列,支持连续或离散脉冲。该函数通过将原型脉冲延迟并相加,生成脉冲序列,适用于信号处理和系统…...

概率论、组合数学知识点汇总

1、概率论知识点 全概率公式:如果事件B1,B2,…,Bn是样本空间的一个划分,则:贝叶斯定理:协方差:协方差用来衡量两个变量之间的变化趋势是否一致,公式为相关系数(Pearson)&#xff1a…...

【人工智能】deepseek R1模型在蓝耘智算平台的搭建与机器学习的探索

📝个人主页🌹:Eternity._ 🌹🌹期待您的关注 🌹🌹 ❀ 蓝耘智算平台 deepseek R1简介与优点蓝耘智算平台蓝耘智算平台简介蓝耘智算平台优势deepseek R1模型在蓝耘智算平台的搭建模型使用与机器学习…...

tomcat html乱码

web tomcat html中文乱码 将html文件改成jsp <% page language"java" contentType"text/html; charsetUTF-8" pageEncoding"UTF-8"%>添加 <meta charset"UTF-8">...

蓝桥杯算法日记|2.11二分算法

二分法是一种在有序数组中查找某一特定元素的搜索算法。二分法的基本思想是&#xff1a;每次将区间缩小一半&#xff0c;重复这个过程&#xff0c;直到找到目标值或者确定目标值不存在于该区间内。 整数二分、浮点二分、二分答案 退出条件&#xff1a;l、r相邻时候退出 #inclu…...

基于单片机的智能奶茶机(论文+源码+图纸)

1总体架构设计 本课题为基于单片机的智能奶茶机设计&#xff0c;其系统架构上设计如图2.1所示&#xff0c;整个系统包括了DS18B20温度传感器、继电器模块、LCD液晶、蜂鸣器、按键、STC89C52单片机等器件&#xff0c;在功能上用户可以通过按键键控制选择甜度和添加物以及设置温度…...

Centos7系统安装redis

Centos7系统安装redis 下载编译配置配置环境变量服务脚本安装使用远程连接 下载 下载地址&#xff1a;https://download.redis.io/releases/&#xff0c;选择版本6.2.7 具体下载链接&#xff1a;https://download.redis.io/releases/redis-6.2.7.tar.gz 操作&#xff1a;在ro…...

图数据库neo4j进阶(一):csv文件导入节点及关系

CSV 一、load csv二、neo4j-admin import<一>、导入入口<二>、文件准备<三>、命令详解 一、load csv 在neo4j Browser中使用Cypher语句LOAD CSV,对于数据量比较大的情况,建议先运行create constraint语句来生成约束 create constraint for (s:Student) req…...

langchain学习笔记之小样本提示词Few-shot Prompt Template

langchain学习笔记之小样本提示词 引言 Few-shot Prompt Templates \text{Few-shot Prompt Templates} Few-shot Prompt Templates简单介绍示例集创建创建 ExamplePrompt \text{ExamplePrompt} ExamplePrompt与 ExampleSelector \text{ExampleSelector} ExampleSelector创建 Fe…...

【认证授权FAQ】HP Anyware LLS服务器常用命令

pcoip-set-password //lls上设置管理员密码 export HISTIGNORE“export” export TERADICI_LICENSE_SERVER_PASSWORD‘Your Password’ sudo pcoip-configure-proxy -v //检查是否使用了代理 pcoip-activate-online-license -a -c //在线激活 pcoip-return-online-license -a …...

深度剖析责任链模式

一、责任链模式的本质&#xff1a;灵活可扩展的流水线处理 责任链模式&#xff08;Chain of Responsibility Pattern&#xff09;是行为型设计模式的代表&#xff0c;其核心思想是将请求的发送者与接收者解耦&#xff0c;允许多个对象都有机会处理请求。这种模式完美解决了以下…...

Windows中指定路径安装DockerDesktop

Widnows中直接安装docker desktop&#xff0c;默认会被安装到C:/Program Files/Docker路径下&#xff0c;可以通过下面方式来设置安装到指定的目录下 1. 先卸载干净(如果已安装过的话) 如果未卸载干净&#xff0c;重装会提示 Exising installation is up to date 卸载Docker…...

Java LinkedList(单列集合)

LinkedList 是 Java 中实现了 List 接口的一个类&#xff0c;它属于 java.util 包。与 ArrayList 不同&#xff0c;LinkedList 是基于双向链表实现的&#xff0c;适合于频繁进行插入和删除操作的场景。 1. LinkedList 的基本特性 基于链表实现&#xff1a;LinkedList 使用双向…...

海外服务器都有什么作用?

海外服务器具体就是指部署在中国大陆以外地区的服务器&#xff0c;企业选择租用海外服务器能够显著提高不同国家和地区用户的访问速度&#xff0c;当网站的服务器部署在目标用户所在地附近时&#xff0c;数据信息所传输的距离就会缩短&#xff0c;大大降低了网络访问的延迟度&a…...

floodfill算法系列一>岛屿的最大面积

题解 整体思路&#xff1a;代码设计&#xff1a;代码呈现&#xff1a; 整体思路&#xff1a; 代码设计&#xff1a; 代码呈现&#xff1a; class Solution {int ret,m,n,count;boolean[][] vis;public int maxAreaOfIsland(int[][] grid) {m grid.length;n grid[0].length;v…...

手机用流量怎样设置代理ip?

互联网各领域资料分享专区(不定期更新)&#xff1a; Sheet...

2025年2月13日笔记

——自定义函数&#xff1a; #include<iostream> #include<bits/stdc.h> using namespace std; int a(int x,int y); int a(int x,int y){ return x*y; } int main(){ int c5; int d3; int resulta(c,d); cout<<"两数的乘积是&#xff1a;"&…...

游戏引擎学习第100天

仓库:https://gitee.com/mrxiao_com/2d_game_2 昨天的回顾 今天的工作重点是继续进行反射计算的实现。昨天&#xff0c;我们开始了反射和环境贴图的工作&#xff0c;成功地根据法线显示了反射效果。然而&#xff0c;我们还没有实现反射向量的计算&#xff0c;导致反射交点的代…...

Leetcode:学习记录

一、滑动窗口 1. 找出数组中元素和大于给定值的子数组的最小长度 右指针从左到右遍历&#xff0c;在每个右指针下&#xff0c;如果去掉左边元素的元素和大于等于给定值则左指针右移一次&#xff0c;直到小于给定值&#xff0c;右指针右移一个。 2.找到乘积小于给定值的子数组…...

AT32系列微控制器低压电机控制开发板

参考&#xff1a;《UM0014_AT32_LV_Motor_Control_EVB_V20_User_Manual_V1.0.1_ZH.pdf》 开发板介绍 此电机开发板是一个泛用型的低压三相电机驱动器&#xff0c;应用雅特力科技AT32系列微控制器搭配雅特力电机函数库&#xff0c;可驱动直流无刷电机、交流同步电机&#xff0…...

如何保持 mysql 和 redis 中数据的一致性?PegaDB 给出答案

MySQL 与 Redis 数据保持一致性是一个常见且复杂的问题&#xff0c;一般来说需要结合多种策略来平衡性能与一致性。 传统的解决策略是先读缓存&#xff0c;未命中则读数据库并回填缓存&#xff0c;但方式这种维护成本较高。 随着云数据库技术的发展&#xff0c;目前国内云厂商…...

Vue3(3)

一.具体业务功能实现 &#xff08;1&#xff09;登录注册页面 [element-plus 表单 & 表单校验] 功能需求说明&#xff1a; 1.注册登录 静态结构 & 基本切换 2.注册功能 (校验 注册) 3.登录功能 (校验 登录 存token) import request from /utils/request// 注册接…...

2025 西湖论剑wp

web Rank-l 打开题目环境&#xff1a; 发现一个输入框&#xff0c;看一下他是用上面语言写的 发现是python&#xff0c;很容易想到ssti 密码随便输&#xff0c;发现没有回显 但是输入其他字符会报错 确定为ssti注入 开始构造payload&#xff0c; {{(lipsum|attr(‘global…...

Spring Cloud + Nacos + K8S 零影响发布方案

问题描述 在生产环境中使用 springcloud 框架&#xff0c;由于服务更新过程中&#xff0c;容器服务会被直接停止&#xff0c;部分请求仍被分发到终止的容器&#xff0c;导致服务出现500错误&#xff0c;这部分错误请求数据占用比较少&#xff0c;因为Pod滚动更新都是一对一。因…...

Git命令摘录

使用 Git 升级软件通常是指通过 Git 仓库获取软件的最新版本或更新代码。以下是详细的步骤和方法&#xff1a; 1. 克隆软件仓库 如果这是你第一次获取软件代码&#xff0c;可以使用 git clone 命令将远程仓库克隆到本地。 git clone <仓库地址> 例如&#xff1a; git cl…...

2024年博客之星年度评选—创作影响力评审+主题文章创作评审目前排名(2024博客之星陪跑小分队助力2024博客之星创作者成长)

2024年博客之星年度评选—创作影响力评审主题文章创作评审目前排名 2024年博客之星主题文章创作评审文章得分公布&#xff01;2024年博客之星创作影响力评审2024年博客之星主题文章创作评审目前排名公布&#xff01; 【2024博客之星】恭喜完成✅主题创作的226位博主&#xff0…...

unity 0基础自学2.1:unity 中button的各类状态

文章目录 1、Button的状态2、脚本中获取button的状态2.1 分析状态获取2.2 通过实现接口获取button的状态2.2.1 鼠标点击与释放2.2.2 高亮模式2.2.3 退出选中模式&#xff08;高亮状态&#xff09;2.2.4 选择模式selected2.2.5 退出选择模式 3、射线与UI交互设置3.1 Canvas中组件…...