TeamCity的和耙:哪里TC系统属性?(Teamcity and Rake: Where are

2019-08-01 05:01发布

我将我的一些恶性构建脚本到耙。 有谁知道如何访问系统属性(如build.number)我耙脚本里面? 在TeamCity的耙插件甚至注射呢? 我似乎无法找到DOCO。

Answer 1:

请参阅列表中预定义的属性 。 在耙脚本和Ruby代码,这些变量通过环境中可用,例如在Rake文件添加此:

puts 'Build number: ' + ENV['BUILD_NUMBER']

如果你想看到所有可用的属性,把下面的代码:

ENV.each {|key, value| puts "#{key} = #{value}" }

从运行的TeamCity的构建和检查日志,在所有消息模式,你会看到可用的属性。

如果你想通过一些其他的属性,它是提供的TeamCity或agent.conf文件中定义的,你应该在疗法Web UI中的耙配置属性和环境变量选项卡中添加。

例如,你想传递的agent.conf文件中定义system.CUSTOM属性。 点击添加新的变量链接,指定自定义的名称,并%system.CUSTOM%的值。 现在,在Rake文件 ,你可以访问它ENV [“自定义”。

所以,这个想法是要通过您通过环境需要,如果他们不作为的环境变量已经通过预定义的属性列表属性。



Answer 2:

我想我已经找到了一个更好的方式来处理这个问题。 如果你安装了宝石JAVA_PROPERTIES,然后将下面的代码添加到您的Rake文件:

props = JavaProperties::Properties.new(ENV["TEAMCITY_BUILD_PROPERTIES_FILE"])

你现在有一个具有所有的系统属性中有一个哈希(减去领先的“系统”)。

希望这可以帮助。

标记



文章来源: Teamcity and Rake: Where are the tc system properties?
标签: teamcity rake