community.general.jenkins_build module – Manage jenkins builds

Note

This module is part of the community.general collection (version 10.1.0).

You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install community.general. You need further requirements to be able to use this module, see Requirements for details.

To use it in a playbook, specify: community.general.jenkins_build.

New in community.general 2.2.0

Synopsis

  • Manage Jenkins builds with Jenkins REST API.

Requirements

The below requirements are needed on the host that executes this module.

  • python-jenkins >= 0.4.12

Parameters

Parameter

Comments

args

dictionary

A list of parameters to pass to the build.

build_number

integer

An integer which specifies a build of a job. Is required to remove a build from the queue.

detach

boolean

added in community.general 7.4.0

Enable detached mode to not wait for the build end.

Choices:

  • false ← (default)

  • true

name

string / required

Name of the Jenkins job to build.

password

string

Password to authenticate with the Jenkins server.

state

string

Attribute that specifies if the build is to be created, deleted or stopped.

The stopped state has been added in community.general 3.3.0.

Choices:

  • "present" ← (default)

  • "absent"

  • "stopped"

time_between_checks

integer

added in community.general 7.4.0

Time in seconds to wait between requests to the Jenkins server.

This times must be higher than the configured quiet time for the job.

Default: 10

token

string

API token used to authenticate with the Jenkins server.

url

string

URL of the Jenkins server.

Default: "http://localhost:8080"

user

string

User to authenticate with the Jenkins server.

Attributes

Attribute

Support

Description

check_mode

Support: none

Can run in check_mode and return changed status prediction without modifying target.

diff_mode

Support: none

Will return details on what has changed (or possibly needs changing in check_mode), when in diff mode.

Examples

- name: Create a jenkins build using basic authentication
  community.general.jenkins_build:
    name: "test-check"
    args:
      cloud: "test"
      availability_zone: "test_az"
    state: present
    user: admin
    password: asdfg
    url: http://localhost:8080

- name: Stop a running jenkins build anonymously
  community.general.jenkins_build:
    name: "stop-check"
    build_number: 3
    state: stopped
    url: http://localhost:8080

- name: Delete a jenkins build using token authentication
  community.general.jenkins_build:
    name: "delete-experiment"
    build_number: 30
    state: absent
    user: Jenkins
    token: abcdefghijklmnopqrstuvwxyz123456
    url: http://localhost:8080

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

build_info

dictionary

Build info of the jenkins job.

Returned: success

name

string

Name of the jenkins job.

Returned: success

Sample: "test-job"

state

string

State of the jenkins job.

Returned: success

Sample: "present"

url

string

Url to connect to the Jenkins server.

Returned: success

Sample: "https://jenkins.mydomain.com"

user

string

User used for authentication.

Returned: success

Sample: "admin"

Authors

  • Brett Milford (@brettmilford)

  • Tong He (@unnecessary-username)

  • Juan Casanova (@juanmcasanova)