community.general.jenkins_job module – Manage jenkins jobs
Note
This module is part of the community.general collection (version 10.7.5).
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_job.
Synopsis
- Manage Jenkins jobs by using Jenkins REST API. 
Requirements
The below requirements are needed on the host that executes this module.
- python-jenkins >= 0.4.12 
Parameters
| Parameter | Comments | 
|---|---|
| Config in XML format. Required if job does not yet exist. Mutually exclusive with  Considered if  | |
| Whether the job should be enabled or disabled. Mutually exclusive with  Considered if  Choices: 
 | |
| Name of the Jenkins job. | |
| Password to authenticate with the Jenkins server. | |
| Attribute that specifies if the job has to be created or deleted. Choices: 
 | |
| API token used to authenticate alternatively to password. | |
| URL where the Jenkins server is accessible. Default:  | |
| User to authenticate with the Jenkins server. | |
| If set to  The  Choices: 
 | 
Attributes
| Attribute | Support | Description | 
|---|---|---|
| Support: full | Can run in  | |
| Support: full | Will return details on what has changed (or possibly needs changing in  | 
Examples
- name: Create a jenkins job using basic authentication
  community.general.jenkins_job:
    config: "{{ lookup('file', 'templates/test.xml') }}"
    name: test
    password: admin
    url: http://localhost:8080
    user: admin
- name: Create a jenkins job using the token
  community.general.jenkins_job:
    config: "{{ lookup('template', 'templates/test.xml.j2') }}"
    name: test
    token: asdfasfasfasdfasdfadfasfasdfasdfc
    url: http://localhost:8080
    user: admin
- name: Delete a jenkins job using basic authentication
  community.general.jenkins_job:
    name: test
    password: admin
    state: absent
    url: http://localhost:8080
    user: admin
- name: Delete a jenkins job using the token
  community.general.jenkins_job:
    name: test
    token: asdfasfasfasdfasdfadfasfasdfasdfc
    state: absent
    url: http://localhost:8080
    user: admin
- name: Disable a jenkins job using basic authentication
  community.general.jenkins_job:
    name: test
    password: admin
    enabled: false
    url: http://localhost:8080
    user: admin
- name: Disable a jenkins job using the token
  community.general.jenkins_job:
    name: test
    token: asdfasfasfasdfasdfadfasfasdfasdfc
    enabled: false
    url: http://localhost:8080
    user: admin
Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Description | 
|---|---|
| Whether the jenkins job is enabled or not. Returned: success Sample:  | |
| Name of the jenkins job. Returned: success Sample:  | |
| State of the jenkins job. Returned: success Sample:  | |
| URL to connect to the Jenkins server. Returned: success Sample:  | |
| User used for authentication. Returned: success Sample:  | 
