You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ansible/test/integration/targets/ansible-galaxy/setup.yml

58 lines
1.7 KiB
YAML

- hosts: localhost
vars:
ws_dir: '{{ lookup("env", "OUTPUT_DIR") }}/ansible-galaxy-webserver'
tasks:
- name: install git & OpenSSL
package:
name: git
when: ansible_distribution not in ["MacOSX", "Alpine"]
register: git_install
- name: install OpenSSL
package:
name: openssl
when: ansible_distribution not in ["MacOSX", "Alpine"]
register: openssl_install
- name: install OpenSSL
command: apk add openssl
when: ansible_distribution == "Alpine"
register: openssl_install
- name: setup webserver dir
file:
state: directory
path: "{{ ws_dir }}"
- name: copy webserver
copy:
src: testserver.py
dest: "{{ ws_dir }}"
- name: Create rand file
command: dd if=/dev/urandom of="{{ ws_dir }}/.rnd" bs=256 count=1
- name: Create self-signed cert
shell: RANDFILE={{ ws_dir }}/.rnd openssl req -x509 -newkey rsa:2048 \
-nodes -days 365 -keyout "{{ ws_dir }}/key.pem" -out "{{ ws_dir }}/cert.pem" \
-subj "/C=GB/O=Red Hat/OU=Ansible/CN=ansible-test-cert"
- name: start SimpleHTTPServer
shell: cd {{ ws_dir }} && {{ ansible_python.executable }} {{ ws_dir }}/testserver.py
async: 120 # this test set can take ~1m to run on FreeBSD (via Shippable)
poll: 0
- wait_for: port=4443
- name: save results
copy:
content: "{{ item.content }}"
dest: '{{ lookup("env", "OUTPUT_DIR") }}/{{ item.key }}.json'
loop:
- key: git_install
content: "{{ git_install }}"
- key: openssl_install
content: "{{ openssl_install }}"
- key: ws_dir
content: "{{ ws_dir | to_json }}"