Files @ 449e6423959c
Branch filter:

Location: majic-ansible-roles/roles/ldap_server/molecule/default/prepare.yml - annotation

branko
MAR-151: Added support for Debian 10 Buster to xmpp_server role:

- Updated role reference documentaiton.
- Updated role meta information.
- Updated tests.
- Enable lower-level TLS protocols (1.0/1.1) in global OpenSSL
configuration file on Buster in order to be able to test the
xmpp_server_tls_protocol parameter (otherwise Prosody completely
refuses to use them even if listed in its configuration).
- Move stretch-specific tests into its own file (for backported
lua-ldap library), and run them on Debian 9 Stretch machines only.
ec4e3e91c4d3
ec4e3e91c4d3
bba096126140
bba096126140
bba096126140
bba096126140
bba096126140
bba096126140
bba096126140
bba096126140
bba096126140
1b36419c4641
bba096126140
bba096126140
bba096126140
bba096126140
bba096126140
bba096126140
1b36419c4641
bba096126140
bba096126140
bba096126140
bba096126140
bba096126140
bba096126140
5a36f75bc297
5a36f75bc297
bba096126140
bba096126140
2f8747288649
2f8747288649
2f8747288649
2f8747288649
bba096126140
bba096126140
bba096126140
bba096126140
bba096126140
bba096126140
bba096126140
ec4e3e91c4d3
ec4e3e91c4d3
c082a26b62ff
ec4e3e91c4d3
ec4e3e91c4d3
e75d5d4fba3b
c082a26b62ff
c082a26b62ff
ec4e3e91c4d3
ec4e3e91c4d3
c082a26b62ff
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
c082a26b62ff
c082a26b62ff
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
bba096126140
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
c082a26b62ff
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
c082a26b62ff
ec4e3e91c4d3
65ad7f138939
65ad7f138939
65ad7f138939
65ad7f138939
65ad7f138939
65ad7f138939
65ad7f138939
65ad7f138939
65ad7f138939
65ad7f138939
5a36f75bc297
f1b75f1d4b5e
2f8747288649
2f8747288649
65ad7f138939
ec4e3e91c4d3
c082a26b62ff
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
c082a26b62ff
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
ec4e3e91c4d3
5a36f75bc297
c082a26b62ff
c082a26b62ff
c082a26b62ff
c082a26b62ff
c082a26b62ff
c082a26b62ff
c082a26b62ff
c082a26b62ff
c082a26b62ff
c082a26b62ff
c082a26b62ff
c082a26b62ff
c082a26b62ff
c082a26b62ff
c082a26b62ff
c082a26b62ff
c082a26b62ff
c082a26b62ff
f1b75f1d4b5e
f1b75f1d4b5e
f1b75f1d4b5e
f1b75f1d4b5e
f1b75f1d4b5e
f1b75f1d4b5e
f1b75f1d4b5e
f1b75f1d4b5e
f1b75f1d4b5e
75bfe558bba9
75bfe558bba9
75bfe558bba9
75bfe558bba9
75bfe558bba9
---

- name: Set-up fixtures
  hosts: localhost
  connection: local
  gather_facts: false
  tasks:

    - name: Initialise CA hierarchy
      command: "gimmecert init"
      args:
        creates: ".gimmecert/ca/level1.cert.pem"
        chdir: "tests/data/"

    - name: Generate server private keys and certificates
      command:
      args:
        chdir: "tests/data/"
        creates: ".gimmecert/server/{{ item.name }}.cert.pem"
        argv:
          - "gimmecert"
          - "server"
          - "{{ item.name }}"
          - "{{ item.fqdn }}"
      with_items:
        - name: parameters-mandatory-stretch64_ldap
          fqdn: parameters-mandatory
        - name: parameters-optional-stretch64_ldap
          fqdn: parameters-optional
        - name: parameters-mandatory-buster64_ldap
          fqdn: parameters-mandatory
        - name: parameters-optional-buster64_ldap
          fqdn: parameters-optional

    - name: Set-up link to generated X.509 material
      file:
        src: ".gimmecert"
        dest: "tests/data/x509"
        state: link

- name: Prepare
  hosts: all
  gather_facts: false
  tasks:
    - name: Install python for Ansible
      raw: test -e /usr/bin/python3 || (apt -y update && apt install -y python3-minimal)
      become: true
      changed_when: false

- hosts: all
  become: true
  tasks:

    - name: Update all caches to avoid errors due to missing remote archives
      apt:
        update_cache: true
      changed_when: false

    - name: Deploy CA certificate
      copy:
        src: tests/data/x509/ca/level1.cert.pem
        dest: /etc/ssl/certs/testca.cert.pem
        owner: root
        group: root
        mode: 0644

- hosts: client
  become: true
  tasks:

    - name: Install tool for teting TCP connectivity
      apt:
        name: hping3
        state: present

    - name: Set-up /etc/hosts with entries for all servers
      lineinfile:
        path: /etc/hosts
        regexp: "^{{ item.key }}"
        line: "{{ item.key }} {{ item.value }}"
        owner: root
        group: root
        mode: 0644
        state: present
      with_dict:
        10.31.127.22: parameters-mandatory-stretch64
        10.31.127.23: parameters-optional-stretch64
        10.31.127.12: parameters-mandatory-buster64
        10.31.127.13: parameters-optional-buster64

- hosts: parameters-optional
  become: true
  tasks:

    - name: Set-up the hosts file
      lineinfile:
        path: /etc/hosts
        regexp: "^{{ item.key }}"
        line: "{{ item.key }} {{ item.value }}"
        owner: root
        group: root
        mode: 0644
        state: present
      with_dict:
        127.0.2.1: parameters-optional

- hosts: parameters-mandatory
  become: true
  tasks:

    - name: Set-up the hosts file
      lineinfile:
        path: /etc/hosts
        regexp: "^{{ item.key }}"
        line: "{{ item.key }} {{ item.value }}"
        owner: root
        group: root
        mode: 0644
        state: present
      with_dict:
        127.0.2.1: parameters-mandatory

- hosts: backup-server
  become: true
  roles:
    - role: backup_server
      backup_host_ssh_private_keys:
        rsa: "{{ lookup('file', 'tests/data/ssh/server_rsa') }}"
        ed25519: "{{ lookup('file', 'tests/data/ssh/server_ed25519') }}"
        ecdsa: "{{ lookup('file', 'tests/data/ssh/server_ecdsa') }}"
      backup_clients:
        - server: localhost
          ip: 127.0.0.1
          public_key: "{{ lookup('file', 'tests/data/ssh/parameters-optional.pub') }}"

- hosts: parameters-mandatory,parameters-optional
  become: true
  tasks:

    - name: Remove the ss utility (see https://github.com/philpep/testinfra/pull/320)
      file:
        path: "/bin/ss"
        state: absent

    - name: Install netstat utility
      apt:
        name: net-tools
        state: present

    - name: Install nmap utility for testing TLS
      apt:
        name: nmap
        state: present