2017-04-24 43 views
1

我是travis的新手,并试图从私人服务器中取出一个罐子。如何设置travis构建拉动私人gradle依赖?

我跟着this guide,现在已经托管,可以在其他项目由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 

它正在我们的机器,但因为它不具有gradle.properties文件上特拉维斯构建失败。处理这个问题的正确方法是什么,即设置Travis从该回购中拉出?

我想我可以将它们定义为environment variables in repository settings,但它看起来像需要修改build.gradle文件以使用它们。

回答

2

在您的travis build脚本中,您可以为gradle命令添加-P选项。这些将为您添加项目属性。

​​

虽然将密码添加到git中时密码保护不是很好。为了保护它,请使用加密的环境变量。按照this guide加密变量。一旦环境变量在Travis构建脚本中可用,您可以像这样使用它。

gradle -Partifactory_username=username -Partifactory_password=${ARTIFACTORY_PASSWORD} build 

这种方法的好处是开发人员可以继续使用他们当前的配置。

+1

谢谢!我还必须将这些属性传递给安装块上的'gradle assemble'。效果很好。 –