---
# cord-profile/tasks/main.yml
# Constructs a CORD service profile directory and configuration files

- name: Create and copy XOS admin password
  copy:
    content: "{{ xos_admin_pass }}"
    dest: "{{ cord_dir }}/build/platform-install/credentials/{{ xos_admin_user }}"

- name: Create cord_profile directory
  become: yes
  file:
    path: "{{ cord_profile_dir }}"
    state: directory
    mode: 0755
    owner: "{{ ansible_user_id }}"
    group: "{{ ansible_user_gid }}"

- name: Create cord_profile/profile_name with the name of the profile
  copy:
    dest: "{{ cord_profile_dir }}/profile_name"
    content: "{{ cord_profile }}"
    mode: 0644

- name: Create subdirectories inside cord_profile directory
  file:
    path: "{{ cord_profile_dir }}/{{ item }}"
    state: directory
    mode: 0755
  with_items:
    - key_import
    - onboarding-docker-compose
    - images

# *** This should be revisited. ***
# Currently the key pair is generated on the head node by the
# "prep" role in the "maas" repo, invoked during the "deployBase" Gradle task.
# The keys should probably be generated earlier, in the corddev VM, and copied over.
# The /opt/credentials directory might be a good place to keep the generated keys.
#
# Ensure a keypair exists in case we're not running on MaaS.
- name: Ensure keypair
  user:
    name: "{{ ansible_user_id }}"
    generate_ssh_key: yes

- name: Copy ssh keys to key_import directory
  copy:
    # 'expanduser' won't work below, it expands on control machine
    src: "{{ item.source_path | replace('~', ansible_user_dir, 1) }}"
    dest: "{{ cord_profile_dir }}/key_import/{{ item.name }}"
    mode: 0600
    remote_src: True
  with_items: "{{ xos_service_sshkeys }}"

- name: Copy cert chain and core api key and cert
  copy:
    src: "{{ pki_dir }}/{{ item }}"
    dest: "{{ cord_profile_dir }}/{{ item }}"
    mode: 0600
    remote_src: True
  with_items:
    - core_api_key.pem
    - core_api_cert.pem
    - im_cert_chain.pem

- name: Get localhost facts (to get local uid and gid)
  setup:
  delegate_to: localhost
  delegate_facts: True

- name: Make local images directory
  delegate_to: localhost
  become: yes
  file:
    path: "{{ image_dir }}"
    state: directory
    mode: 0755
    owner: "{{ hostvars['localhost']['ansible_user_id'] }}"
    group: "{{ hostvars['localhost']['ansible_user_gid'] }}"

- name: Download Glance VM images
  when: use_openstack
  delegate_to: localhost
  get_url:
    url: "{{ item.url }}"
    checksum: "{{ item.checksum }}"
    dest: "{{ image_dir }}/{{ item.name }}.qcow2"
  with_items: "{{ xos_images }}"
  register: glance_vm_result
  until: glance_vm_result|success
  retries: 5
  delay: 10

- name: Copy Glance VM images to profile directory
  when: use_openstack
  copy:
    src: "{{ image_dir }}/{{ item.name }}.qcow2"
    dest: "{{ cord_profile_dir }}/images/{{ item.name }}.qcow2"
  with_items: "{{ xos_images }}"

- name: Copy over commonly used and utility TOSCA files
  copy:
    src: "{{ item }}"
    dest: "{{ cord_profile_dir }}/{{ item }}"
  with_items:
    - fixtures.yaml
    - enable-onboarding.yaml
    - disable-onboarding.yaml

- name: Create templated XOS configuration files
  template:
    src: "{{ item }}.j2"
    dest: "{{ cord_profile_dir }}/{{ item }}"
    mode: 0644
  with_items:
    - xos_common_config
    - deployment.yaml
    - xos.yaml
    - gateway-config.yml
    - style.config.js
    - app.config.js
    - Dockerfile.xos
    - xos-gui-extensions.yml
    - docker-compose.yml

- name: Create profile specific templated TOSCA config files
  template:
    src: "{{ item }}.j2"
    dest: "{{ cord_profile_dir }}/{{ item }}"
  with_items: "{{ xos_tosca_config_templates }}"

- name: Create profile specific templated non-TOSCA files
  template:
    src: "{{ item }}.j2"
    dest: "{{ cord_profile_dir }}/{{ item }}"
  with_items: "{{ xos_other_templates }}"

- name: Copy node key
  when: not on_maas and use_openstack
  copy:
    src: "{{ ansible_user_dir }}/.ssh/id_rsa"
    dest: "{{ item }}/node_key"
    owner: "{{ ansible_user }}"
    mode: 0600
    remote_src: True
  with_items:
    - "{{ ansible_user_dir }}"
    - "{{ cord_profile_dir }}"

- name: Copy node key (MaaS)
  when: on_maas and use_openstack
  become: yes
  copy:
    src: "{{ maas_node_key }}"
    dest: "{{ item }}/node_key"
    owner: "{{ ansible_user }}"
    mode: 0600
    remote_src: True
  with_items:
    - "{{ ansible_user_dir }}"
    - "{{ cord_profile_dir }}"
