美文网首页
Mac OS下Jenkins环境搭建

Mac OS下Jenkins环境搭建

作者: com3611923 | 来源:发表于2016-12-09 10:45 被阅读0次

    一、基本配置

    1、安装Jenkins

        在Mac环境下,需要先安装JDK,安装完成后在Jenkins官网(https://jenkins.io/index.html)下载最新的war包,下载完成后,打开终端进入到war包所在目录,执行如下命令:java -jar jenkins.war --httpPort=8088

        其中httpPort是Jenkins所使用的http端口,待Jenkins启动后在浏览器输入如下地址:http://localhost:8088

        这样就打开Jenkins管理页面了,进入到页面后会提示你输入密码,根据页面给的路径找到密码,然后点击‘continue’到下一步,点击‘Install suggested plugins’安装推荐的插件。

    2、创建管理员用户

        上述步骤完成后会进入到创建管理员用户界面,此管理员用户就是进入Jenkins需要的,这里创建管理员用户名为admin,密码为123456。

    3、安装需要的插件

         上述步骤完成后,会进入到Jenkins的主页面,然后要安装一些需要的插件;点击‘系统管理’->‘管理插件’,先在‘已安装’中查看已安装的插件,如果没有找到则可以在‘可选插件’搜索到需要的插件的并安装。

    此iOS项目大概需要如下插件:

    svn插件 —- ‘Subversion Plug-in’,证书插件 —- ‘Credentials Plugin’,‘Keychains and Provisioning Profiles Management’,ftp(sftp)插件 —- ‘Publish over FTP’、‘Publish Over SSH’,安装脚本插件 —- ‘Post-Build Script Plug-in’。

    4、构建项目

        上述插件安装完成后,就可以配置一个构建项目了;进入Jenkins首页,点击‘创建一个新任务’,输入项目名称然后选择‘构建一个自由风格的软件项目’。

    勾选‘丢弃旧的构建’,然后设置保持构建的天数和保持构建的最大个数。

    源码管理,选择Subversion,设置svn的Repository URL:https://username@xxx.xxx.xxx.xxx:8443/svn/xxx;然后设置Credentials,点击后面的Add按钮添加svn账号及密码,Kind选择‘Username with password’,也可以在Jenkins首页‘Credentials’->’global credentials’->’Add Credentials’添加svn账号。

    5、构建触发器

        触发远程构建,设置身份验证令牌,然后可以通过url进行远程构建,jenkins地址/job/job名称/build??token=口令&cause=书写构建原因 ,例如:http://192.168.1.20:8088/job/bgzs/build?token=123456&cause=书写构建原因。

    Build periodically(定时build),格式是这样的,分钟(0-59) 小时(0-23) 日期(1-31) 月(1-12) 周几(0-7,0和7都是周日),如每天20点执行build(H 20 * * *)。

    Poll SCM(poll source cod management)轮询源码管理,格式和上面通用,如每5分钟轮询一次(H/5 * * * *)。

    6、构建环境

        构建环境主要对打包需要的证书进行配置,由于我们在构建脚本里面配置了证书,所以这里不做配置。

    7、构建

        Execute shell(构建脚本),具体见脚本文件注释。

    二、项目进阶配置

    1、参数化构建过程

        在项目配置的‘General’勾选‘参数化构建过程’,这里用到了两种方式‘Choice’和‘String Parameter’。

    ‘Choice’,点击‘添加参数’->‘Choice’,列如配置不同的打包环境,‘Name’设置为archive_type,‘Choices’填写不同环境的参数,每个参数之前用换行符隔开。

    ‘String Parameter’,点击‘添加参数’->‘String Paramter’,列如配置打包的版本号,‘

    Name’设置为enterprise_version_string,‘默认值’设置为1.0。

    设置完后,我们可以在下面的配置(如源码管理、shell脚本等)中用到该参数,访问方式为${archive_type},archive_type为设置的参数的‘Name’。

    2、上传文件到sftp

        首先要安装插件‘Publish Over SSH’,安装完成后到‘系统管理’->‘系统设置’的‘Publish over SSH’进行设置。

    公共配置:

    Passphrase:密码(key的密码,如果你设置了)

    Path to key:key文件(私钥)的路径(在终端运行ssh-keygen,连续回车后~/.ssh/id_rsa就是私钥)

    Key:将私钥复制到这个框中

    Disable exec:禁止运行命令

    私有配置:

    SSH Server Name:标识的名字(随便你取什么)

    Hostname:需要连接ssh的主机名或ip地址(建议ip)

    Username:用户名

    Remote Directory:远程目录

    Use password authentication, or use a different key:勾选,然后输入sftp用户名对应的密码

    私有配置的高级:

    Port:端口(默认22)

    Timeout (ms):超时时间(毫秒)默认即可

    Disable exec:禁止运行命令

    Test Configuration:测试连接

    上述设置完成后,即可到项目中配置sftp文件上传;到‘构建’->‘增加构建步骤’选择‘Send files or execute commands over SSH’进行如下配置。

    基本配置:

    SSH  Server Name:选个一个你在系统设置里配置的配置的名字

    Transfer Set Source files:需要上传的文件(注意:相对于工作区的路径。看后面的配置可以填写多个,默认用,分隔)

    Remove prefix:移除目录(只能指定Transfer Set Source files中的目录)

    Remote directory:远程目录(根据你的需求填写吧,因为我这儿是测试,所以偷懒没有填写。默认会继承系统配置)

    Exec command:把你要执行的命令写在里面

    高级:

    Exclude files:排除的文件(在你传输目录的时候很有用,使用通配符,例如:**/*.log,**/*.tmp,.Git/)

    Pattern separator:分隔符(配置Transfer Set Source files的分隔符。如果你这儿更改了,上面的内容也需要更改)

    No default excludes:禁止默认的排除规则(具体的自己看帮助)

    Make empty dirs:此选项会更改插件的默认行为。默认行为是匹配该文件是否存在,如果存在则创建目录存放。选中此选项会直接创建一个目录存放文件,即使是空目录。(个人理解)

    Flatten files:只上传文件,不创建目录(除了远程目录)

    3、邮件通知

        首先要在‘系统管理’->‘系统设置’->‘Jenkins Location’设置系统管理员邮件地址,然后在‘邮件通知’里面进行下面设置:

    SMTP服务器:smtp.163.com

    用户默认邮件后缀:@163.com

    点击高级并勾选‘使用SMTP认证’,然后设置用户名(不用带后缀)和密码(在邮件开启POP3/SMTP服务时设置的授权密码),这里的用户要和管理员邮件是一致的,否则有报错。

    然后下项目配置中‘构建后操作’增加‘E-mail Notification’,在‘Recipients’填写需要通知的邮箱地址,可以填写多个邮箱地址,中间有空格分开;勾选‘每次不稳定的构建都发送邮件通知’。

    相关文章

      网友评论

          本文标题:Mac OS下Jenkins环境搭建

          本文链接:https://www.haomeiwen.com/subject/ideemttx.html