1.安装jenkins:Terminal安装
- 安装HomeBrew (若已安装跳过此步骤)
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
- 安装jenkins
brew install jenkins
2.启动jenkins
- 启动jenkins
jenkins
- 通过 访问地址 访问jenkins
3.创建项目
-
新建项目
新建项目 -
创建一个自由风格的软件项目
创建一个自由风格的软件项目 -
项目基本信息
项目基本信息 -
源码管理(待构建项目采用Git进行源码管理)
源码管理 -
构建触发器(采用 Poll SCM)
构建触发器(每周一至周五早上9点检测一次Git版本是否更新)
Poll SCM 设置规则
MINUTE HOUR DOM MONTH DOW
第一个参数代表的是分钟 minute,取值 0~59;
第二个参数代表的是小时 hour,取值 0~23;
第三个参数代表的是天 day,取值 1~31;
第四个参数代表的是月 month,取值 1~12;
第五个参数代表的是星期 week,取值 0~7,0 和 7 都是表示星期天。
-
增加构建步骤(采用Execute shell)
增加构建步骤 -
编写Execute shell
编写Execute shell - 脚本命令如下
PROJECT_NAME="工程名"
BUILD_CONFIGURATION="Release"
SCHEME_NAME="scheme的名字"
CODE_SIGN_DISTRIBUTION="签名证书"
xcodebuild clean -workspace $WORKSPACE/$PROJECT_NAME/$PROJECT_NAME.xcworkspace -configuration "$BUILD_CONFIGURATION" -scheme "$SCHEME_NAME"
xcodebuild archive -archivePath "$WORKSPACE/build/$PROJECT_NAME.xcarchive" -workspace $WORKSPACE/$PROJECT_NAME/$PROJECT_NAME.xcworkspace -sdk iphoneos -scheme "$SCHEME_NAME" -configuration "$BUILD_CONFIGURATION" -CODE_SIGN_IDENTITY="$CODE_SIGN_DISTRIBUTION"
xcodebuild -exportArchive -archivePath "$WORKSPACE/build/$PROJECT_NAME.xcarchive" -exportPath "$WORKSPACE/build/" -exportOptionsPlist "$WORKSPACE/build/ExportOptions.plist" -allowProvisioningUpdates
rm -f $WORKSPACE/build/${JOB_NAME}@*.ipa
mv $WORKSPACE/build/$SCHEME_NAME.ipa $WORKSPACE/build/${JOB_NAME}@${BUILD_ID}.ipa
curl -F "file=@$WORKSPACE/build/${JOB_NAME}@${BUILD_ID}.ipa" -F "uKey=替换成你的uKey" -F "_api_key=替换成你的apiKey" https://www.pgyer.com/apiv1/app/upload
- 保存
4.导出ExportOptions.plist
- Xcode 9 默认不允许访问钥匙串的内容,必须要设置 allowProvisioningUpdates 才会允许访问,Jenkins的Xcode插件目前无法支持此项完成打包流程。
解决办法:
- 使用Xcode手动打包,在导出的文件夹中找到ExportOptions.plist文件。
- 打开ExportOptions.plist文件,设置compileBitcode 为NO。
- 检查ExportOptions.plist文件下的provisioningProfiles是否设置正确。
- 将ExportOptions.plist文件放在jenkins主目录/jobs/Project/workspace/build目录下。
网友评论