我正在使用Fastlane构建我的iOS项目,并且正在使用“ 迦太基”动作
问题是我在不同的子文件夹中有几个iOS项目,因此我需要carthage(command: "bootstrap")
在该子文件夹中运行。
我尝试更改为项目所在的目录,但它不起作用
lane :test do
Dir.chdir("../MyProject") do
carthage(command: "update")
end
end
Run Code Online (Sandbox Code Playgroud)
我该如何实现?
我最终只是在子文件夹中调用了一个脚本:
lane :build do
Dir.chdir("../MySubdir") do
sh "carthage bootstrap --platform iOS"
end
end
Run Code Online (Sandbox Code Playgroud)
我有一个类似的问题,有几个类似的项目,并试图Fastfile
为所有这些项目重用。
我的方法是Fastfile
在根MyProject/fastlane
文件夹上有一个通用的,包含所有需要的逻辑,比如你的
lane :test do
carthage(command: "update")
end
Run Code Online (Sandbox Code Playgroud)
然后,对于每个项目/子文件夹,您都有一个 Fastfile ,它只从您的文件夹加载主文件夹Fastfile
../MyProject
,例如:
import "../MyProject/fastlane/Fastfile"
Run Code Online (Sandbox Code Playgroud)
之后,您可以在具有所有项目共享逻辑的特定文件夹上执行命令,能够解决问题并仅在一个地方增加命令,还可以使用override_lane 命令为每个项目自定义