从前面的小节中我们看到在创建 Jenkins 任务的时候有好几种类型,如果你专门安装了 Maven 相关插件,可能还会有一个【构建一个 maven 项目】的任务类型,那这些任务类型究竟有何区别,以及我们在创建任务时这些类型该如何选择呢?各个类型的具体区别其实看描述就能有个大概的了解,我这里就不重复描述了,最有效的做法就是每种类型的任务都建立几个,测试下看看有什么差异,这种方式很快就会了解不同类型任务的功能特性。



我这里主要介绍下【构建一个自由风格的软件项目】、【流水线】、【文件夹】这三种类型。

构建一个自由风格的软件项目:这是 Jenkins 的主要功能, Jenkins 将会结合任何 SCM 和任何构建系统来构建你的项目,甚至可以构建软件以外的系统。

流水线:精心地组织一个可以长期运行在多个节点上的任务。适用于构建流水线(更加正式地应当称为工作流),增加或者组织难以采用自由风格的任务类型。

文件夹:创建一个可以嵌套存储的容器。利用它可以进行分组。 视图仅仅是一个过滤器,而文件夹则是一个独立的命名空间, 因此你可以有多个相同名称的的内容,只要它们在不同的文件 夹里即可。

从描述中我们可以认为【文件夹】类型的任务就是一个独立的集合,它可以针对这个文件夹有自己独立的特殊配置文件,【文件夹】类型任务下面可以再建立所有类型的任务。自由风格类型的任务所有配置都在 Jenkins 上面进行配置修改,流水线类型的任务的配置是通过一种特定的语法脚本来描述。这些脚本文件可以通过代码仓库进行管理起来。我们可以创建一个【流水线】类型的任务,看看详细情况:

新建一个【流水线】类型的任务,名称为 jenkins-pipeline-test-task



可以看到很多的配置选项都没了,就剩一个编写流水线脚本的文本框:



展开【try sample Pipeline...】选项,选择【Hello World】,我们会看到文本框中会自动填入一段流水线代码:



【保存】后再【立即构建】看看效果吧,日志输出了 "Hello World":



【流水线】类型的任务可以做到一些【自由风格】任务做不了的事情,并且一个最大的好处就是可以做到"配置及代码",【流水线】类型的脚本文件除了直接在文本框里面输入还可以通过代码仓库进行管理。Jenkins 流水线任务支持脚本式的语法和申明式语法,两种语法的区别简单讲就是申明式语法有严格的语法结构,更加标准化,而脚本式语法就更加随意些。两种语法的具体区别可以看看官网的说明 https://www.jenkins.io/zh/doc/book/pipeline/syntax/#compare,在我们的后面学习中,我都将采用申明式语法,并且官方也是推荐采用申明式语法。

Jenkins 基础篇 - 任务分类的更多相关文章

  1. Jenkins: 基础篇(环境配置)

    自动化领域比较有影响力的开源框架jenkins,确实比较强大,易用.很多公司将其用来做持续即成CI(continuous integration).为了拓展和强化自己的软件设计生态系统,也将很久前使用 ...

  2. Jenkins 基础篇 - 插件安装

    这一小节主要介绍 Jenkins 插件的安装,登录到 Jenkins 后,依次进入到[系统管理]→ [插件管理]→ [可选插件],在这里可以看到所有的 Jenkins 插件,如下图: 我们在最开始安装 ...

  3. Jenkins 基础篇 - 小试牛刀

    现在我们来创建一个简单的 Jenkins 任务,这个任务输出 Java 版本信息和系统信息,通过这个任务我们先了解创建 Jenkins 任务的流程,以及了解一些对任务的基础设置,接下来就是演示任务的整 ...

  4. Jenkins 基础篇 - 任务创建

    前面了解了 Jenkins 上各种任务的区别后,我们就来实践应用下,先创建一个[文件夹]类型的任务,将我们目前的一些基础的演示任务[移动]到文件夹里面去,这样可以先做个简单的分类. 新建一个[文件夹] ...

  5. Jenkins 基础篇 - 环境准备

    前期准备 为了开发这套课程,我专门购买了一台二手戴尔服务器 Dell R720,同时把废弃多年的笔记本电脑也利用了起来.当然如果自己没有多余的电脑,也可以在自己电脑上安装 Vmware Worksta ...

  6. Jenkins 基础篇 - 安装部署

    Jenkins 安装 Jenkins 支持主流的 Linux 发行版系统,同时还支持 macOS.Windows.和 Docker 运行. 具体系统的 Jenkins 安装包可以去官网下载 https ...

  7. Jenkins 基础篇 - 基础设置

    站点设置 刚搭建好 Jenkins 环境,你还需要做一些简单设置,让我们的 Jenkins 看起来是这么一回事,特别是你要用于生产环境的时候.首先就是域名配置,如果你为 Jenkins 服务分配了一个 ...

  8. Jenkins 基础篇 - Server 配置

    我们使用 Jenkins 部署服务之前要先配置我们的目标服务器,配置目标服务器也很简单,就是将服务器的 IP.账号密码或者账号密钥配置在 Jenkins中.在演示服务器配置之前我们要先知道 Linux ...

  9. Jenkins 基础篇-凭证配置

    我们在正式开始使用 Jenkins 之前还要先配置一些凭证,这些凭证的作用主要是用于认证,例如我们要从代码仓库拉取代码,就需要用到代码仓库的账号密码或者密钥:我们要登录远程服务器也需要用户名密码或者密 ...

随机推荐

  1. apktool 回编译报错:No resource identifier found for attribute 'xxxxxx' in package 'android' W:

    C:\xxxx\app-release\res\layout-v26\xxxx.xml:5: error: No resource identifier found for attribute 'xx ...

  2. pta 简单求和

    6-1 简单求和 (10 分)   本题要求实现一个函数,求给定的N个整数的和. 函数接口定义: int Sum ( int List[], int N ); 其中给定整数存放在数组List[]中,正 ...

  3. 使用C# (.NET Core) 实现装饰模式 (Decorator Pattern) 并介绍 .NET/Core的Stream

    该文章综合了几本书的内容. 某咖啡店项目的解决方案 某咖啡店供应咖啡, 客户买咖啡的时候可以添加若干调味料, 最后要求算出总价钱. Beverage是所有咖啡饮料的抽象类, 里面的cost方法是抽象的 ...

  4. go语言的初体验

    分享最近学习 Go 语言的心得和体会,适合有编程基础的人,因为这里只做经验性的总结概述,不做基础教学的入门知识讲解,如果想要学习编程语言的基础知识,请出门左转进入官方文档,查看基础教学文档. Go 概 ...

  5. linux安装nginx 并配置文件服务器和代理服务器

    linux安装nginx搭建服务并实现文件服务器和代理服务器配置 1.课题的背景和意义 由于编码过程中需要进行文件上传服务,文件上传后 需要有http资源的路径需要访问.原则上可以通过Apache . ...

  6. 手摸手教你阅读和调试大型开源项目 ZooKeeper

    本文作者:HelloGitHub-老荀 Hi,这里是 HelloGitHub 推出的 HelloZooKeeper 系列,免费开源.有趣.入门级的 ZooKeeper 教程,面向有编程基础的新手. 项 ...

  7. Python 多线程(一)

    Python多线程(一) 目录 Python多线程(一) 线程 Python线程模型 Python虚拟机按照下面所述方式来切换线程 Threading模块 未引进线程 结果 引入线程 方式一:创建Th ...

  8. Windows命令行学习(系统信息收集)

    echo off :关闭回显 echo on :开启回显 net user :显示主机的电脑用户 ipconfig /displaydns:后面的 /displaydns是显示当前电脑所缓存的dns信 ...

  9. 全网最清楚的:MySQL的insert buffer和change buffer 串讲

    目录 一.前言 二.问题引入 2.1.聚簇索引 2.2.普通索引 三.change buffer存在的意义 四.再看change buffer 五.change buffer 的限制 六.change ...

  10. 击鼓传花联想到了Java设计模式:责任链模式

    目录 应用场景 简单示例 责任链模式 定义 意图 主要解决问题 何时使用 优缺点 击鼓传花的故事 应用场景 http web请求处理,请求过来后将经过转码.解析.参数封装.鉴权等一系列的处理(责任), ...