Skip to content

Commit 76083b5

Browse files
author
LinXi
committed
initial commit
1 parent f16c1b8 commit 76083b5

File tree

2 files changed

+95
-0
lines changed

2 files changed

+95
-0
lines changed

build_using_gym.sh

+45
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
#!/bin/bash
2+
3+
#计时
4+
SECONDS=0
5+
6+
#假设脚本放置在与项目相同的路径下
7+
project_path=$(pwd)
8+
#取当前时间字符串添加到文件结尾
9+
now=$(date +"%Y_%m_%d_%H_%M_%S")
10+
11+
#指定项目的scheme名称
12+
scheme="DemoScheme"
13+
#指定要打包的配置名
14+
configuration="Adhoc"
15+
#指定打包所使用的输出方式,目前支持app-store, package, ad-hoc, enterprise, development, 和developer-id,即xcodebuild的method参数
16+
export_method='ad-hoc'
17+
18+
#指定项目地址
19+
workspace_path="$project_path/Demo.xcworkspace"
20+
#指定输出路径
21+
output_path="/Users/your_username/Documents/"
22+
#指定输出归档文件地址
23+
archive_path="$output_path/Demo_${now}.xcarchive"
24+
#指定输出ipa地址
25+
ipa_path="$output_path/Demo_${now}.ipa"
26+
#指定输出ipa名称
27+
ipa_name="Demo_${now}.ipa"
28+
#获取执行命令时的commit message
29+
commit_msg="$1"
30+
31+
#输出设定的变量值
32+
echo "===workspace path: ${workspace_path}==="
33+
echo "===archive path: ${archive_path}==="
34+
echo "===ipa path: ${ipa_path}==="
35+
echo "===export method: ${export_method}==="
36+
echo "===commit msg: $1==="
37+
38+
#先清空前一次build
39+
gym --workspace ${workspace_path} --scheme ${scheme} --clean --configuration ${configuration} --archive_path ${archive_path} --export_method ${export_method} --output_directory ${output_path} --output_name ${ipa_name}
40+
41+
#上传到fir
42+
fir publish ${ipa_path} -T fir_token -c "${commit_msg}"
43+
44+
#输出总用时
45+
echo "===Finished. Total time: ${SECONDS}s==="

build_using_xctool.sh

+50
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
#!/bin/bash
2+
3+
#计时
4+
SECONDS=0
5+
6+
#假设脚本放置在与项目相同的路径下
7+
project_path=$(pwd)
8+
#取当前时间字符串添加到文件结尾
9+
now=$(date +"%Y_%m_%d_%H_%M_%S")
10+
11+
#指定项目的scheme名称
12+
scheme="DemoScheme"
13+
#指定要打包的配置名
14+
configuration="Adhoc"
15+
#指定打包所使用的provisioning profile名称
16+
provisioning_profile='AdHoc Profile'
17+
18+
#指定项目地址
19+
workspace_path="$project_path/Demo.xcworkspace"
20+
#指定输出路径
21+
output_path="/Users/your_username/Documents/"
22+
#指定输出归档文件地址
23+
archive_path="$output_path/Demo_${now}.xcarchive"
24+
#指定输出ipa地址
25+
ipa_path="$output_path/Demo_${now}.ipa"
26+
#获取执行命令时的commit message
27+
commit_msg="$1"
28+
29+
#输出设定的变量值
30+
echo "===workspace path: ${workspace_path}==="
31+
echo "===archive path: ${archive_path}==="
32+
echo "===ipa path: ${ipa_path}==="
33+
echo "===profile: ${provisioning_profile}==="
34+
echo "===commit msg: $1==="
35+
36+
#先清空前一次build
37+
xctool clean -workspace ${workspace_path} -scheme ${scheme} -configuration ${configuration}
38+
39+
#根据指定的项目、scheme、configuration与输出路径打包出archive文件
40+
xctool build -workspace ${workspace_path} -scheme ${scheme} -configuration ${configuration} archive -archivePath ${archive_path}
41+
42+
#使用指定的provisioning profile导出ipa
43+
#我暂时没找到xctool指定provisioning profile的方法,所以这里用了xcodebuild
44+
xcodebuild -exportArchive -archivePath ${archive_path} -exportPath ${ipa_path} -exportFormat ipa -exportProvisioningProfile "${provisioning_profile}"
45+
46+
#上传到fir
47+
fir publish ${ipa_path} -T fir_token -c "${commit_msg}"
48+
49+
#输出总用时
50+
echo "===Finished. Total time: ${SECONDS}s==="

0 commit comments

Comments
 (0)