Skip to content

taiojia/autojenkins

This branch is 32 commits behind txels/autojenkins:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

17d690d · Jun 3, 2014
Jun 3, 2014
Nov 2, 2012
Jul 12, 2012
Apr 30, 2012
Jul 12, 2012
Nov 2, 2012
Mar 12, 2012
Nov 16, 2012
Feb 27, 2012
Feb 27, 2012
Mar 12, 2012
Nov 2, 2012
May 10, 2012
Mar 4, 2013
Jul 10, 2012
Feb 7, 2013
Apr 30, 2012

Repository files navigation

Travis CI

autojenkins

Automation (remote control) of Jenkins tasks. Includes a class autojenkins.Jenkins that you can use to drive Jenkins.

Things you can do with it:

  • Copy a job (e.g. from a template job)
  • Delete a job
  • Obtain the config.xml file for that job
  • Trigger building of a job
  • Obtain latest execution results
  • ...

Sample use:

from autojenkins import Jenkins

j = Jenkins('http://jenkins.pe.local')

# trigger a manual build and check results
j.build('warehouse-screens-us544_login')
j.last_result('warehouse-screens-us544_login')

# get only the result string (one of 'SUCCESS', 'UNSTABLE', 'FAILURE'):
j.last_result('warehouse-screens-us544_login')['result']

# get the configuration file for a job:
j.get_config_xml('template')

# Create a new job from a job named 'template', replacing variables
j.create_copy('my-new-job', 'template',
              repo='mbf-warehouse-screens',
              branch='us544_login',
              package='warehouse_screens')

# build
j.build('my-new-job')

# enable or disable
j.enable('my-new-job')
j.disable('my-new-job')

# check result and delete if successful:
result = j.last_result('my-new-job')['result']
if result == 'SUCCESS':
    j.delete('my-new-job')

Authentication

If your Jenkins server uses authentication, you can use HTTP basic authentication in this way:

jenkins = Jenkins('http://jenkins', auth=('user', 'pass'))

Note that you can use either a cleartext password or a Jenkins API token as the password.

About

Jenkins automation scripts

Resources

Stars

Watchers

Forks

Packages

No packages published