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 用来做项目管理
AI 代码解读
(由于时间有限自动化配置匆忙之中花了三天的时间看文档到完成部署这个博客也是在查文档的时候匆忙记录中整理的哪里不懂或者有错请指正!谢谢合作)

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

相关文章
利用Git Hooks自动化你的开发流程
Git Hooks 是 Git 的强大功能,允许在特定事件(如提交、推送、合并请求)发生时自动执行脚本。通过合理设置和使用 Git Hooks,可以自动化测试、代码风格检查等任务,提高代码质量和开发效率。本文介绍了如何设置和使用常用的 Git Hooks,包括 `pre-commit`、`pre-push` 和 `post-merge`,并提供了最佳实践建议。
Ansible与Jenkins:自动化工具的对比
Ansible和Jenkins是自动化领域的两大巨头。Ansible专注于配置管理和任务自动化,采用无代理架构,使用YAML定义配置,具有幂等性和可扩展性。Jenkins则擅长持续集成和持续交付(CI/CD),支持丰富的插件生态系统,适用于自动化构建、测试和部署。两者各有优势,Ansible适合配置管理与大规模部署,Jenkins则在CI/CD方面表现出色。结合使用可创建更强大的自动化工作流,提升团队生产力和软件质量。选择工具时应根据具体需求决定。
自动化部署:使用Jenkins和Docker实现持续集成与交付
【8月更文挑战第31天】本文旨在为读者揭示如何通过Jenkins和Docker实现自动化部署,从而加速软件开发流程。我们将从基础概念讲起,逐步深入到实际操作,确保即使是初学者也能跟上步伐。文章将提供详细的步骤说明和代码示例,帮助读者理解并应用这些工具来优化他们的工作流程。
Jenkins 自动化局域网管控软件构建与部署流程
在企业局域网管理中,Jenkins 作为自动化工具,通过配置源码管理、构建及部署步骤,实现了高效、稳定的软件开发与部署流程,显著提升局域网管控软件的开发与运维效率。
74 5
运维自动化实战:利用Jenkins构建高效CI/CD流程
【10月更文挑战第18天】运维自动化实战:利用Jenkins构建高效CI/CD流程
利用Git Hooks自动化你的开发流程
【10月更文挑战第6天】在现代软件开发中,版本控制至关重要,Git作为主流工具,提供了强大的代码管理功能。Git Hooks 是 Git 的一个特性,可在特定事件(如提交、推送)发生时自动执行脚本,实现开发流程自动化。本文介绍 Git Hooks 的基本概念、常见用例及设置方法,涵盖 pre-commit、pre-push 等多种类型的 Hooks,并展示了如何利用它们进行代码格式化、自动化测试和风格检查,提升开发效率与代码质量。通过合理应用 Git Hooks,可以显著减少人为错误,确保代码一致性,并促进团队协作。
自动化部署的魅力:如何用Jenkins和Docker简化运维工作
【10月更文挑战第7天】在现代软件开发周期中,快速且高效的部署是至关重要的。本文将引导你理解如何使用Jenkins和Docker实现自动化部署,从而简化运维流程。我们将从基础概念开始,逐步深入到实战操作,让你轻松掌握这一强大的工具组合。通过这篇文章,你将学会如何利用这些工具来提升你的工作效率,并减少人为错误的可能性。
运维自动化实践:利用Jenkins实现高效CI/CD流程
【10月更文挑战第18天】运维自动化实践:利用Jenkins实现高效CI/CD流程
Jenkins打包,发布,部署
Jenkins打包,发布,部署
340 0
WPF与DevOps的完美邂逅:从Jenkins配置到自动化部署,全流程解析持续集成与持续交付的最佳实践
【8月更文挑战第31天】WPF与DevOps的结合开启了软件生命周期管理的新篇章。通过Jenkins等CI/CD工具,实现从代码提交到自动构建、测试及部署的全流程自动化。本文详细介绍了如何配置Jenkins来管理WPF项目的构建任务,确保每次代码提交都能触发自动化流程,提升开发效率和代码质量。这一方法不仅简化了开发流程,还加强了团队协作,是WPF开发者拥抱DevOps文化的理想指南。
139 1
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等