File: runner-playbook.yml

package info (click to toggle)
python-ara 1.5.8-1.1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 10,460 kB
  • sloc: python: 6,493; sh: 215; makefile: 15; javascript: 2
file content (48 lines) | stat: -rw-r--r-- 1,637 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
---
# Copyright (c) 2021 The ARA Records Ansible authors
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)

- name: Run a test playbook with ansible-runner
  hosts: localhost
  gather_facts: no
  vars:
    ara_playbook_name: ansible-runner test playbook
    ara_playbook_labels:
      - ansible-runner
  pre_tasks:
    - name: Retrieve the current playbook so we can get the ID
      ara_playbook:
      register: playbook_query

    - name: Dump the playbook id so we can use it with ansible-runner
      copy:
        content: "{{ playbook_query.playbook.id }}"
        dest: "{{ playbook_dir }}/.ara_playbook"
  tasks:
    - name: Collect some facts
      setup:
        gather_subset:
          - '!all'
          - '!any'
          - date_time
          - distribution
          - dns
          - kernel
          - python

    - name: Recover data from ARA
      vars:
        playbook_id: "{{ playbook_query.playbook.id | string }}"
      set_fact:
        playbook: "{{ lookup('ara_api', '/api/v1/playbooks/' + playbook_id) }}"
        tasks: "{{ lookup('ara_api', '/api/v1/tasks?playbook=' + playbook_id) }}"
        results: "{{ lookup('ara_api', '/api/v1/results?playbook=' + playbook_id) }}"

    - name: Assert playbook properties
      assert:
        that:
          - playbook.name == 'ansible-runner test playbook'
          - "playbook.labels | selectattr('name', 'search', 'ansible-runner') | list | length == 1"
          - playbook.ansible_version == ansible_version.full
          - playbook_dir in playbook.path
          - "'tests/runner-playbook.yml' in playbook.path"