
The idea is to factor out a role for deploying Nova related services to cells. Since all deployments use cells, this role can be used in both regular deployments which have just cell0 and cell1, and deployments with many cells. Partially Implements: blueprint support-nova-cells Change-Id: Ib1f36ec0a773c384f2c1eac1843782a3e766045a
69 lines
2.2 KiB
YAML
69 lines
2.2 KiB
YAML
---
|
|
- name: Ensuring config directories exist
|
|
become: true
|
|
file:
|
|
path: "{{ node_config_directory }}/nova-compute-fake-{{ item }}"
|
|
state: "directory"
|
|
mode: "0770"
|
|
with_sequence: start=1 end={{ num_nova_fake_per_node }}
|
|
notify:
|
|
- Restart nova-compute-fake containers
|
|
|
|
- name: Copying over config.json files for services
|
|
become: true
|
|
template:
|
|
src: "nova-compute.json.j2"
|
|
dest: "{{ node_config_directory }}/nova-compute-fake-{{ item }}/config.json"
|
|
mode: "0660"
|
|
with_sequence: start=1 end={{ num_nova_fake_per_node }}
|
|
notify:
|
|
- Restart nova-compute-fake containers
|
|
|
|
- name: Copying over nova.conf
|
|
become: true
|
|
vars:
|
|
service_name: "{{ item }}"
|
|
merge_configs:
|
|
sources:
|
|
- "{{ role_path }}/templates/nova.conf.j2"
|
|
- "{{ node_custom_config }}/global.conf"
|
|
- "{{ node_custom_config }}/nova.conf"
|
|
- "{{ node_custom_config }}/nova/{{ item }}.conf"
|
|
- "{{ node_custom_config }}/nova/{{ inventory_hostname }}/nova.conf"
|
|
dest: "{{ node_config_directory }}/nova-compute-fake-{{ item }}/nova.conf"
|
|
mode: "0660"
|
|
with_sequence: start=1 end={{ num_nova_fake_per_node }}
|
|
|
|
- name: Ensuring config directory has correct owner and permission
|
|
become: true
|
|
file:
|
|
path: "{{ node_config_directory }}/nova-compute-fake-{{ item }}"
|
|
recurse: yes
|
|
owner: "{{ config_owner_user }}"
|
|
group: "{{ config_owner_group }}"
|
|
with_sequence: start=1 end={{ num_nova_fake_per_node }}
|
|
notify:
|
|
- Restart nova-compute-fake containers
|
|
|
|
- name: Check nova-compute-fake containers
|
|
become: true
|
|
kolla_docker:
|
|
action: "compare_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "nova_compute_fake_{{ item }}"
|
|
image: "{{ nova_compute_image_full }}"
|
|
privileged: True
|
|
volumes:
|
|
- "{{ node_config_directory }}/nova-compute-fake-{{ item }}/:{{ container_config_directory }}/:ro"
|
|
- "/etc/localtime:/etc/localtime:ro"
|
|
- "/lib/modules:/lib/modules:ro"
|
|
- "/run:/run:shared"
|
|
- "kolla_logs:/var/log/kolla/"
|
|
with_sequence: start=1 end={{ num_nova_fake_per_node }}
|
|
when:
|
|
- kolla_action != "config"
|
|
- inventory_hostname in groups['compute']
|
|
- enable_nova_fake | bool
|
|
notify:
|
|
- Restart nova-compute-fake containers
|