fastlane-plugin-fastci 0.0.14 → 0.0.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 6a340715cf257a5a83f02790ae0faa869ebded6542f18f2b9a98c0bf9d615dbb
|
|
4
|
+
data.tar.gz: 00c765576bc7b76e3a20b53c5b8068e878cbd4049e57517cc394f56695bb0c53
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 3194fd930952e333988312b87867ef4c59d0c4ddc4c05c87eafdecf0b99ecffc40d044b1a4d53bcf48043b818c38e0d8782ff93b826c796452f17faa111c4197
|
|
7
|
+
data.tar.gz: 58c23ce8526521e838f0a2ed608895e9e891e8c2b518a3b7fb6f349c6d37d62fadd0700ee34af7e5e26149e6455ca9f4813898fba8425d7389f47a48257a735c
|
data/README.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
[](https://rubygems.org/gems/fastlane-plugin-fastci)
|
|
5
5
|
|
|
6
|
-
一个集成 iOS
|
|
6
|
+
一个集成 iOS 打包脚本与多种自动化操作的 Fastlane 聚合插件。
|
|
7
7
|
简单快速的集成,5 分钟即可上手。
|
|
8
8
|
配合 Jenkins 实现高度自定义。
|
|
9
9
|
|
|
@@ -26,9 +26,12 @@
|
|
|
26
26
|
## 使用方法
|
|
27
27
|
|
|
28
28
|
参考 [` Fastfile `](fastlane/Fastfile) 和 [` .env.default `](fastlane/.env.default) 替换项目内 fastlane 文件夹下文件;
|
|
29
|
-
项目根目录新建 ` PACKAGE_FILE_FOLDER_NAME ` 配置对应名字文件夹,将描述文件、p12 证书、p8
|
|
29
|
+
项目根目录新建 ` PACKAGE_FILE_FOLDER_NAME ` 配置对应名字文件夹,将描述文件、p12 证书、p8 密钥等文件放入该文件夹下;
|
|
30
30
|
然后终端进入项目根目录即可使用 ` fastlane `
|
|
31
31
|
|
|
32
|
+
如果是同一个 xcworkspace 多 xcodeproj 的情况,可以采用多配置文件的方式。同样也是参考 [` .env.default `](fastlane/.env.default) 根据多个 xcodeproj 创建多个配置文件 ` .env.project1 ` 、 ` .env.project2 `;
|
|
33
|
+
执行的时候指定环境文件 ` fastlane package --env project1 ` 来运行
|
|
34
|
+
|
|
32
35
|
|
|
33
36
|
### 使用后会在项目根目录生成文件夹
|
|
34
37
|
|
|
@@ -47,12 +50,14 @@ fastlane_cache/ # 插件缓存文件夹
|
|
|
47
50
|
|
|
48
51
|
### 1. 自动打包
|
|
49
52
|
功能:自动编译并导出 ipa 包,支持多种打包方式和集成多项检查。
|
|
50
|
-
生成完的 ipa 会放在桌面上,非 ` app-store ` 配置了蒲公英或 fir 参数会自动上传蒲公英或 fir
|
|
53
|
+
生成完的 ipa 会放在桌面上,非 ` app-store ` 配置了蒲公英或 fir 参数会自动上传蒲公英或 fir。` app-store ` 和 ` testFlight ` 配置了商店参数会自动上传商店。
|
|
51
54
|
|
|
52
55
|
` build `: 不指定的话内部有递增逻辑,格式为 ` 20250905.15(日期+当天包的次数) `
|
|
53
56
|
|
|
54
57
|
` version `: 在 Xcode13 之后创建的项目,不再支持脚本修改。需要兼容请在 ` Build settings ` 中将 ` GENERATE_INFOPLIST_FILE ` 设置为 ` NO `
|
|
55
58
|
|
|
59
|
+
其他参数可以使用 ` fastlane action package ` 查看
|
|
60
|
+
|
|
56
61
|
```ruby
|
|
57
62
|
package(
|
|
58
63
|
configuration: "Debug", # 编译环境 Release/Debug
|
|
@@ -109,7 +114,9 @@ detect_unused_code(
|
|
|
109
114
|
功能:检测项目中未被使用的图片资源,生成分析报告。
|
|
110
115
|
|
|
111
116
|
```ruby
|
|
112
|
-
detect_unused_image(
|
|
117
|
+
detect_unused_image(
|
|
118
|
+
exclude: nil # 要排除的路径,多个路径用逗号分隔。默认会排除 Carthage 和 Pods 目录
|
|
119
|
+
)
|
|
113
120
|
```
|
|
114
121
|
|
|
115
122
|
---
|
|
@@ -8,16 +8,27 @@ module Fastlane
|
|
|
8
8
|
def self.run(params)
|
|
9
9
|
UI.message("*************| 开始无用图片检查 |*************")
|
|
10
10
|
|
|
11
|
-
# 检查是否安装了
|
|
12
|
-
unless system("which
|
|
11
|
+
# 检查是否安装了 Mint
|
|
12
|
+
unless system("which mint > /dev/null")
|
|
13
13
|
sh("brew install mint")
|
|
14
|
-
sh("mint install onevcat/fengniao")
|
|
15
14
|
end
|
|
15
|
+
|
|
16
|
+
# 检查是否安装了 FengNiao
|
|
17
|
+
unless system("mint list | grep -q onevcat/FengNiao")
|
|
18
|
+
sh("mint install onevcat/FengNiao")
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
# 构建排除参数
|
|
22
|
+
exclude_paths = ["Carthage", "Pods"]
|
|
23
|
+
if params[:exclude] && !params[:exclude].empty?
|
|
24
|
+
exclude_paths += params[:exclude].split(",").map(&:strip)
|
|
25
|
+
end
|
|
26
|
+
exclude_options = exclude_paths.join(" ")
|
|
16
27
|
|
|
17
28
|
fengniao_output = sh("
|
|
18
|
-
fengniao \
|
|
29
|
+
mint run onevcat/FengNiao fengniao \
|
|
19
30
|
--list-only \
|
|
20
|
-
--exclude
|
|
31
|
+
--exclude #{exclude_options}
|
|
21
32
|
")
|
|
22
33
|
|
|
23
34
|
CommonHelper.write_cached_txt(Constants.UNUSED_IMAGE_FILE, fengniao_output)
|
|
@@ -38,7 +49,15 @@ module Fastlane
|
|
|
38
49
|
end
|
|
39
50
|
|
|
40
51
|
def self.available_options
|
|
41
|
-
[
|
|
52
|
+
[
|
|
53
|
+
FastlaneCore::ConfigItem.new(
|
|
54
|
+
key: :exclude,
|
|
55
|
+
description: "要排除的路径,多个路径用逗号分隔。默认会排除 Carthage 和 Pods 目录",
|
|
56
|
+
optional: true,
|
|
57
|
+
default_value: nil,
|
|
58
|
+
type: String
|
|
59
|
+
)
|
|
60
|
+
]
|
|
42
61
|
end
|
|
43
62
|
|
|
44
63
|
def self.is_supported?(platform)
|