Jenkins介绍

Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

Jenkins功能包括:

1、持续的软件版本发布/测试项目。

2、监控外部调用执行的工作

1. jenkins就是基于Java开发的一种持续集成的工具

2. 可以将运维用到的各个脚本整合起来,并且可以通过页面方式集中管理,而且可以也可以实现和gitlab、github交互,也可以实现自动编译、部署程序

 

持续集成

持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。

持续集成

持续集成:Continuous Intergration (CI)

持续交付:Continuous Delivery(CD)

持续部署:Continuous Deployment(CD)

集成是指软件个人研发的部分向软件整体部分交付,以便尽早发现个人开发部分的问题;
部署是代码尽快向可运行的开发/测试节交付,以便尽早测试;
交付是指研发尽快向客户交付,以便尽早发现生产环境中存在的问题。
如果说等到所有东西都完成了才向下个环节交付,导致所有的问题只能再最后才爆发出来,解决成本巨大甚至无法解决。
而所谓的持续,就是说每完成一个完整的部分,就向下个环节交付,发现问题可以马上调整。是的问题不会放大到其他部分和后面的环节。

持续集成流程

1. 提交(git)

2. 测试

3. 构建(jenkins)

4. 测试

5. 部署(ansible,shell,puppet)

6. 回滚(ansible)

第一步:关闭防火墙

[root@ken ~]# systemctl stop firewalld
[root@ken ~]# setenforce 0

第二步:安装java环境

[root@ken ~]# yum install java -y

第三步:上传安装包及解压安装

[root@ken ~]# ls | grep jenkins
jenkins-2.138.3-1.1.noarch.rpm
[root@ken ~]# rpm -ivh jenkins-2.138.3-1.1.noarch.rpm

第四步:重启jenkins,端口号是8080

第五步:浏览器访问

第六步:linux中找到上述密码并复制进需要输入密钥的框中

[root@ken ~]# cat /var/lib/jenkins/secrets/initialAdminPassword
f10ee04f771042638d1c152355efc8c8

选择推荐插件安装或者选择自己安装插件。然后创建用户和密码,点击保存并完成jenkins就初步完成了。

Jenkins获取插件并安装

一、查看插件信息

如果没有选择推荐的插件,里面已安装显示为空,下面的链接为一些好用的插件包,插件都以hpi结尾。

http://updates.jenkins-ci.org/

二、根据所需选择自己的安装包

三:把下载的插件传入到你的linux系统中

[root@ken ~]#ls /var/lib/jenkins/plugins/

[root@ken ~]# tar xf plugins-2.138.3.tar.gz 
[root@ken ~]# cp plugins/* /var/lib/jenkins/plugins/ -a    #将解压过的插件包都复制到jenkins的插件目录下

第四步:重启jenkins

[root@ken ~]# systemctl restart jenkins      #端口号8080

重新查看已安装,如果插件信息没有更新,可手动刷新几次试试。

jenkins添加凭据

一、凭据介绍

有许多第三方网站和应用程序可以与 Jenkins 进行交互,例如程序代码仓库,云存储系统和服务等。

此类应用程序的系统管理员可以在应用程序中配置凭证以专供 Jenkins 使用。通常通过将访问控制应用于这些凭证来完成这项工作,以“锁定”Jenkins可用的应用程序功能区域。一旦 Jenkins 管理员(即管理 Jenkins 站点的 Jenkins 用户)在 Jenkins 中添加/配置这些凭证,Pipeline 项目就可以使用凭证与这些第三方应用程序进行交互。

Jenkins 中保存的凭证可以用于:

  • 任何适用于 Jenkins 的任何地方(即全局证书)
  • 特定的 Pipeline 项目
  • 特定的 Jenkins 用户

二、凭据的添加

可以给gitlab创建一个凭证,用户是gitlab用户名,密码是gitlab密码这样在调用git做持续集成的时候就可以直接使用该凭证了

第一步:创建凭证

进入你的jenkins的首页,点击左边栏的凭证

选择全局凭据,不设局限。

新建任务演示

如果你想使用jenkins完成日常的工作,那么你必须要学会如何使用任务。

所谓的任务你可以这样理解就是你需要执行的一系列动作

第一步:点击新建任务

二、

输入你要创建的任务名称

输入完成点击下方的确定即可

注意:名称不能有空格

这个名称就是一个目录,接下来我们会演示git,git拉取到的内容就是保存了这个同名目录下面 **

第四步:部署任务

描述随意的介绍一下动作的内容

源码管理一般根据需求选择,这里的简单演示选择无

选择以脚本的形式部署动作,下面的命令意思是

在workspace目录下的任务名目录下创建xixi文件,然后写入‘1111’内容。 

# workspace与plugins为同级目录,都在/var/lib/jenkins/下

 

第五步:保存任务后,去构建任务。

build now意思是立即构建,jenkins会执行此任务,下面显示构建进度,显示蓝色为成功,红色失败。

如果失败,可以点击进去查看控制台输出,根据行任务的所有信息来解决报错。

第六步:点击控制台输出查看任务构建过程。

有时候会需要更改任务动作的细节,可以选择点击任务名重新配置。

需要查看任务构建的历史等都可以查看到,这里就不一 一细说了。

jenkins持续集成、插件以及凭据的更多相关文章

  1. Jenkins持续集成企业实战系列之Jenkins插件下载及邮件配置-----05

    注:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.    最初接触Jenkins也是由于公司需求,根据公司需求Java代码项目升级的.(公司是 ...

  2. [Jenkins]持续集成环境下fingbug插件的安装使用与配置

    参考:https://wiki.jenkins.io/display/JENKINS/FindBugs+Plugin 突然,天降杂事.我是想安安静静的做个美丽的测试...但是事与愿违,项目经理叫我帮忙 ...

  3. Jenkins持续集成学习-Windows环境进行.Net开发1

    目录 Jenkins持续集成学习-Windows环境进行.Net开发 目录 前言 目标 使用Jenkins 安装 添加.net环境配置 部署 结语 参考文档 Jenkins持续集成学习-Windows ...

  4. Jenkins持续集成学习-Windows环境进行.Net开发4

    目录 Jenkins持续集成学习-Windows环境进行.Net开发4 目录 前言 目标 Github持续集成 提交代码到Github 从Github更新代码 git上显示构建状态 自动触发构建 Gi ...

  5. 基于Kubernetes/K8S构建Jenkins持续集成平台(下)

    基于Kubernetes/K8S构建Jenkins持续集成平台(下) Jenkins-Master-Slave架构图回顾: 安装和配置NFS NFS简介 NFS(Network File System ...

  6. python_java_selenium_ jenkins持续集成Firfox_chrome浏览器不显示的解决方法?

    python_java_selenium_ jenkins持续集成Firfox_chrome浏览器不显示的解决方法: 原因:因为jenkins是用windows installer 安装成 windo ...

  7. jenkins持续集成源码管理选项为None,构建失败找不到git.exe解决办法

    我的jenkins版本为Jenkins ver. 2.19.1 1.源码管理选项只有None的解决办法: 在插件管理中心,搜索对应的源码管理插件这里以git为例,搜索git plugin点击右下角的安 ...

  8. Jenkins持续集成

    Jenkins持续集成 & .NET   最近受累于测试环境每次发布都很麻烦,而且我们有多个测试环境,因此专门抽时间做了Jenkins的配置和研究. 折腾了两天终于绿灯以后,先来个截图,Blu ...

  9. Docker+Jenkins持续集成环境(5): android构建与apk发布

    项目组除了常规的java项目,还有不少android项目,如何使用jenkins来实现自动构建呢?本文会介绍安卓项目通过jenkins构建的方法,并设计开发一个类似蒲公英的app托管平台. andro ...

  10. 行为驱动:Cucumber + Selenium + Java(二) - extentreports 测试报告+jenkins持续集成

    1.extentreports 测试报告 pom文件 <dependency> <groupId>com.vimalselvam</groupId> <art ...

随机推荐

  1. [Python3 填坑] 006 “杠零”,空字符的使用

    目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 \0 是空字符,输出时看不到它,但它占 1 个字符的长度 2.2 \0 "遇八进制失效" 2.3 \0 与 '' 不 ...

  2. 解决在Tomcat中的server.xml中修改了配置,启动后还原的问题

    正确答案,你要在eclipse的项目Servers中,找到你的tomcat,打开有各种配置文件,在这里改,才会在使用eclipse启动tomcat后不会自动恢复.

  3. java学习day3运算符

    一.算数运算符 1.对于除号“/”,它的整数除和小数除是有区别的:当整数除以整数的时候,会把结果的小数部分舍弃,只保留整数部分,例如: int x=3510; x=x/1000; 输出结果为x=3; ...

  4. ARM汇编1

    一. 指令和伪指令 1.1. 指令 a. (汇编)指令是CPU机器指令的助记符,经过编译后会得到一串10组成的机器码,可以由CPU读取执行. 1.2. 伪指令 b. (汇编)伪指令本质上不是指令(只是 ...

  5. 洛谷 P3182 [HAOI2016]放棋子(高精度,错排问题)

    传送门 解题思路 不会错排问题的请移步——错排问题 && 洛谷 P1595 信封问题 这一道题其实就是求对于每一行的每一个棋子都放在没有障碍的地方的方案数. 因为障碍是每行.每列只有一 ...

  6. Python中yield和return两者之间区别

    在任何函数都有返回值,一般都是想到return 关键词,在函数生成器中有个关键词 yield 也可以做返回值,在函数没调用之前,是不会输出任何东西的 1,return 用法 def stu(): re ...

  7. (一)WebPack4.0 从零开始

    一:WebPack基础知识 (1):webpack的定义 webpack官网给出的定义是:webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler). ...

  8. 手写符合Promise/A+规范的Promise

    const PENDING = "pending"; const RESOLVED = "resolved"; const REJECTED = "r ...

  9. 如何官网下载chrome谷歌浏览器离线安装包

    目录 1. 下载步骤 2. 将语言更改为中文 3. 插件 3.1. chrome 网上应用店 3.1.1. google-access-helper 4. 更新失败 1. 下载步骤 注意 需要梯子才能 ...

  10. MemCache--01 解决session

    目录 1. MemCache介绍 2.Session与Cookie介绍 3. 安装部署Nginx 4. 安装部署PHP 5. 安装Mariadb数据库 6. 部署网站(phpMyAdmin) 7. 部 ...