Bamboo CI具有以下特性:当有人提交到存储库时,使用subversion程序触发竹编。我按照post post hook中的说明进行操作,但我不确定postcommitbuildtrigger.sh文件的2个参数是什么。假设项目名称为TEST,构建名称为TESTBUILD,服务器URL为http://localhost:8085。我在post commit hook命令行中写了这个。
/<pathtopostcommit.sh> TEST TESTBUILD
post commit .sh文件位于Windows机器上。这可能是因为Windows没有运行.sh文件,但如果这样那么有人知道如何在Windows上设置此触发器吗?
另外,我认为这会立即触发构建?是否有可能触发竹子进行民意调查,以便构建服从安静的时期?
答案 0 :(得分:0)
必须编写自己的脚本。 Bamboo只分发mac和linux脚本。
答案 1 :(得分:0)
好的我写了自己的。它比颠覆民意调查超时要好得多。经过测试:
C:\SvnHooks\
中的PowerShell批处理文件运行器:
@echo OFF
rem this file just makes spawning powershell from VisualSvn a tad easier...
rem
rem Args from VisualSvn Server are ignored. Pass Bamboo BUILD KEY as the first
rem parameter to this script.
Powershell.exe -executionpolicy remotesigned -File C:\SvnHooks\BambooWebApiTrigger.ps1 -key %1
运行System.Net.WebClient的PowerShell脚本,也在C:\SvnHooks\
中。使用您当地的Bamboo服务器覆盖 bamboo.yourdefaultdomain.com :
# A Powershell script to trigger Bamboo to build a specific key
param (
[string]$baseurl = "http://bamboo.radicalsystems.com.au:8085",
[Parameter(Mandatory=$true)]
[string]$key,
[string]$tmp = $null
)
$fullUrl = $baseurl + "/updateAndBuild.action?buildKey=" + $key
if (!$tmp) {
$tmp = [io.path]::GetTempFileName()
}
echo "Pinging Bamboo API at '$fullUrl'"
$client = new-object System.Net.WebClient
$client.DownloadFile($fullUrl, $tmp)
# comment Remove-Item to see the results. It is a HTML result with success message.
# echo "Results are in $tmp"
Remove-Item $tmp
右键单击VisualSvn服务器管理器中的项目&gt;属性&gt;钩子&gt;提交后挂钩(编辑)。
在其他任何人之后输入此行:
C:\SvnHooks\BambooWebApiTrigger.bat BambooProjectKey
其中BambooProjectKey是关键,在浏览构建计划(而不是项目)时在您的竹子网址后找到。它通常有一个连字符:http://bamboo.yourdomain.com:8085/browse/FOO-BAR
。在这种情况下,FOO-BAR将成为关键。
将Bamboo触发器更改为 Repository在提交更改时触发构建
您可以从VisualSvn提交后挂钩对话框覆盖密钥,也可以从批处理文件运行器覆盖Bamboo基本URL和临时文件位置。