【问题标题】:VSTS Continuous Integration - Change SDK pathVSTS 持续集成 - 更改 SDK 路径
【发布时间】:2018-09-05 06:48:37
【问题描述】:
我正在寻找问题的解决方案。这是在持续集成期间出现的。要在我的代理上运行构建命令,我必须提供要运行构建的服务器的 sdk 的路径。通常local.properties 文件不是 git 更改列表的一部分。我知道有用于运行自定义脚本的 git 挂钩,但在阅读更多内容后,似乎它们是为其他目的而制作的。
我想要的是,在我推送代码后,local.properties 中的 sdk 目录路径会更改以反映我的服务器的 sdk 路径,并且每当我从远程存储库中提取代码时,路径会自动更改回我的本地sdk 路径。
请建议,我应该为此目的使用 git 钩子还是有更好的解决方案你们遵循或知道。
问候
【问题讨论】:
标签:
android
git
continuous-integration
azure-pipelines
githooks
【解决方案1】:
好的,所以我改变了我的方法。我在构建过程中使用了 powershell 脚本。因此,在 gradle build 之前的构建管道中,我添加了 powershell 脚本任务。代理将源代码复制到服务器后,脚本运行并添加一个带有 android sdk(服务器)路径的 local.properties 文件。我相信这是一种更简单的方法。
任何寻求解决方案的人。您所要做的就是在项目的根目录下创建一个扩展名为 .ps1 的新文件。这是代码
param([string] $fileName)
$sdkDir = "sdk.dir=C\:\\Users\\xyz\\AppData\\Local\\Android\\android-sdk" (path to your build server sdk)
Set-Content $fileName $sdkDir
参数将来自构建中 PowerShell 脚本任务的参数部分。您只需传递 local.properties。
这样 local.properties 文件就不会成为 git 更改列表的一部分。希望这可以帮助某人。如果您对此有任何疑问,请随时提出。