iOS 集成Jenkins pipeline 自动打包并上传蒲公英

news/2025/2/13 2:31:01/

文章目录

  • 1 创建一个Jenkins pipeline 项目
  • Pipeline script
  • 打包和上传蒲公英脚本

1 创建一个Jenkins pipeline 项目

请添加图片描述

上面那几个配置项其实不用关心的,我们这里先实现一个简单的能够打包的流程
请添加图片描述

这里只配置Pipeline script
请添加图片描述

Pipeline script

主要的流程都是有pipeline script 来完成的

pipeline {agent anyenvironment {archivesh = "./archive.sh"}stages {stage('checkout') {steps {git branch: "master", url: "https://gitee.com/liuboliu/pengpailiubo.git"}}stage('build') {steps {sh """chmod -R +x ${archivesh}${archivesh}"""}}}
}

注意,上面pipeline 命令中的 archivesh 脚本文件是在工程的根目录下,如图
请添加图片描述

打包和上传蒲公英脚本

#!/bin/bash -l
# 设置utf8编码
export LANG=en_US.UTF-8
CODE_PATH="/Users/liubo/.jenkins/workspace/Pipeline"
ROOT_PATH="/Users/liubo/Desktop/Jenkins"
DATE=$(date +%Y%m%d-%H-%M-%S)
APP_NAME="ThePaperBase"
ARCHIVE_NAME="${APP_NAME}_${DATE}.xcarchive"
ARCHIVE_PATH="${ROOT_PATH}/Archive/${ARCHIVE_NAME}"
IPANAME="${APP_NAME}_${DATE}_IPA"
IPA_PATH="${ROOT_PATH}/Export/${IPANAME}"
EXPORT_METHOD_PLIST_PATH=${CODE_PATH}/ExportOptions/ExportOptions.plist
#删除旧的打包文件夹
rm -rdf "${ROOT_PATH}/Archive"
rm -rdf "${ROOT_PATH}/Export"
# 再创建新的打包文件夹
mkdir "${ROOT_PATH}/Archive"
mkdir "${ROOT_PATH}/Export"cd "${CODE_PATH}"
pod install
xcodebuild archive -workspace ${APP_NAME}.xcworkspace -scheme ${APP_NAME} -configuration Debug -archivePath ${ARCHIVE_PATH}
xcodebuild -exportArchive -archivePath ${ARCHIVE_PATH} -exportPath "${IPA_PATH}" -exportOptionsPlist ${EXPORT_METHOD_PLIST_PATH} -allowProvisioningUpdates
file_path="${IPA_PATH}/${APP_NAME}.ipa"#蒲公英上的User Key
uKey="45d2be1046a2db153cda3552207c1a6a"
#蒲公英上的API Key
apiKey="840f54de6357a2b1b8f60cd4a8d107fa"
#执行上传至蒲公英的命令,这句不需要修改
curl -F "file=@${file_path}" -F "uKey=${uKey}" -F "_api_key=${apiKey}" https://www.pgyer.com/apiv1/app/upload

注意,蒲公英的uKey 和 apices 在蒲公英API信息中获取
如图
请添加图片描述
请添加图片描述


http://www.ppmy.cn/news/438812.html

相关文章

【Python 随练】三数字排序

题目: 输入三个整数 x, y, z,请按照从小到大的顺序输出这三个数。 简介: 在本篇博客中,我们将使用Python代码解决一个简单的排序问题:如何将输入的三个整数按照从小到大的顺序进行排序并输出。我们将提供问题的解析…

Q4净利润同比增长46.5% 腾讯音乐终于“好听又好看”了?

北京时间3月17日,腾讯音乐对外公布2019年第四季度及全年业绩。财报显示,腾讯音乐娱乐集团本季度不少核心指标均超市场预期,整体表现都还不错。因财报好于预期,财报公布后,腾讯音乐娱乐集团的股价盘后逆势上涨4%。 从股…

国外LEAD真实收入,没有那么暴利,但是也不低!

真实,绝对真实,这是我今天一个收入,如果每天都这样做,月入过万岂不是非常简单? 132美金 按现在的汇率6.75,132*6.75891元。 我从16年从事互联网,玩过各种互联网项目,黑的、灰的、偏…

在github上一些好的项目统计给大家

在 Github 上 Star 太多了,有时候很难找到自己想要的开源库,所以在此记录下来。便于自己开发使用,也顺便分享给大家。 动画 awesome-ios-animation 收集了iOS平台下比较主流炫酷的几款动画框架 RCTRefreshControl qq的下拉刷新 TBIconTransi…

2021,买基金还是买房?

来源|银杏财经 编辑|吴不知 “那美好的仗我已经打过了,当跑的路我已经跑尽了,所信的道我已经守住了。” 往年,一下雪,北京便成了北平;一过年,魔都便成了空都。 今年,受疫情影响,虽一…

超详细的 Python 基础语句总结(多实例、视频讲解持续更新)

目录 一、运算符1.1 + ——两个对象相加1.2 - ——得到负数或是一个数减去另一个数1.3 * ——两个数相乘或是返回一个被重复若干次的字符串、列表、元组1.4 / ——两个数相除1.5 // ——返回商的整数部分(向下取整)1.6 % ——返回除法的余数1.7 ** ——返回一个数的幂1.8 = —…

PHP 资源备忘

Awesome PHP 一个PHP资源列表,内容包括:库、框架、模板、安全、代码分析、日志、第三方库、配置工具、Web 工具、书籍、电子书、经典博文等等 贡献 详细内容请查看贡献 和 代码管理. 目录 Awesome PHP 依赖管理 Dependency Management其他的依赖管…

Matlab随机波动率SV、GARCH用MCMC马尔可夫链蒙特卡罗方法分析汇率时间序列

最近我们被客户要求撰写关于随机波动率SV的研究报告,包括一些图形和统计输出。波动率是一个重要的概念,在金融和交易中有许多应用。它是期权定价的基础。波动率还可以让您确定资产配置并计算投资组合的风险价值 (VaR)。甚至波动率本身也是一种金融工具&a…