6.4. Jenkins Job DSL / Plugin
def gitUrl = 'git://github.com/jenkinsci/job-dsl-plugin.git'
job('PROJ-unit-tests') {
scm {
git(gitUrl)
}
triggers {
scm('*/15 * * * *')
}
steps {
maven('-e clean test')
}
}
job('PROJ-sonar') {
scm {
git(gitUrl)
}
triggers {
cron('15 13 * * *')
}
steps {
maven('sonar:sonar')
}
}
job('PROJ-integration-tests') {
scm {
git(gitUrl)
}
triggers {
cron('15 1,13 * * *')
}
steps {
maven('-e clean integration-test')
}
}
job('PROJ-release') {
scm {
git(gitUrl)
}
// no trigger
authorization {
// limit builds to just Jack and Jill
permission('hudson.model.Item.Build', 'jill')
permission('hudson.model.Item.Build', 'jack')
}
steps {
maven('-B release:prepare release:perform')
shell('cleanup.sh')
}
}
job('PROJ-unit-tests') {
scm {
git('https://github.com/bg7nyt/java.git')
}
triggers {
scm('*/15 * * * *')
}
steps {
maven('-e clean test')
}
}