openstack-ansible-os_nova/tasks/nova_post_install.yml
Anton Khaldin 7f69cdd1df Only install to virtual environment
Remove all tasks and variables related to toggling between installation
of nova inside or outside of a Python virtual environment.
Installing within a venv is now the only supported deployment.

Additionally, a few changes have been made to make the creation of the
venv more resistant to interruptions during a run of the role.
* unarchiving a pre-built venv will now also occur when the venv
  directory is created, not only after being downloaded
* virtualenv-tools is run against both pre-built and non pre-built venvs
  to account for interruptions during or prior to unarchiving

Change-Id: Ia8687d49803705702f0e9f7ea9a83d3c05694d46
Implements: blueprint only-install-venvs
2016-07-21 17:16:33 +00:00

88 lines
3.0 KiB
YAML

---
# Copyright 2014, Rackspace US, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# NOTE(cloudnull) this task is not in dict formation because it is
# dynamically loading facts from the nova_virt_types based on the
# nova_virt_type setting.
- name: Set nova config facts
set_fact: '{{ item.key }}="{{ item.value }}"'
with_dict: "{{ nova_virt_types[nova_virt_type] }}"
when:
- item.key not in hostvars[inventory_hostname] or item.key is undefined
tags:
- nova-config
- nova-post-install
- name: Generate nova config
config_template:
src: "{{ item.src }}"
dest: "{{ item.dest }}"
owner: "{{ item.owner|default(nova_system_user_name) }}"
group: "{{ item.group|default(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"
owner: "root"
group: "root"
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: Copy nova rootwrap filter config
copy:
src: "{{ item.src }}"
dest: "{{ item.dest }}"
owner: "root"
group: "root"
with_items:
- { 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" }
notify: Restart nova services
tags:
- nova-config
- nova-post-install
- name: Drop sudoers file
template:
src: "sudoers.j2"
dest: "/etc/sudoers.d/{{ nova_system_user_name }}_sudoers"
mode: "0440"
owner: "root"
group: "root"
tags:
- sudoers
- nova-sudoers