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了 配置成功!

相关文章
|
5月前
|
存储 Shell Linux
快速上手基于 BaGet 的脚本自动化构建 .net 应用打包
本文介绍了如何使用脚本自动化构建 `.net` 应用的 `nuget` 包并推送到指定服务仓库。首先概述了 `BaGet`——一个开源、轻量级且高性能的 `NuGet` 服务器,支持多种存储后端及配置选项。接着详细描述了 `BaGet` 的安装、配置及使用方法,并提供了 `PowerShell` 和 `Bash` 脚本实例,用于自动化推送 `.nupkg` 文件。最后总结了 `BaGet` 的优势及其在实际部署中的便捷性。
205 10
|
9月前
|
开发工具 Android开发 git
Git(2) 实用技巧:打包、补丁、环境切换、修改记录和加速
Git实用技巧包括:打包差异文件或补丁、在Git和Repo环境间切换、批量修改提交记录中的用户名和邮箱、设置Git命令别名以及解决下载速度慢和超时问题。这些技巧能提升Git使用效率和便捷性。
211 0
|
9月前
|
jenkins 应用服务中间件 持续交付
Git + Jenkins 自动化 NGINX 发布简易实现
Git + Jenkins 自动化 NGINX 发布简易实现
|
9月前
|
Linux 数据安全/隐私保护 iOS开发
如何使用 Xcode 打包导出 IPA 文件并进行 iOS 应用内测,无需支付苹果开发者账号费用?
如何使用 Xcode 打包导出 IPA 文件并进行 iOS 应用内测,无需支付苹果开发者账号费用?
|
3月前
|
测试技术 开发工具 git
利用Git Hooks自动化你的开发流程
Git Hooks 是 Git 的强大功能,允许在特定事件(如提交、推送、合并请求)发生时自动执行脚本。通过合理设置和使用 Git Hooks,可以自动化测试、代码风格检查等任务,提高代码质量和开发效率。本文介绍了如何设置和使用常用的 Git Hooks,包括 `pre-commit`、`pre-push` 和 `post-merge`,并提供了最佳实践建议。
|
4月前
|
测试技术 开发工具 git
利用Git Hooks自动化你的开发流程
【10月更文挑战第6天】在现代软件开发中,版本控制至关重要,Git作为主流工具,提供了强大的代码管理功能。Git Hooks 是 Git 的一个特性,可在特定事件(如提交、推送)发生时自动执行脚本,实现开发流程自动化。本文介绍 Git Hooks 的基本概念、常见用例及设置方法,涵盖 pre-commit、pre-push 等多种类型的 Hooks,并展示了如何利用它们进行代码格式化、自动化测试和风格检查,提升开发效率与代码质量。通过合理应用 Git Hooks,可以显著减少人为错误,确保代码一致性,并促进团队协作。
|
4月前
|
jenkins Java 持续交付
Jenkins打包,发布,部署
Jenkins打包,发布,部署
307 0
|
6月前
|
图形学 数据安全/隐私保护 iOS开发
Unity与IOS⭐Xcode打包,上架TestFlight的完整教程
Unity与IOS⭐Xcode打包,上架TestFlight的完整教程
|
9月前
|
jenkins 持续交付 开发工具
蓝易云 - 基于Jenkins自动打包并部署docker环境
以上就是基于Jenkins自动打包并部署docker环境的基本步骤。在实际操作中,你可能需要根据你的具体需求进行一些调整。
189 0
|
7月前
|
开发工具 数据安全/隐私保护 git
为了方便项目打包,我用Node写了个git-tag工具
为了方便项目打包,我用Node写了个git-tag工具
105 0

热门文章

最新文章