持续交付-Blue Ocean 应用

news2024/9/25 23:12:23

Blue Ocean 提供了一套可视化操作界面来帮助创建、编辑 Pipeline 任务。

Blue Ocean 特性:

  • 流水线编辑器:用于创建贯穿始终的持续交付流水线,是一种直观并可视化的流水线编辑器。

  • 流水线的可视化:对流水线的可视化表示,提高了全企业范围内持续交付过程的清晰度。

  • 流水线的诊断:即刻定位自动化问题,无需持续扫描日志或关注多个屏幕。

  • 个性化仪表盘:用户可以自定义仪表盘,只显示与自身相关的流水线。

安装与启动 Blue Ocean

Blue Ocean 是 Jenkins 插件之一,在系统管理->插件管理,“可选插件” 中搜索 “Blue Ocean” 可以看到如下结果:

选中 Blue Ocean,然后单击 Install 按钮进行安装。安装完成之后重启 Jenkins 进程,之后就可以在 Jenkins 页面上看到 Blue Ocean 的图标。单击 Blue Ocean 图标启动即可启动 Blue Ocean。

在 Blue Ocean 中创建 Pipeline

在 Blue Ocean 中单击 New Pipeline 创建新的流水线。

创建 Pipeline

如果你的仓库根目录有 Jenkinsfile,则直接开始第一次构建过程。如果仓库中不含 Jenkinsfile 则开启 pipeline-editor,图形化编辑工作流。

Blue Ocean 图形化编辑工作流

编辑完后会生成 Jenkinsfile,并提交到你的代码库根目录,你可以选择提交到 master 分支或者提交到一个新创建的分支。提交成功之后就会开始执行一次完整的构建过程。

Blue Ocean 创建 Pipeline 提交代码库 & 运行

由 Blue Ocean 生成的 Jenkinsfile 代码会被保存到项目的 Github 代码库中,后期可以对其进行编辑、修改。

Blue Ocean 生成的 Jenkinsfile 代码

pipeline {

agent any

stages { stage('Setup') {

parallel { stage('clean env') {

steps {

sh 'echo "Step1"'

}} stage('Reset test data') {

steps {

sh 'echo "reset config"'

}}

}

}

}

}

在 Blue Ocean 中运行构建与视图使用

运行构建

在 Blue Ocean 中打开 Pipeline 任务,单击 Run 按钮可以直接运行该任务。

Blue Ocean 中运行 Pipeline 任务

查看任务进度视图

在运行 Pipeline 任务过程中可以单击任务编号进入任务详情视图查看图形化进度。

Blue Ocean 任务进度查询

查看日志视图

单击任务中对应的工作节点,可以查询任务运行过程中的日志详情。这些日志信息可以用于调试任务,特别是在任务出错的时候,日志详情可以帮助检查任务出错的原因。

任务日志

使用 Blue Ocean 进行单元测试与结果展示

对于包含单元测试的项目,Blue Ocean 可以运行单元测试并对其结果进行展示。下面用 java 单测项目进行举例。

Pipeline代码实现

pipeline{

agent {

label 'master'

}

stages{

stage('iTest源码') {

steps {

sh 'mkdir -p iTest'

dir("iTest"){

git branch:'master', url:'git@github.com:princeqjzh/iTest.git'

}

}

}

stage('构建+单测') {

steps {

sh '''

cd iTest

mvn clean install test

'''

}

}

stage('发布测试记录') {

steps {

junit '**/*.xml'

}

}

}

}

单测结果展示

在任务运行完成之后,进入 Tests 视图查看测试运行结果

单测结果展示

Blue Ocean为开发人员提供了更具乐趣的 Jenkins 使用方式,从基础开始构建,实现了一种全新的、现代风格的用户界面,有助于任何规模的团队实现持续交付。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/151086.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

vm虚拟机及Linux系统安装教程详解

✅作者简介:热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏:Java案例分…

Java集合源码学习(2)ArrayList

1 概述 ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长,类似于C语言中的动态申请内存,动态增长内存。 ArrayList不是线程安全的,只能用在单线程环境下,多线程环境下可以考虑用Collections.s…

Commonsense and Named Entity Aware Knowledge Grounded Dialogue Generation

摘要 motivation: 以外部知识为基础,在对话历史背景下解释语言模式,如省写、回指和共同引用,对对话的理解和生成至关重要。 this paper: 在本文中,我们提出了一种新的开放域对话生成模型,该模型…

【C++】vector的使用及其迭代器失效问题

文章目录一、vector介绍二、vector使用1. 常用构造函数2. 迭代器3. 空间操作4. 增删查改5. 动态二维数组三、vector迭代器失效问题1. 扩容导致迭代器失效2. erase导致迭代器失效3. g对迭代器失效的处理一、vector介绍 vector是表示可变大小数组的序列容器。与数组一样&#xf…

vue打包exe

文章目录一、前言二、实现方法1.跑通示例代码 electron-quick-start<1>clone示例代码<2>进入项目根目录&#xff0c;下载依赖<3>测试运行2.打包自己的 vue 项目3.将vue项目整合到示例代码中打包exe<1>将打包好的 dist 文件夹复制到示例代码 electron-q…

【Linux】gdb调试器的使用

All is well that ends well.结果好就是好。 个人主页&#xff1a;阿润菜菜 简介 GDB是GNU开源组织发布的一个强大的Linux下的程序调试工具。 Windows 操作系统中&#xff0c;我们更习惯使用一些已经集成好的开发环境&#xff08;IDE&#xff09;&#xff0c;如 VS、VC、Dev-…

LeetCode461. 汉明距离,x与y异或,之后用f(x)=x (x−1))次数与Integer.bitCount求二进制1的个数

两个整数之间的 汉明距离 指的是这两个数字对应二进制位不同的位置的数目。 给你两个整数 x 和 y&#xff0c;计算并返回它们之间的汉明距离。 1.x ^ y异或&#xff0c;用f(x)x & (x−1)&#xff09;次数求二进制中1的个数&#xff0c;那么 f(x) 恰为x删去其二进制表示中…

C语言_文件操作(上)

目录 1. 什么是文件 2. 文件名 3. 文件类型 4. 文件缓冲区 5. 文件指针 6. 文件的打开和关闭_fopen_fclose 7. 文件的顺序读写 7.1 fputc 7.2 fgetc 7.3 fputs 7.4 fgets 7.5 fscanf 7.6 fprintf 7.7 fread 7.8 fwrite 7.9 对比scanf/printf、fscanf/fprintf、…

java实现dwg转pdf

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录前言一、无奈选择第二种二、jar引入1.jar地址2.使用jar,完成dwg转为pdf总结前言 由于公司需要最近研究一个cad文件需要在浏览器中展示,经过研究发现大致有两种方式:…

JVM-围观如何打破双亲委派机制

下面手把手用代码来实现打破JVM的双亲委派机制一、Tomcat打破双亲委派机制以Tomcat类加载为例&#xff0c;Tomcat作为web容器&#xff0c; 那么它要解决什么问题呢&#xff1f;Tomcat 如果使用默认的双亲委派类加载机制行不行&#xff1f;1.1 Tomcat作为web容器&#xff0c; 那…

科技云报道:CES 2023:自动驾驶、元宇宙备受瞩目

科技云报道原创。 在被疫情扰乱了两年之后&#xff0c;2023年CES终于回归正常了。 1月5日-8日&#xff0c;CES 2023在拉斯维加斯举行。作为当前全球规模最大、影响力最广泛的消费类电子技术年展&#xff0c;本届展会涵盖的重要主题包括可持续性、数字健康、Web3与元宇宙以及人…

教你如何快速使用店铺管理系统

一、客户管理1、客户资料客户资料报表展示所有新客的数据信息&#xff0c;在此报表可进行会员开卡及新增客户操作&#xff1b;提交会员开卡表单之后&#xff0c;由数据助手更新该客户的会员卡信息至客户信息表单&#xff1b;点击新增客户弹出客户信息表单&#xff0c;默认客户分…

python自学之《21天学通Python》(8)

第11章 文件与文件系统 编写程序来解决实际项目时&#xff0c;很多时候都离不开文件和文件系统的操作。程序本身就是保存在文件系统的文件中的。文件既可以保存程序代码&#xff0c;也可以用来保存各种输入与输出数据。文件和文件系统的处理是任何高级程序设计语言必不可少的一…

Node.js教程笔记(一)

学习目标 1、初识Nodejs 2、fs文件系统模块 3、path路径模块 4、http模块 一、初识Node.js 1.1 浏览器中的JavaScript的运行环境 1、浏览器中的JavaScript的组成部分 2、为什么JavaScript可以在浏览器中被执行&#xff1f; 3、为什么JavaScript可以操作Dom和Bom&#xff…

智公网:公务员的专业限制有哪些?

公务员报考的要求越来越高了&#xff0c;尤其是限制专业这一块&#xff0c;直接阻断了很多人想要跨专业的想法。但是没有办法专业这个条件是硬性的&#xff0c;所以在报考之前一定要看清报考要求。 公务员性质也是比较特殊的&#xff0c;像是一些比较热门专业&#xff0c;在公…

线程安全☞原子性

何为原子性? 原子性&#xff1a;一条线程在执行一系列程序指令操作时&#xff0c;该线程不可中断。一旦出现中断&#xff0c;那么就可能会导致程序执行前后的结果不一致。与数据库中的原子性&#xff08;事务管理体现&#xff09;是相同的 概括&#xff1a;一段程序只能由一条…

Go语言设计与实现 -- 浅谈垃圾回收机制

概述 GC就是垃圾回收机制。而我们知道&#xff0c;内存区域是分成几个块儿的&#xff0c;例如&#xff1a; 堆区&#xff1a;为对象分配内存空间&#xff0c;在栈区和bss区之间存放函数参数&#xff0c;返回值&#xff0c;局部变量全局区&#xff1a;常量区&#xff08;const…

第一批“阳康”涌向三亚,最大的赢家或是携程

在2022年接近尾声时&#xff0c;给居民出行带来近三年困扰的疫情防控&#xff0c;终于迎来了好消息。随着国家“新十条”防控新政策的出台以及优化&#xff0c;过去出门不便、频繁查验核酸码的时代一去不返。尤其是各地逐步放宽出入境管控政策后&#xff0c;在线旅游行业也迎来…

PMP的价值有哪些?

我个人认为&#xff0c;考证只有两个出发点是正确的。一是为了提升自己或者满足自己的兴趣&#xff0c;另一个是和自己的职业规划相关。 比如&#xff0c;有同学想提升自己英语能力&#xff0c;可以考四六级&#xff0c;或者更厉害一点的考雅思、托福。比如&#xff0c;有的同…

电脑自动关机是什么原因?4个解决方法,赶紧码住收藏!

正在使用电脑&#xff0c;突然自动关机。如果没有及时保存好资料&#xff0c;我们辛辛苦苦写的资料就会付诸东流。电脑自动关机是什么原因&#xff1f;其实主要是以下这4个方面的原因。你可以根据下面不同的原因来对症下药&#xff0c;寻找解决电脑自动关机的最好方法&#xff…