forked from Chinamobo/iOS-Project-Template
-
Notifications
You must be signed in to change notification settings - Fork 13
/
Copy path.gitlab-ci.yml
100 lines (83 loc) · 2.22 KB
/
.gitlab-ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
# GitLab CI 配置文件
#
# Runner 的 tags 请按需修改
stages:
- deploy
variables:
# 如用 submodules,则取消注释
# GIT_SUBMODULE_STRATEGY: recursive
# 必填,指定项目构建用哪个 scheme
XC_BUILD_SCHEME: App
# 必填,指定构建项目工作区
XC_BUILD_WORKSPACE: App.xcworkspace
# 非必填,默认 Release。Release/Debug...
XC_BUILD_CONFIGURATION: Release
# Provisioning Profile 文件 ID,留空尝试让 Xcode 自动选择签名
# Xcode 中使用手动签名时,Build Settings > Signing > Provisioning Profile 里的文本
XC_PROVISIONING_ID: ""
# 代码签名身份,留空尝试让 Xcode 自动选择签名
# Xcode 中使用手动签名时,Build Settings > Signing > Code Signing Identity 里的文本。形如:Apple Distribution: XXX (XXXX)
XC_CODE_SIGN_IDENTITY: ""
# 导入 provisioning profile 文件的路径,留空跳过导入
# 例如:"./ci_scripts/dev.mobileprovision"
XC_IMPORT_PROVISIONING_PATH: ""
# 导入 p12 签名证书的路径,留空跳过导入
# 例如:"./ci_scripts/dev.p12"
XC_IMPORT_CERTIFICATE_PATH: ""
# 导入证书的密码
XC_IMPORT_CERTIFICATE_PASSWORD: ""
# 指定导出 IPA 的名称,留空用 XC_BUILD_SCHEME
XC_EXPORT_IPA_NAME: ""
# 存放 fir.im 上传 token 的环境变量名,留空不上传
FIR_UPLOAD_TOKEN: FIR_TOKEN
cache:
key: "v2"
paths:
- Carthage/Build/
- Pods/
# 开发环境打包
develop_deploy:
stage: deploy
tags:
- mobile-publish
only:
- develop
artifacts:
paths:
- "export/*.zip"
expire_in: 1 days
script: ./ci_scripts/gitlab.sh
variables:
XC_BUILD_CONFIGURATION: Debug
# 内测环境打包
demo_deploy:
stage: deploy
tags:
- mobile-publish
only:
- alpha
artifacts:
paths:
- "export/*.zip"
- "**/*.ipa"
expire_in: 2 days
when: always
script: ./ci_scripts/gitlab.sh
variables:
FIR_UPLOAD_TOKEN: ZMM_FIR_TOKEN
XC_BUILD_CONFIGURATION: Alpha
# 正式发版
release_deploy:
stage: deploy
tags:
- mobile-publish
only:
- release
- master
artifacts:
paths:
- "export/*.zip"
expire_in: 4 days
script: ./ci_scripts/gitlab.sh
variables:
FIR_UPLOAD_TOKEN: ""