community.general.nomad_job module – Launch a Nomad Job
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.nomad_job.
New in community.general 1.3.0
Synopsis
- Launch a Nomad job. 
- Stop a Nomad job. 
- Force start a Nomad job. 
Requirements
The below requirements are needed on the host that executes this module.
- python-nomad 
Parameters
| Parameter | Comments | 
|---|---|
| Path of certificate for TLS/SSL. | |
| Path of certificate’s private key for TLS/SSL. | |
| Content of Nomad job. Either this or  | |
| Type of content of Nomad job. Choices: 
 | |
| Force job to started. Choices: 
 | |
| FQDN of Nomad server. | |
| Name of job for delete, stop and start job without source. Name of job for delete, stop and start job without source. Either this or  | |
| Namespace for Nomad. | |
| Port of Nomad server. Default:  | |
| Deploy or remove job. Choices: 
 | |
| Timeout (in seconds) for the request to Nomad. Default:  | |
| ACL token for authentication. | |
| Use TLS/SSL connection. Choices: 
 | |
| Enable TLS/SSL certificate validation. Choices: 
 | 
Attributes
| Attribute | Support | Description | 
|---|---|---|
| Support: full | Can run in  | |
| Support: none | Will return details on what has changed (or possibly needs changing in  | 
See Also
See also
- Nomad jobs documentation
- Complete documentation for Nomad API jobs. 
Examples
- name: Create job
  community.general.nomad_job:
    host: localhost
    state: present
    content: "{{ lookup('ansible.builtin.file', 'job.hcl') }}"
    timeout: 120
- name: Connect with port to create job
  community.general.nomad_job:
    host: localhost
    port: 4645
    state: present
    content: "{{ lookup('ansible.builtin.file', 'job.hcl') }}"
    timeout: 120
- name: Stop job
  community.general.nomad_job:
    host: localhost
    state: absent
    name: api
- name: Force job to start
  community.general.nomad_job:
    host: localhost
    state: present
    name: api
    timeout: 120
    force_start: true
