diff --git a/playbooks/roles/os_nova/defaults/main.yml b/playbooks/roles/os_nova/defaults/main.yml index 3553365a49..e2b1e7a3e7 100644 --- a/playbooks/roles/os_nova/defaults/main.yml +++ b/playbooks/roles/os_nova/defaults/main.yml @@ -335,3 +335,10 @@ nova_pip_packages: - python-novaclient - keystonemiddleware - nova + + +## Tunable overrides +nova_nova_conf_overrides: {} +nova_rootwrap_conf_overrides: {} +nova_api_paste_ini_overrides: {} +nova_policy_overrides: {} diff --git a/playbooks/roles/os_nova/tasks/nova_post_install.yml b/playbooks/roles/os_nova/tasks/nova_post_install.yml index 7276e9c8bb..f94fff4eb8 100644 --- a/playbooks/roles/os_nova/tasks/nova_post_install.yml +++ b/playbooks/roles/os_nova/tasks/nova_post_install.yml @@ -13,6 +13,37 @@ # See the License for the specific language governing permissions and # limitations under the License. +- name: Copy nova config + config_template: + src: "{{ item.src }}" + dest: "{{ item.dest }}" + owner: "{{ nova_system_user_name }}" + group: "{{ nova_system_group_name }}" + mode: "0644" + config_overrides: "{{ item.config_overrides }}" + config_type: "{{ item.config_type }}" + with_items: + - src: "nova.conf.j2" + dest: "/etc/nova/nova.conf" + config_overrides: "{{ nova_nova_conf_overrides }}" + config_type: "ini" + - src: "rootwrap.conf.j2" + dest: "/etc/nova/rootwrap.conf" + config_overrides: "{{ nova_rootwrap_conf_overrides }}" + config_type: "ini" + - src: "api-paste.ini.j2" + dest: "/etc/nova/api-paste.ini" + config_overrides: "{{ nova_api_paste_ini_overrides }}" + config_type: "ini" + - src: "policy.json.j2" + dest: "/etc/nova/policy.json" + config_overrides: "{{ nova_policy_overrides }}" + config_type: "json" + notify: Restart nova services + tags: + - nova-config + - nova-post-install + - name: Generate nova config copy: src: "{{ item.src }}" @@ -20,42 +51,12 @@ owner: "{{ nova_system_user_name }}" group: "{{ nova_system_group_name }}" with_items: - - { src: "rootwrap.conf", dest: "/etc/nova/rootwrap.conf" } - { src: "rootwrap.d/api-metadata.filters", dest: "/etc/nova/rootwrap.d/api-metadata.filters" } - { src: "rootwrap.d/baremetal-compute-ipmi.filters", dest: "/etc/nova/rootwrap.d/baremetal-compute-ipmi.filters" } - { src: "rootwrap.d/baremetal-deploy-helper.filters", dest: "/etc/nova/rootwrap.d/baremetal-deploy-helper.filters" } - { src: "rootwrap.d/compute.filters", dest: "/etc/nova/rootwrap.d/compute.filters" } - { src: "rootwrap.d/network.filters", dest: "/etc/nova/rootwrap.d/network.filters" } - - { src: "api-paste.ini", dest: "/etc/nova/api-paste.ini" } notify: Restart nova services tags: - nova-config - nova-post-install - -- name: Copy nova config - template: - src: "{{ item.src }}" - dest: "{{ item.dest }}" - owner: "{{ nova_system_user_name }}" - group: "{{ nova_system_group_name }}" - with_items: - - { src: "nova.conf.j2", dest: "/etc/nova/nova.conf" } - notify: Restart nova services - tags: - - nova-config - - nova-post-install - -- name: Apply updates to Policy file - config_template: - src: "policy.json" - dest: "/etc/nova/policy.json" - owner: "{{ nova_system_user_name }}" - group: "{{ nova_system_group_name }}" - mode: "0644" - config_overrides: "{{ nova_policy_overrides|default({}) }}" - config_type: "json" - notify: - - Restart nova services - tags: - - nova-config - - nova-post-install diff --git a/playbooks/roles/os_nova/files/api-paste.ini b/playbooks/roles/os_nova/templates/api-paste.ini.j2 similarity index 100% rename from playbooks/roles/os_nova/files/api-paste.ini rename to playbooks/roles/os_nova/templates/api-paste.ini.j2 diff --git a/playbooks/roles/os_nova/templates/policy.json b/playbooks/roles/os_nova/templates/policy.json.j2 similarity index 100% rename from playbooks/roles/os_nova/templates/policy.json rename to playbooks/roles/os_nova/templates/policy.json.j2 diff --git a/playbooks/roles/os_nova/files/rootwrap.conf b/playbooks/roles/os_nova/templates/rootwrap.conf.j2 similarity index 100% rename from playbooks/roles/os_nova/files/rootwrap.conf rename to playbooks/roles/os_nova/templates/rootwrap.conf.j2