mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
1b579dfdc2
* nomad_job module
* Delete nomad_job.py
* new module nomad_job
* fix symlink
* disable test with centos6 , not supported
* fix centos unsupported
* fix
* requested changes doc
* disable freebsd ci
* requested change docs + check_mode
* lint
* fix syntax
* update docs
* doc fix
Co-authored-by: Felix Fontein <felix@fontein.de>
* Update nomad_job.py
fix docs + ssl true default
* Update nomad_job.yml
disable ssl ci
* nomad_job_info
* Update nomad_job_info.py
fix token nomad job info
* Update nomad_job.py
idempotence + check_mode plan result
* Update nomad_job.py
fail if no id with json content
* Update nomad_job.yml
ci idempotence + check_mode , nomad_job and nomad_job_info
* Update nomad_job.yml
fix ci
* Update main.yml
add kill nomad ci
* Update main.yml
always kill
* fix check mode delete job
* ci with delete and check_mode
* lint
* force start in first deploy
* 12.4 nomad
* fix version nomad
* fix ci assert
* fix ci
* fix ci
* lint
* fix version job id None, import os unused
* lint job_info
* Update aliases
* docs frag + info refacto
* lint
lint
* ci
* jmespath
* fix ci
Co-authored-by: FERREIRA Christophe <christophe.ferreira@cnaf.fr>
Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit b2e075e6d3
)
Co-authored-by: chris93111 <christopheferreira@ymail.com>
106 lines
2.9 KiB
YAML
106 lines
2.9 KiB
YAML
- name: Skip unsupported platforms
|
|
meta: end_play
|
|
when: ansible_distribution == 'CentOS' and ansible_distribution_major_version is not version('7', '>=')
|
|
|
|
- name: Install Nomad and test
|
|
vars:
|
|
nomad_version: 0.12.4
|
|
nomad_uri: https://releases.hashicorp.com/nomad/{{ nomad_version }}/nomad_{{ nomad_version }}_{{ ansible_system | lower }}_{{ nomad_arch }}.zip
|
|
nomad_cmd: '{{ output_dir }}/nomad'
|
|
block:
|
|
|
|
- name: register pyOpenSSL version
|
|
command: '{{ ansible_python_interpreter }} -c ''import OpenSSL; print(OpenSSL.__version__)'''
|
|
register: pyopenssl_version
|
|
|
|
- name: Install requests<2.20 (CentOS/RHEL 6)
|
|
pip:
|
|
name: requests<2.20
|
|
register: result
|
|
until: result is success
|
|
when: ansible_distribution_file_variety|default() == 'RedHat' and ansible_distribution_major_version is version('6', '<=')
|
|
|
|
- name: Install python-nomad
|
|
pip:
|
|
name: python-nomad
|
|
register: result
|
|
until: result is success
|
|
|
|
- name: Install jmespath
|
|
pip:
|
|
name: jmespath
|
|
register: result
|
|
until: result is success
|
|
|
|
- when: pyopenssl_version.stdout is version('0.15', '>=')
|
|
block:
|
|
- name: Generate privatekey
|
|
community.crypto.openssl_privatekey:
|
|
path: '{{ output_dir }}/privatekey.pem'
|
|
|
|
- name: Generate CSR
|
|
community.crypto.openssl_csr:
|
|
path: '{{ output_dir }}/csr.csr'
|
|
privatekey_path: '{{ output_dir }}/privatekey.pem'
|
|
subject:
|
|
commonName: localhost
|
|
|
|
- name: Generate selfsigned certificate
|
|
register: selfsigned_certificate
|
|
community.crypto.openssl_certificate:
|
|
path: '{{ output_dir }}/cert.pem'
|
|
csr_path: '{{ output_dir }}/csr.csr'
|
|
privatekey_path: '{{ output_dir }}/privatekey.pem'
|
|
provider: selfsigned
|
|
selfsigned_digest: sha256
|
|
|
|
- name: Install unzip
|
|
package:
|
|
name: unzip
|
|
register: result
|
|
until: result is success
|
|
when: ansible_distribution != "MacOSX"
|
|
|
|
- assert:
|
|
that: ansible_architecture in ['i386', 'x86_64', 'amd64']
|
|
|
|
- set_fact:
|
|
nomad_arch: '386'
|
|
when: ansible_architecture == 'i386'
|
|
|
|
- set_fact:
|
|
nomad_arch: amd64
|
|
when: ansible_architecture in ['x86_64', 'amd64']
|
|
|
|
- name: Download nomad binary
|
|
unarchive:
|
|
src: '{{ nomad_uri }}'
|
|
dest: '{{ output_dir }}'
|
|
remote_src: true
|
|
register: result
|
|
until: result is success
|
|
|
|
- vars:
|
|
remote_dir: '{{ echo_output_dir.stdout }}'
|
|
block:
|
|
|
|
- command: echo {{ output_dir }}
|
|
register: echo_output_dir
|
|
|
|
- name: Run tests integration
|
|
block:
|
|
- name: Start nomad (dev mode enabled)
|
|
shell: nohup {{ nomad_cmd }} agent -dev </dev/null >/dev/null 2>&1 &
|
|
|
|
- name: wait nomad up
|
|
wait_for:
|
|
host: localhost
|
|
port: 4646
|
|
delay: 10
|
|
timeout: 60
|
|
|
|
- import_tasks: nomad_job.yml
|
|
always:
|
|
|
|
- name: kill nomad
|
|
shell: pkill nomad
|