Skip to main content

Python REST API client for Rundeck 2.6+

Project description

Rundeck REST API client

PyPI PyPI - Downloads PyPI - License Python Lint

This is a Python REST API client for Rundeck 2.6+

Example

from pyrundeck import Rundeck

rundeck = Rundeck('http://rundeck-url',
                  token='sometoken',
                  api_version=32,  # this is not mandatory, it defaults to 18
                 )

run = rundeck.run_job(RUNDECK_JOB_ID, options={'option1': 'foo'})

running_jobs = rundeck.get_executions_for_job(job_id=RUNDECK_JOB_ID, status='running')

for job in running_jobs['executions']:
  print("%s is running" % job['id'])

A token can be generated in the 'profile' page of Rundeck. Alternatively you can login with a username and password.

Example using the file upload option

from pyrundeck import rundeck

rd = Rundeck(
        rundeck_url, 
        username=username, 
        password=password, 
        verify=False, 
        api_version=19  # Required for file upload option
    )
# Use the file_key returned in the response to reference the file when running a job
# Per documentation at https://docs.rundeck.com/docs/api/rundeck-api.html#upload-a-file-for-a-job-option
response = rd.upload_file(RUNDECK_JOB_ID, OPTION_NAME, FILE_NAME_STRING_OR_IOFILEWRAPPER)
file_key = response['options'][OPTION_NAME]
rd.run_job(RUNDECK_JOB_ID, options={OPTION_NAME: file_key})

See also

LICENSE

GPL3

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyrundeck-0.9.12.tar.gz (4.6 kB view hashes)

Uploaded Source

Built Distribution

pyrundeck-0.9.12-py3-none-any.whl (17.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page