美文网首页
jenkins自动化部署打包流程

jenkins自动化部署打包流程

作者: 哲逗年 | 来源:发表于2020-06-10 15:54 被阅读0次

    一、背景

    在实际项目开发中,自测完成后,需要给到测试人员安装包进行测试,在这一过程中,如果使用手动打包,这一过程就会比较耗时,如果电脑配置较差,可能还会引起电脑卡顿造成无法同步开发等等,现在有了jenkins这一神器,就可以解放双手,提交代码的同时就可以实现同步打包,并且可以随时可测。

    一、简介

    Jenkins是开源CI&CD软件领导者, 提供超过1000个插件来支持构建、部署、自动化, 满足任何项目的需要。它的优势在于以下几点:

    • 持续集成和持续交付
      作为一个可扩展的自动化服务器,Jenkins 可以用作简单的 CI 服务器,或者变成任何项目的持续交付中心。

    • 简易安装
      Jenkins 是一个基于 Java 的独立程序,可以立即运行,包含 Windows、Mac OS X 和其他类 Unix 操作系统。

    • 配置简单
      Jenkins 可以通过其网页界面轻松设置和配置,其中包括即时错误检查和内置帮助。

    • 插件
      通过更新中心中的 1000 多个插件,Jenkins 集成了持续集成和持续交付工具链中几乎所有的工具。

    • 扩展
      Jenkins 可以通过其插件架构进行扩展,从而为 Jenkins 可以做的事提供几乎无限的可能性。

    • 分布式
      Jenkins 可以轻松地在多台机器上分配工作,帮助更快速地跨多个平台推动构建、测试和部署。

    对于详细的资料,可前往jenkins官网自行下载安装包及配置文档。

    三、安装jenkins

    • 前往官网手动下载安装包进行安装
    • 使用brew安装最新版本
    brew install jenkins
    
    • 安装 LTS 版本
    brew install jenkins-lts
    

    四、解锁jenkins

    1、安装结束后,终端输入命令:

    jenkins
    

    2、启动服务后,前往浏览器访问http://localhost:8080,如果是第一次启动,需要输入密码进行访问,可按照浏览器提示的路径进行密码的获取,复制到输入框后点击继续即可解锁

    3、安装插件

    • 安装建议的插件:安装推荐的一组插件,这些插件基于最常见的用例
    • 自定义安装插件:通过Jenkins中的Manage Jenkins> Manage Plugins 页面在稍后的时间点安装(或删除)其他Jenkins插件

    4、配置管理员账户

    五、安装自定义插件

    目前安装的自定义插件主要有Xcode integrationKeychains and Provisioning Profiles Management,下面主要介绍如何安装Keychains and Provisioning Profiles Management及配置.

    1、安装Keychains and Provisioning Profiles Management的一款插件,用来管理kechain和iOS证书

    2、前往Manage Jenkins> Keychains and Provisioning Profiles Management上传文件及设置,
    这里需要上传Keychain和Provisioning Profile文件。

    • 上传Keychain文件,文件路径在~/Library/Keychains,将文件login.keychain-db拷贝一份,去掉后缀-db,即可上传,上传成功后,在Code Signing Identity处填写证书名称,可填写多个证书名称,一般选择开发和生产两个证书就可以了,可前往钥匙串中找到对应的证书,复制粘贴名称即可。如iPhone Distribution: Guangdong xxx(xxxx)iPhone Developer: xiao ming (75CJYJS52).

    • 上传Provisioning Profile描述文件,去开发者平台下载对应的dev、dis、ad-hoc描述文件上传即可,上传完成后会自动填充相关信息,在Provisioning Profiles Directory Path处填写描述文件安装的路径,如/Users/xiaoming/Library/MobileDevice/Provisioning Profiles.

    六、新建任务

    一、jenkins->新建任务
    二、输入一个任务名称,一般按照一定的规范进行命名,比如iOS_xxx,接下来选择工程风格,优先使用之前已配置好过的项目,这样就只要改少量配置就可以了,如果是需要逐步手动配置,一般选择freestyle project进行配置
    三、配置

    • General
      描述:自定义,可以用来描述此次工程的功能,比如这是iOSxxx迭代分支功能
      丢弃旧的构建:打勾
      策略:可以根据自己的需求进行选择,比如保持构建天数5天,构建的最大数目30等等

    • 源码管理(Git)
      Repository URL:填写自己项目的git地址
      Credentials:填写https账户密码或ssh密钥
      指定分支:填写自己要打包的分支,例如*/feature-xxx

    • 构建触发器
      可选择Poll SCM轮询构建,例如H/15 * * * *每15分钟构建一次

    • 构建环境
      勾选Set jenkins user build variables,这是为了后面的自定义版本号做的配置

    • 构建
      先选择添加Xcode选项,如果没有这个选项,需要先添加Xcode integration插件

    • Versioning
      勾选Provide version number and run avgtool?
      Marketing version:例如1.1.0
      Technical version:例如Demo-${BUILD_NUMBER}

    • Execute shell
      这里添加需要执行的操作,比如执行一些打包的配置、资源的检测、上传第三包平台的执行等等,例如

    cd ${WORKSPACE}
    python3 ./jenkins_stringCheck.py
    ./source_replace.sh 0
    cd ..
    python package.py -b -1 -u fir -d ${JOB_NAME}
    #python package.py -b -1 -u pgyer -d ${JOB_NAME}
    #python package.py -b -1 -u all -p production -d ${JOB_NAME}
    
    • 构建后操作
      可根据自己的需求选择,例如想将打包后的IPA包放到FTP上,就可以添加Send build artifacts over FTP

    七、总结

    总的来说,jenkins的确是非常强大且高度自定义,有效的提高了N倍的交付效率。关于它的更多配置,也只有在未来工作学习中不断学习和尝试,需求一套适合自己或者公司的解决方案。

    相关文章

      网友评论

          本文标题:jenkins自动化部署打包流程

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