Files @ 114f02e67a4d
Branch filter:

Location: majic-ansible-roles/roles/ldap_client/molecule/default/create.yml

branko
MAR-173: Switch to using Prosody 0.11 as default version in the xmpp_server role:

- Updated default value for the Prosody package parameters.
- Configure the backports repository on the server, and pin the
lua-ldap package to be installed from the backports
repository (needed for Lua 5.2 support).
- Drop the explicit installation of lua-sec library - it is already
installed as pre-requisite for the Prosody package.
---
- name: Create
  hosts: localhost
  connection: local
  gather_facts: false
  no_log: "{{ not lookup('env', 'MOLECULE_DEBUG') | bool }}"
  vars:
    molecule_file: "{{ lookup('env', 'MOLECULE_FILE') }}"
    molecule_instance_config: "{{ lookup('env', 'MOLECULE_INSTANCE_CONFIG') }}"
    molecule_yml: "{{ lookup('file', molecule_file) | molecule_from_yaml }}"
  tasks:
    - name: Create molecule instance(s)
      molecule_vagrant:
        instance_name: "{{ item.name }}"
        instance_interfaces: "{{ item.interfaces | default(omit) }}"
        instance_raw_config_args: "{{ item.instance_raw_config_args | default(omit) }}"

        platform_box: "{{ item.box }}"
        platform_box_version: "{{ item.box_version | default(omit) }}"
        platform_box_url: "{{ item.box_url | default(omit) }}"

        provider_name: "{{ molecule_yml.driver.provider.name }}"
        provider_memory: "{{ item.memory | default(omit) }}"
        provider_cpus: "{{ item.cpus | default(omit) }}"
        provider_raw_config_args: "{{ item.raw_config_args | default(omit) }}"

        state: up
      register: server
      with_items: "{{ molecule_yml.platforms }}"

    # Mandatory configuration for Molecule to function.

    - name: Populate instance config dict
      set_fact:
        instance_conf_dict: {
          'instance': "{{ item.Host }}",
          'address': "{{ item.HostName }}",
          'user': "{{ item.User }}",
          'port': "{{ item.Port }}",
          'identity_file': "{{ item.IdentityFile }}", }
      with_items: "{{ server.results }}"
      register: instance_config_dict
      when: server.changed | bool

    - name: Convert instance config dict to a list
      set_fact:
        instance_conf: "{{ instance_config_dict.results | map(attribute='ansible_facts.instance_conf_dict') | list }}"
      when: server.changed | bool

    - name: Dump instance config
      copy:
        # NOTE(retr0h): Workaround for Ansible 2.2.
        #               https://github.com/ansible/ansible/issues/20885
        content: "{{ instance_conf | to_json | from_json | molecule_to_yaml | molecule_header }}"
        dest: "{{ molecule_instance_config }}"
      when: server.changed | bool