blob: d0f987480e0e32f6423dcb2fa0a615dffe6e2ce4 [file] [log] [blame]
Zack Williamsa2763112017-01-03 11:38:38 -07001---
2# cord-profile/tasks/main.yml
3# Constructs a CORD service profile directory and configuration files
4
5- name: Create cord_profile directory
6 become: yes
7 file:
8 path: "{{ cord_profile_dir }}"
9 state: directory
10 mode: 0755
11 owner: "{{ ansible_user_id }}"
12 group: "{{ ansible_user_gid }}"
13
14- name: Create subdirectories inside cord_profile directory
15 file:
16 path: "{{ cord_profile_dir }}/{{ item }}"
17 state: directory
18 mode: 0755
19 with_items:
20 - key_import
21 - onboarding-docker-compose
22 - images
23
24- name: Copy ssh keys to key_import directory
25 copy:
26 remote_src: True # file is local to the remote machine
27 src: "{{ item.source_path | expanduser }}"
28 dest: "{{ cord_profile_dir }}/key_import/{{ item.name }}"
29 mode: 0600
30 with_items: "{{ xos_service_sshkeys }}"
31
32- name: Copy node_key to cord_profile directory
33 copy:
34 remote_src: True # file is local to the remote machine
35 src: "{{ ansible_user_dir }}/node_key"
36 dest: "{{ cord_profile_dir }}/node_key"
37 mode: 0600
38
39- name: Copy over core api key
40 copy:
41 src: "{{ playbook_dir }}/pki/intermediate_ca/private/xos-core.{{ site_suffix }}_key.pem"
42 dest: "{{ cord_profile_dir }}/core_api_key.pem"
43 mode: 0600
44
45- name: Copy over core api cert
46 copy:
47 src: "{{ playbook_dir }}/pki/intermediate_ca/certs/xos-core.{{ site_suffix }}_cert_chain.pem"
48 dest: "{{ cord_profile_dir }}/core_api_cert.pem"
49
50- name: Download Glance VM images
51 get_url:
52 url: "{{ item.url }}"
53 checksum: "{{ item.checksum }}"
54 dest: "{{ cord_profile_dir }}/images/{{ item.name }}.qcow2"
55 with_items: "{{ xos_images }}"
56
57- name: Copy over commonly used and utility TOSCA files
58 copy:
59 src: "{{ item }}"
60 dest: "{{ cord_profile_dir }}/{{ item }}"
61 with_items:
62 - fixtures.yaml
63 - enable-onboarding.yaml
64 - disable-onboarding.yaml
65
66- name: Create templated XOS configuration files
67 template:
68 src: "{{ item }}.j2"
69 dest: "{{ cord_profile_dir }}/{{ item }}"
70 mode: 0644
71 with_items:
72 - xos_common_config
73 - deployment.yaml
74 - xos.yaml
75 - xos-bootstrap-docker-compose.yaml
76
77- name: Create profile specific templated TOSCA config files
78 template:
79 src: "{{ item }}.j2"
80 dest: "{{ cord_profile_dir }}/{{ item }}"
81 with_items: "{{ xos_tosca_config_templates }}"
82
83- name: Create profile specific templated non-TOSCA files
84 template:
85 src: "{{ item }}.j2"
86 dest: "{{ cord_profile_dir }}/{{ item }}"
87 with_items: "{{ xos_other_templates }}"
88
89- name: Copy admin_openrc.sh
90 when: use_openstack
91 copy:
92 remote_src: True
93 src: "{{ ansible_user_dir }}/admin-openrc.sh"
94 dest: "{{ cord_profile_dir }}/admin-openrc.sh"
95