首页>>互联网>>DevOps->公司新人jenkins使用教程?

公司新人jenkins使用教程?

时间:2023-12-11 本站 点击:0

自动化部署工具jenkins,从此摆脱重复单调的工作

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

有了它你可以免除手工编译,发布代码,上线更容易。节省的时间你可以喝杯咖啡,放松一下 ^_^

道路千万条,熟悉第一条,我这里使用 Red Hat 家族衍生的 centos 上安装Jenkins。

这里可以下载rpm包:

也可以如下操作:

安装

将Jenkins存储库添加到yum repos,并从此处安装Jenkins。

安装稳定版

还有一个LTS YUM资源库的LTS版本线

安装Java

Jenkins需要Java才能运行,但默认情况下某些发行版不包含此内容。要安装Open Java Development Kit(OpenJDK),请运行以下命令:

安装完成后Jenkins 启动之前的注意事项

默认情况是Jenkins是使用Jenkins用户启动的,但这个用户目前系统并没有赋予权限,这里我们将启动用户修改为root;另外Jenkins默认端口是8080,这个跟tomcat的李拿袜默认端口冲突,我们也修改一下默认端口。

找到 JENKINS_USER 和JENKINS_PORT ,修改为root和你需要的端口

启动/停止

注意:如果收到以下错误消息,请确保已安装Java:

Starting jenkins (via systemctl): Job for jenkins.service failed. See 'systemctl status jenkins.service' and 'journalctl -xn' for details.[FAILED]

禁用防火墙

有关CentOS Java的重要说明

Jenkins需要Java才能运行,但yum install jenkins不强制已经安装了java。检查以确保您已通过运行安装了hava java java -version。为了进一步使CentOS用户感到困难,默认的CentOS版本的Java与Jenkins不兼容。Jenkins通常最适合使用Java的Sun实现,由于许可原因,它不包含在CentOS中。

如果您获得类似于以下内容的输出,则表示您使用的是Java的默认(GCJ)版本,该版本不适用于Jenkins:

要解决此问题,您可能需要删除GC的GCJ版本并安装Sun兼容版本。

如果收到上面的输出,请卸载默认的java:

然后在卸载Java之后(或者如果你根本没有安装Java那么开始)。您需要安装与Sun兼容的Java版本。最简单的方法是使用OpenJDK,它可以通过EPEL存储库获得(或者您可以直接从Oracle安装官方 RPM)。要安装OpenJDK,请运行以下命令:

根据您的CentOS版本,OpenJDK的软件哪激包名称可能有所不同。使用yum search openjdk来检查包的名称。如果通过yum找不到OpenJDK,则可能需要安装EPEL yum存储库。安装后,您应该能够获得以下java -version输出:

Ok,到此jenkins安装完成。

接下来你可以在浏览器地址中输入Jenkins网址,如:IP:端口,将显示如下内容:

拷贝指定文件密码,进入用户自定义插件界面,建议选择安装官方推荐插件:

接下来是进入插件安装进度界面:

等待一段时间之后,插件安装完成,配置用户名密码:

OK,你可以使用jenkins来编译、发布你的代码了。oh,它支持从代码库中直接拉取代码,git、svn都支持。赶快使用你的Spring boot、go试试吧。

jenkins+git详细配置及使用方法是什么?

方法/步骤

安装jenkins

参照官网wiki,如下图:

安装后的jenkin在/var/lib/jenkins启动关闭jenkins:

sudo /etc/init.d/jenkins startsudo /etc/init.d/jenkins stop

Jenkins安装完毕后,可以通过浏览器,例如192.168.16.183:8080,此处IP地址为Jenkins所在机器的IP地址。

配置jenkins

Jenkins安装好之后扰没,需要为其安装gitlab插件:在主面板上点击Manage Jenkins - Manage Plugins,选择安装Gitlab Plugin和Gitlab Hook Plugin。

搭建gitlab源码服务器

参照官网wiki,如下图:

安装完之后默认是只能本机通过localhost访问的,修改/etc/gitlab/gitlab.rb中的对应配置项如下:external_url ‘ ip:8080’nginx[‘listen_addresses’] = [‘your ip’]nginx[‘listen_port’] = 8080

配置SSH key

由于jenkins需要从gitlab上拉取代码,通过ssh方式。所以需要在jenkins机器上安装git,并且将jenkins机器上生成的ssh密钥的公钥(id_rsa.pub中的内容)添加到gitlab的ssh keys中:

在jenkins安装机器上安装git

sudo apt-get install git

配置username和Email,生成ssh密钥

git config –global user.name “your name”git config –global user.email “your email”ssh-keygen -t rsa -C “10010@gmail.com”

拷贝公钥迅李毕内容填到gitlab服务器

配置GitLab connections连接到gitlab拉取代码使用,配置证书,使用gitlab api token。token从gitlab中获取,在个人设置中有Access Token一栏,创建一个token,填入jenkins的系统管理 - 系统设置 - gitlab配置中。

Test Connection,显示success则表示配置成功。

测试集成环境

新建一个项目,源码管理选git,填入对应的仓库URL,配置 Credentials,这里可以选择用ssh username with private key(其他的我也没试成功过。。),输入用户名和对应的私钥即可

接下来构建触发器选择Build when a change is pushed to GitLab. GitLab CI Service URL: …

添加hook

由于我们的jenkins任务由webhook事件来通知,所亩芹以需要将上面的CIservice URL添加到gitlab对应项目的Integrations配置中。

RUN

配置完之后apply,保存。jenkins任务就新建完成了此时我们在本地push代码到gitlab服务器,可以看到:成功地触发一次jenkins构建,效果如下:

至此jenkins+gitlab持续集成环境搭建完成!

Jenkins持续集成使用指南

1 、 系统 参数

(1)构建服务器访问路径: 

(2)JDK版本(根据各产品的具体要求选择):

1) jdk1.7.0_60

(3)Maven版本(根据各产品的具体要求选择):

1) apache-maven-3.2.3

2) apache-maven-3.2.2

3) apache-maven-3.2.1

4) apache-maven-cif

(4)Jenkins信息:

1) Jenkins version 1.609   可升级

2) $Jenkins_home:  home/ciserver/.jenkins

3)Jenkins工作目录:/app/Jenkins/

2 、 授权 策略

(1)Configure Global Security中的授权策略,采用Role_Based_Strategy方式;

   (2)根据人员的角色和职责建立Global roles;

   (3)根据不同的产品系统及其开发阶段,建立散正裂project_roles;

(4)为jenkins账户建立global role和project role的授权矩阵,即用户访问权限矩阵;

(5)用户界面是基于他拥有的权限和任务所属的阶段和所归属的冲闭视图(View)进行显示;

Jenkins构件任务命名规范参考3.2章节,jenkins账户管理参考第4章节。

3、构建管理

3 .1 构建 命名 规范

用户登录后,界面所能执行的操作的基于以下2点,缺一不可:

(1)用户所拥有的权限;

(2)根据命名规则过滤后的任务视图和任务;

请务必按照下面的命名规范进行任务的创建和修改。

3 .1.1 任务视图 命名

任务视图命名格式:

产品/系统名称(缩写)_阶段,阶段缩如(DEV、ST、UAT、PRD),如下图红线标注所示:

图3-1 任务视图命名示例

3. 1. 2 任务 命名

任务的命名格式:  

系统任务:阶段缩写_产品/系统(缩写);

子系统和模块任务:阶段缩写_产品/系统缩写_子系统/模块缩写

3 .2 参数化构建

3.2.1   构建 参数列表

3.2.1 常 用 的参数 配置

3 .3 分布式构建

     考虑到构建效率和后续构建任务的扩张;通过配置jenkins Master-slave架构进行分布式构建;

DEV阶段的构建在slave进行。

3 .3.1 slave节点 配置

3 .3.2 slave节点任务 配置

(1)DEV阶段的构建,在206.10jenkins服务器上建立slave节点,将各产品部的构建任务分配到对应的节点去运行(包括工作空间,本地仓库,编译运行环境);

在DEV阶段清敬的任务配置中,勾选“Retrict where this project can be run”, Label Expression填写各slave标签名。

4 、 jenkins账户 管理

(1)jenkins账户统一由组织级管理员建立和维护,jenkins账户命名格式为:姓名全拼;用户可登陆后修改;

(2)jenkins账户按照用户类别分为,admin,系统管理员,构建人员,guest;

     1) Admin负责整个jenkins服务器的管理;

2)系统管理员的具有其负责的产品库的4个阶段所有任务的创建,配置权限;

3)构建人员为产品开发人员,根据需要开放四个阶段的构建任务的执行和配置权限;

4)guest账户仅供有查看需求的员工使用;

5)普通用户账户权限申请和权限变更,由系统管理员或分支管理员向组织级CM申请。

5、J enkins基本操作

5.1 登录jenkins

申请账户后,在浏览器中输入 http://**.**.**.**:8080/ ,在弹出的对话框中输入用户名和密码登录。

5.2   账户 密码重置

5. 3 新建任务

5. 4 配置任务

在任务列表中单击你要配置的任务,在左侧功能列表中单击配置选项,如下图所示:

下图将会对任务配置中涉及到各个步骤进行详细讲解:

5. 5   构建 任务

任务配置完成后,点击左上角功能列表中的,立即构建,即可执行相关任务,如下图所示:

5. 6 查看 构建日志

5.7 查看 构建 结果

如何利用jenkins来做android自动化

环境配置

启动Jenkins

1、 安装jdk

从略,建议1.6或以上版本,配置好环境变量。

2、 安装tomcat

从略,安装完调试下tomcat是否正常。

3、 安装ant

下载zip包,解压后配置好环境变量。

4、 安装jenkins

下载war包,命名为Jenkins,拷贝到tomcat/webapps目录下。

5、 安装Android SDK

下载安装,完成后配置好Android_SDK_HOME环境变量。此步骤主要用于进行android自动化测试,若不进行此项可略过。

安装完成后启动tomcat/bin/startup.bat文件(linux下是startup.sh),在浏览器输入,8080为tomcat端口,即可访问jenkins服务器。

配置Jenkins

1、 JDK配置

新增JDK,指定JDK名字和JAVA_HOME

2、 ANT配置

新增ANT,指定ANT名字和ANT_HOME

3、 Maven配置

从亩凳略,本文未使用到Maven,具体配置方法参考Google。

4、 Subversion

选择1.6版本SVN,勾慧州选Update default Subversion credentials cache after successful authentication

5、 邮件通知

填写SMTP server、Default user E-mail suffix、System Admin E-mail Address、Jenkins URL、勾选Use SMTP Authentication,填写User Name、Password、Use SSL、SMTP port、Chareset(UTF-8) 、Default Content Type(默认)、Default Recipients(默认收件人),配置完成后可进行测试邮件。

6、 Jenkins URL

配置该URL,用于别人访问。

插件管理

1、 Hudson Subversion Plug-in,jenkins的svn插件。

2、 Android Emulator Plugin,android模拟器插件。

3、 JUnit Attachments Plugin,junit测试报告附件插件。

4、 Email-ext plugin,邮件扩展插件。此处说明下,默认Jenkins只会发送构建失败的邮件,我们需安装此插件才能自定义不同场景。

5、 Deploy to container Plugin远程发布插件。

自动化测试

打包源工程

Android程序

本小节讲诉如何打包一个Android工程,当前使用的是ant进行编译源码。

1、 首先构建一个自由风格的Job。

2、 添加源码路径,选择所使用的版本控制器,输入源码路径。

3、 构建触发器可根据需要选择是否定时构建。

4、 构建环境,此处Jenkins安装了Android Emulator Plugin插件,可以启动已有模拟器或添加新的模拟器,本文案例中使用真机调试。

5、 构建,卸载手机中原程序 adb –s uninstall com.XXXXXX

6、 生成bulid.xml文件,-p后面跟工程所在的本地jenkins下路径

android update project -n *** c:\被测工程Job路径\workspace

7、 Ant进行编译程序,并安装到当前手机中

ant debug install -f c:\被测工程Job路径\workspace\build.xml

8、 构建后操作,本案例中构建完成后自动启动构建下一个测试Job

Bulid other projects,选择测试工程的Job.

打包前耐蔽测试工程

Android程序

本小节讲诉如何构建一个Android测试工程,包括邮件发送和测试报告展示。

1、 构建步骤1-7和Android程序章节一样,从略。

2、 本文案例中测试程序是通过命令行启动运行的,所以在此处增加一个批处理运行。P.S. adb shell am instrument -w -e class com.megafon.test.MegafonTest#testDeleteContact com.megafon.test/android.test.InstrumentationTestRunner ,此处是通过批处理来单独运行一个个的测试用例。避免了Junit3的无序执行的问题。

3、 删除Workspace中原来存在的测试报告文件,一般不删除也会覆盖。

如何让测试程序生成xml格式的测试报告,其他文章会重点介绍。

4、 从手机中拷贝测试报告,最终测试是在手机上运行,所以报告也生成在手机中,使用adb pull命令把测试报告全部拷贝到workspace下制定目录。

5、 构建后操作,发布测试报告,如果报告中包含附件,此处使用到JUnit Attachments Plugin插件。

6、 邮件通知,此处使用到Email-ext plugin插件,前面的默认,直接使用我们在系统管理里面设置的默认值。

7、 点击右下角高级按钮,可选择不同场景下发送邮件。

8、 测试结果展示,在本次构建的控制台可以显示当前所有的构建日志。

9、测试报告点击Test Result可以显示所有测试记录。

Jenkins怎么安装

一、Windows环境中安装Jenkins

在最简单的情况下,Jenkins 只需要两个步骤:

1、下载最新的版本(一个 WAR 文件)。Jenkins官方网址:

2、命运行运行 java -jar jenkins.war (默认情况下端口是8080,如果要使用其他端口启动,可以通过命令行”java –jar Jenkins.war --httpPort=80”的方式修改)

注意:Jenkins 需要运行 Java 5以及以上的版本。

还有一种安装方式就是将下载的war包文件部署到 servlet 容器,然后启动容器,在浏览器的URL地址栏中输入类似这样的地址即可。下图是安装成功后的界面(使用的是Linux+Tomcat6+Java6环境):

二、Jenkins配置

在配置前的一些话:Jenkins的配置不可能全部都说到的,大部分配置是有英文说明的,点击输入框后面的问号就可以看见了。英文不会用斗源翻译工具,多测试几次,你就懂了。

2.1 系统管理

在已运行的Jenkins主页中,点击左空孙态侧的系统管理进入如下界面:

2.1.1 提示信息

Ps:版本不同提示的消息有可能不同

2.1.1.1 Utf-8编码

Your container doesn't use UTF-8 to decode URLs. If you use non-ASCII characters as a job name etc, this will cause problems. See Containers and Tomcat i18n for more details.

Jenkins建议在tomcat中使用utf-8编码,配置tomcat下conf目录的server.xml文件

Ps:如果Job的控制台中文输出乱码,请将URIEncoding=”utf-8”更改为useBodyEncodingForURI="true"

2.1.1.2 新的版本

New version of Jenkins (1.518.JENKINS-14362-jzlib) is available for download (changelog).

提示有新的版本可以下载了,喜欢更新的点击download去下载吧!

2.1.1.3 安全设置

詹金斯允许网络上的任何人代表您启动进程。考虑至少启用身份验证来阻止滥用。点击Dismiss忽略该消息,点击Setup Security进入设置界面.详细设置请参考 Configure Global Security(安全设置) 章节

2.1.2 系统设置

在已运行的Jenkins主页中,点击左侧的系统管理—系统设置进入如下界面:

ps:jenkins的根目录,默认地在C:\Documents and Settings\AAA\.hudson。

2.1.2.1 JDK、Maven、Ant配置(图为Windows环境)

配置一个JDK、Ant、Maven实例,请在每一节下面单击Add(新增) 按钮,这里将添加实例的名称和绝对地址。下图描述了这两个部分。

点击“安装”,添加相应的设置,如下图:

JDK别名:给你看的,随便你自己

JAVA_HOME:这个是本机JDK的安装路径(错误的路径会有红字提示你的)

自动安装:不推荐这个选项

注:Ant、Maven的配置是一样的(JDK去oracle官网下载,Ant与Maven去apache官网下载)

Ps:每个文本框后面都有个问号,点击问号就会出现帮助信息

2.1.2.2 邮件通知配置(默认)

2.1.2.2.1 配置发件人地址

系统管理员邮件地址(System Admin e-mail address):Jenkins邮件发送地址,切记,必须设置。

2.1.2.2.2 配置邮件通知

设置:SMTP服务器,勾选"使用SMTP认证",输入用户名与密码

Ps:小技巧:用户默认邮件后缀配置了后,以后你填写邮件地址只需要@之前的就行了

2.1.2.3 Subversion配置

Subversion Workspace Version:Subversion 的版本号,选择你对应的版本号就行了

2.1.3 Configure Global Security(安全设置)

在已运行的Jenkins主页中,点击左侧的系统管理—Configure Global Security进入如凯碰下界面:

设置如上图,保存后系统管理中就出现管理用户的选项。页面右上角也会出现登录/注册的选项。

此设置:只有登录用户可以做任何事

iOS-Jenkins-TestFlight自动打包流程

一、准备一台mac电脑

二、安装jenkins

打开终端运行:

brew install Jenkins

如果没有安装brew,请前往 brew 根据提示安装。

至少举族衡需要安装java1.8 ,如果没有安装会有提示, java

java安装完毕,链接 launchd 配置文件

启动jenkins

jenkins

打开Safari输入:

就能看到jenkins已经运行起来了,如果你更换了端口就是你后来设置的端口。

接下来打开Jenkins后会让去一个填写password的页面如下图,存储password的地方就是图片上那行红色字体目录下,使用终端 cat + 红色字体路径就看到了

然后将我们得到的password输入到“Administrator password“中,即可进入如下界面,接着安装一些建议的插件(左边的),请等待,并全部安装成功在进行下一步。

安装完成之后,输入账户密码,登陆。开始jenkins

二、cocoapod环境安装

项目中一般会使用cocoapod管理第三方库。这个时候如果使用jenkins自动打包,就需要安装好cocoapod环境

三、jenkins使用

1、安装插件

Keychains and Provisioning Profiles Management

Xcode integration

在系统管理- 插件管理中搜索插件

配置Keychains and Provisioning Profiles Management

请先配置好p12和Provisioning Profiles文件

需要上传login.keychain文件,该文件获取方法,在终端中输入

cd ~/Library/Keychains

将login.keychain文件upload之后,会出现下图的界面,根据需要将证书添加进去即可,但是由于macOS10.12以及正做以后的系统里面没有login.keychain文件,只有login.keychain-db,可以复制出来删除-db,upload就好了。(上传keychain,路径穗源用自己改名后的那个)

然后添加Provisioning Profiles,上传方法和上传login.keychain一样,去选择Provisioning Profiles文件,然后upload,然后结果如下图,蓝色框内的是固定格式的/Users/用户名/Library/MobileDevice/Provisioning Profiles

配置好之后保存即可

3.开始配置任务

创建一个任务,自由风格的任务

General

创建一个自由风格的任务,然后在选择丢弃旧的构建,至于天数和保持的最大个数,按照自己的需求来就好

源码管理

接下来是源码管理,在Repository URL里面添加你的git地址,我这里添加的是http的,如果你的项目是使用的ssh的,那么就将git开头的地址填写上,然后点击Add添加你的git帐号,如果你的事ssh的,将ssh的密匙填写上,具体的自己百度一下就好咯,我就不多写了,结果如图

构建触发器

接下来是构建触发器,也就是什么时候触发自动打包我这里填写的是H 20 * * 这个意思就是H小时然后,后面跟着数字,在后面就是日月年, 代表的我认为是每次都触发,也就是每天每月每年,但是Jenkins的时间不是绝对的,一般都是在随机在半点,也就是设置20点,大概会在20:30分左右会触发,如果需要两个时间,那么格式可以这样H 20,22 * * *结果如图

构建环境

在构建环境里面勾选Keychains and Code Signing Identities和Mobile Provisioning Profiles,Keychains and Code Signing Identities是打包需要的证书,Mobile Provisioning Profiles是打包需要的配置文件,都是可以自己选择的,我的如图

构建环境第一次Code Signing Identity和PP文件可能有些不一样。应用,保存一下就可以了。

添加脚本

执行cocoapod脚本必须要在第一个

执行打包并且上传到TestFlight脚本

关于exportOptionsPlist

请参考 exportOptionsPlist

把exportOptionsPlist添加到infoPlist同一层并push到git

关于

问题的解决。

证书不能使用自动管理,需要手动。

感谢


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