- PDF Link: cheatsheet-jenkins-groovy-A4.pdf, Category: languages
- Blog URL: https://cheatsheet.dennyzhang.com/cheatsheet-jenkins-groovy-A4
- Related posts: Jenkins CheatSheet, #denny-cheatsheets
File me Issues or star this repo.
Name | Comment |
---|---|
Specify parameter to run jobs | build job:'job1', parameters:[string(name:'name1', value:va1)] |
Run job in different agents | node($agent_label) {...} |
Ask for user input | stage('stage2'){ input "OK to go?" } |
Actively fail current pipeline job | error("Build failed because of this and that..") |
Keep going when previous stage has failed | keep-going-with-errors.groovy |
Send slack notification in pipeline | slack-notification.groovy |
Pass parameter across jenkins jobs | jenkinsfile-pass-parameter.groovy |
Set timeout & retry | jenkinsfile-timeout-retry.groovy |
Use finally to do cleanup | jenkinsfile-finally.groovy |
Run jenkins jobs in a sequential way | jenkinsfile-sequentially.groovy |
Run jenkins jobs in parallel | jenkinsfile-parallelly.groovy |
Name | Comment |
---|---|
Set timezone for jenkins | timezone.groovy |
Create jenkins views and add jobs to it | jenkins-views.groovy |
Configure default view | jenkins-views.groovy |
Add default jobs | Copy jobs config.xml to /usr/share/jenkins/ref/jobs/ |
Name | Comment |
---|---|
Read file content as a variable |
def env = System.getenv() , def content = readFile("/tmp/test.txt")
|
Print stdout | echo ‘Action is done’, println “Hello World” |
Use boolean parameter | if (istrue == “false”) {…} |
Basic integer caculation | def a = 3, b = 7; println “$a + |
Get environment variables | get-env.groovy |
Name | Comment |
---|---|
Convert list to string | l.join(";") |
Create string with multi-lines | multi-line-string.groovy |
Convert string to list | split-string.groovy |
Name | Comment |
---|---|
Iterate a list | for(item in [1,2,3,4]){ println item } |
Iterate a list | (1..3).each { println "Number ${it}"} |
Add item to list | def alist = [10, 9, 8]; alist << 7 |
List size | def alist = [10, 9, 8]; alist.size() |
Split string with delimiter | '1128-2'.tokenize( '-' ) |
Name | Comment |
---|---|
Create a map | def m = ['fruit':'Apple', 'veggie':'Carrot'] |
Add an item to map | m.put('denny','hello') |
Check if key exists | m.containsKey('key1') |
Loop a map | loop-map.groovy |
Name | Comment |
---|---|
Get hostname by ip | get-ip-by-hostname.groovy |
validate user input: ip address | assert ip_address.matches("\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}") |
Name | Command |
---|---|
Test groovy code from Jenkins GUI | Manage Jenkins -> Script Console |
Jenkins Slave Node |
Name | Command |
---|---|
Backup jenkins | ThinBackup Plugin |
Load the ssh key | Credentials Plugin |
Add timestamp to job output | Timestamper Plugin |
Create dashboard | Dashboard View Plugin |
Abort if job takes too long | Build-timeout Plugin |
Retry failed a job | Naginator Plugin |
Backup job configuration | JobConfigHistory Plugin |
Name | Command |
---|---|
Print message to stdout | See print.groovy |
Get environment variables | See get-env.groovy |
Convert string to list | See split-string.groovy |
Create string with multi-lines | See multi-line-string.groovy |
Loop a map | See loop-map.groovy |
Get hostname by ip | See get-ip-by-hostname.groovy |
Convert list to string | l.join(";") , link: groovy list |
License: Code is licensed under MIT License.