AusweisApp2/resources/jenkins/dsl/Initial.groovy

50 lines
879 B
Groovy

import common.Seeder
def branches = []
// You can override slurping of branches with an
// environment variable.
// Example:
// OVERRIDE_BRANCHES = ['default', 'stable']
if(binding.variables.containsKey('OVERRIDE_BRANCHES'))
{
branches = Eval.me(OVERRIDE_BRANCHES)
println 'Extract branches from OVERRIDE_BRANCHES: ' + branches
}
else
{
println 'Try to slurp branches from repository'
def api = new URL("${MERCURIAL_REPOSITORY_URL}/json-branches/")
def content = new groovy.json.JsonSlurper().parse(api.newReader())
content.each
{
empty, entry -> entry.each
{
if(it.status != 'closed')
{
branches << it.branch
}
}
}
}
if(branches.isEmpty())
{
throw new Exception('Cannot find any branch')
}
for(branch in branches)
{
def j = new Seeder
(
repository: "${MERCURIAL_REPOSITORY_URL}",
branch: branch,
).generate(this)
queue(j.name)
}