如何设置 travis 构建以拉取私有 gradle 依赖项?
How to setup travis build to pull private gradle dependencies?
我是 travis 的新手,正在尝试从私人服务器中提取一个 jar。
我关注了 this guide,现在服务器上托管了 jar,可以通过在 build.gradle
文件中注册存储库在其他项目中使用它:
repositories {
jcenter()
maven {
url "http://IPADDRESS:8081/artifactory/libs-release-local"
credentials {
username = "${artifactory_username}"
password = "${artifactory_password}"
}
}
}
凭据放在 #HOME_DIR/.gradle/gradle.properties
文件中。
artifactory_username=YOUR_USERNAME
artifactory_password=YOUR_ENCRYPTED_PASSWORD
它在我们的机器上运行,但在 travis 上构建失败,因为它没有那个 gradle.properties
文件。处理此问题的正确方法是什么,即设置 travis 从该回购中提取?
我想我可以将它们定义为 environment variables in repository settings,但看起来需要修改 build.gradle 文件才能使用它们。
在您的 travis 构建脚本中,您可以将 -P 选项添加到 gradle 命令。这些将为您添加项目属性。
gradle -PprojectProperty=projectValue build
不过,当您将密码添加到 git 时,密码并没有得到很好的保护。为了保护它,请使用加密的环境变量。按照this guide加密变量。一旦环境变量在 travis 构建脚本中可用,您就可以像这样使用它。
gradle -Partifactory_username=username -Partifactory_password=${ARTIFACTORY_PASSWORD} build
这种方法的好处是开发人员可以继续他们当前的配置。
我是 travis 的新手,正在尝试从私人服务器中提取一个 jar。
我关注了 this guide,现在服务器上托管了 jar,可以通过在 build.gradle
文件中注册存储库在其他项目中使用它:
repositories {
jcenter()
maven {
url "http://IPADDRESS:8081/artifactory/libs-release-local"
credentials {
username = "${artifactory_username}"
password = "${artifactory_password}"
}
}
}
凭据放在 #HOME_DIR/.gradle/gradle.properties
文件中。
artifactory_username=YOUR_USERNAME
artifactory_password=YOUR_ENCRYPTED_PASSWORD
它在我们的机器上运行,但在 travis 上构建失败,因为它没有那个 gradle.properties
文件。处理此问题的正确方法是什么,即设置 travis 从该回购中提取?
我想我可以将它们定义为 environment variables in repository settings,但看起来需要修改 build.gradle 文件才能使用它们。
在您的 travis 构建脚本中,您可以将 -P 选项添加到 gradle 命令。这些将为您添加项目属性。
gradle -PprojectProperty=projectValue build
不过,当您将密码添加到 git 时,密码并没有得到很好的保护。为了保护它,请使用加密的环境变量。按照this guide加密变量。一旦环境变量在 travis 构建脚本中可用,您就可以像这样使用它。
gradle -Partifactory_username=username -Partifactory_password=${ARTIFACTORY_PASSWORD} build
这种方法的好处是开发人员可以继续他们当前的配置。