Skip to content

Instantly share code, notes, and snippets.

@ometa
Forked from marshyski/jenkins-api-examples
Created February 17, 2017 22:56
Show Gist options
  • Save ometa/f01107a8f360e740112740bd9cf6d5df to your computer and use it in GitHub Desktop.
Save ometa/f01107a8f360e740112740bd9cf6d5df to your computer and use it in GitHub Desktop.
Jenkins trigger, create and remove jobs and folders
# check if job exists
curl -XGET 'http://jenkins/checkJobName?value=yourJobFolderName' --user user.name:YourAPIToken
# with folder plugin
curl -s -XPOST 'http://jenkins/job/FolderName/createItem?name=yourJobName' --data-binary @config.xml -H "Content-Type:text/xml" --user user.name:YourAPIToken
# without folder plugin
curl -s -XPOST 'http://jenkins/createItem?name=yourJobName' --data-binary @config.xml -H "Content-Type:text/xml" --user user.name:YourAPIToken
# create folder
curl -XPOST 'http://jenkins/createItem?name=FolderName&mode=com.cloudbees.hudson.plugins.folder.Folder&from=&json=%7B%22name%22%3A%22FolderName%22%2C%22mode%22%3A%22com.cloudbees.hudson.plugins.folder.Folder%22%2C%22from%22%3A%22%22%2C%22Submit%22%3A%22OK%22%7D&Submit=OK' --user 'user.name:YourAPIToken' -H "Content-Type:application/x-www-form-urlencoded"
# remove folder / job
curl -XPOST 'http://jenkins/job/FolderName/doDelete' --user 'user.name:YourAPIToken'
# trigger remote job
curl 'http://jenkins/job/yourJobName/build?delay=0sec' --user 'user.name:YourAPIToken'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment