Xcode + cocoapods + jenkins + fastlane + git + 蒲公英自动化打包 上传

简介: Xcode + cocoapods + jenkins + fastlane + git + 蒲公英自动化打包 上传构建自动化步骤为:1. Xcode 有Xcode 内部提供的打包命令来打包完成代码的编译和证书签名到最后打包。

Xcode + cocoapods + jenkins + fastlane + git + 蒲公英自动化打包 上传

构建自动化步骤为:

1. Xcode 有Xcode 内部提供的打包命令来打包完成代码的编译和证书签名到最后打包。
2. cocoapods 也是依赖 Xcode 来完成项目包管理的构建
3. Jenkins  这里主要用到 Jenkins 两个目的第一是 git 监听 第二个是邮件发送  后面做了安卓的自动化打包和java 的自动化打包构建 都是在一个上面管理并不需要写太多的代码 主要是节省编码时间
4. fastlane 这个工具可以完成上面所有的工作 但是这里我只是用到了证书管理和自动化打包 当然安卓的打包也是由他来完成  这里也是为什么又要用到它  
5. Git 用来做项目管理
(由于时间有限自动化配置匆忙之中花了三天的时间看文档到完成部署这个博客也是在查文档的时候匆忙记录中整理的哪里不懂或者有错请指正!谢谢合作)

Jenkins

一. 什么是 Jenkins?

  1. 持续的软件发布/测试项目,节省重复耗时工作让我们更加专注与项目的开发和业务的处理
  2. 监听外部调用执行工作,自动化处理我们的重复工作。
  3. Jenkins 作为一个持续集成的简单 CI 服务的连续交付中心任何项目都可以使用。

二. Jenkins 的优点有哪些

  1. 简单配置(这个对于 Xcode 并不是很友好这也是为什么要使用 Jenkins 和 fastlane 配合使用的一个原因)
  2. 跨平台 由于是 Java 语言的工作站所以在主流的三大操作系统上都能兼容
  3. 丰富的插件可以扩展性非常好
  4. 分布式可以在多台机器和跨平台构建和测试部署

三. 安装和使用

这里主要讲 mac 端的安装如果有其他需要请参考Jenkins官网

下载并运行 Jenkins(这里之前说过了由于是 Java 语言编写所以请先安装 Java 环境 Java 下载
  1. 下载詹金斯
  2. 在下载目录中打开一个终端。
  3. 运行java -jar jenkins.war --httpPort=8080。
  4. 浏览至http://localhost:8080
  5. 由于都是中文按照说明完成安装就好了,到这里 Jenkins 就已经安装完成了。所有的配置什么的都已经不需要了 到此处就已经可以了!
  6. 新建一个项目


    img_8dd08371d09d5ce5db08caf40c51f781.png
    第一步@2x.png

    img_d572a6105e96a93ce86352e1b834f9cc.png
    第二步@2x.png

    img_cf3654860d5f9c92ae864c9e343ee3dd.png
    第三步@2x.png

    img_912c907c08d8191e2ae5b3242305b17f.png
    第四步@2x.png

    img_9d770c13569052d467739c0b1d1ba163.png
    第五步@2x.png

Fastlane

什么是 Fastlane?

一. fastlane是为iOS和Android应用程序自动化测试版部署和发布的最简单方法。它处理所有繁琐的任务,例如生成屏幕截图,处理代码签名以及发布应用程序。
二. 我认为 Fastlane 就是整合了一系列的工具的来完成自动化工具的工具!
  1. 首先确认最新版的 Xcode 命令行工具是否安装 打开终端输入xcode-select --install

  2. 安装 Fastlane [sudo] gem install fastlane -NV当然也可以使用 brew cask install fastlane 来安装

  3. 一切顺利的话就直接 cd 切换到当前项目目录中就像我们使用 cocoapods 一样首先进行初始化 fastlane init

    img_d71bbf3eb3dacd5d7345f5328e328359.png
    fastlane2@2x.png

  4. 按照提示会询问你是选择哪种方式这里先选择用4自定义一路走下去就可以最后会提示你成功了

  5. 这里先介绍怎么样来进行签名不然后面会一直提示签名失败

  6. 首先输入fastlane match development这里会提示你输入 git 的一个项目路径 用来保存你的代码签名 最好是私有库。 依次输入账号,当然这里有还有另外的三种 fastlane match appstore``fastlane match adhoc``fastlane match enterprise这里面有一个成功的就可以去git 上去看看里面上传的事什么东西了 (注意:这里有个前提就是 Bundle Identifier 要在开发者账号里面注册)

    img_494bf28f5e9f7da9f752067b202fe49b.png
    3@2x.png

    img_3b5405b552bb4e5d9582dcf5c771333e.png
    QQ20180714-210620@2x.png

img_83dee436cc82c3daa4dee2c4a03ce91c.png
QQ20180714-210325@2x.png
  1. 编辑 Fastfile

    img_bb7306a1ed394c3a51ea45f53b6a4a33.png
    QQ20180714-211040@2x.png

  2. 运行 fastlane beta

    img_3b5405b552bb4e5d9582dcf5c771333e.png
    QQ20180714-210620@2x.png

  3. 当然这里还要最后一步就是配置到自动提交到蒲公英上去其实也很简单 添加插件 fastlane add_plugin pgyer

    img_727d76b3037f9dc116fc92cab0eac6fd.png
    QQ20180714-215212@2x.png

在本地测试完毕 然后提交代码 到远程仓库去 Jenkins点击立即构建

生成这样的结果就 OK了 配置成功!

相关文章
|
23天前
|
jenkins 持续交付
Jenkins自动化部署脚本
Jenkins自动化部署脚本
27 0
|
2月前
|
IDE jenkins Java
告别繁琐配置:Alibaba Cloud Toolkit插件打破Jenkins自动化部署的局限
告别繁琐配置:Alibaba Cloud Toolkit插件打破Jenkins自动化部署的局限
100 0
|
4月前
|
安全 jenkins 持续交付
使用Jenkins自动化上网时间监测软件的发布流程
在当前互联网时代,人们对上网时间的监测变得愈发重要。为了满足这一需求,我们可以利用Jenkins来自动化发布上网时间监测软件,以确保高效、可靠地监测用户的在线活动。本文将介绍如何使用Jenkins搭建自动发布流程,并通过代码示例展示关键步骤。
217 0
|
2月前
|
jenkins 应用服务中间件 持续交付
Git + Jenkins 自动化 NGINX 发布简易实现
Git + Jenkins 自动化 NGINX 发布简易实现
|
2月前
|
Linux 数据安全/隐私保护 iOS开发
如何使用 Xcode 打包导出 IPA 文件并进行 iOS 应用内测,无需支付苹果开发者账号费用?
如何使用 Xcode 打包导出 IPA 文件并进行 iOS 应用内测,无需支付苹果开发者账号费用?
|
14天前
|
jenkins 测试技术 持续交付
软件测试|docker搭建Jenkins+Python+allure自动化测试环境
通过以上步骤,你可以在Docker中搭建起Jenkins自动化测试环境,实现Python测试的自动化执行和Allure报告生成。 买CN2云服务器,免备案服务器,高防服务器,就选蓝易云。百度搜索:蓝易云
34 6
|
1月前
|
jenkins Java 持续交付
详解如何使用Jenkins一键打包部署SpringBoot项目
详解如何使用Jenkins一键打包部署SpringBoot项目
58 0
|
2月前
|
JavaScript 持续交付 开发工具
Git自动化利器:使用Node.js脚本定制化提交消息处理
Git自动化利器:使用Node.js脚本定制化提交消息处理
58 0
|
2月前
|
JSON Java Maven
SpringBoot使用git-commit-id-maven-plugin打包
【2月更文挑战第1天】 git-commit-id-maven-plugin 是一个maven 插件,用来在打包的时候将git-commit 信息打进jar中。 这样做的好处是可以将发布的某版本和对应的代码关联起来,方便查阅和线上项目的维护。至于它的作用,用官方说法,这个功能对于大型分布式项目来说是无价的。
84 0
|
3月前
|
前端开发 jenkins 持续交付
前后端分离项目知识汇总(GateWay,Nacos配置中心,Jenkins自动化部署,项目总结)-3
前后端分离项目知识汇总(GateWay,Nacos配置中心,Jenkins自动化部署,项目总结)
63 0