mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
b2e075e6d3
* 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>
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
|