--- # Copyright 2018, SUSE Linux GmbH. # # 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. # # Compile a list of the distro packages to install based on # whether the host is in the host group and the service is # enabled. # nova_package_list: |- {% set packages = nova_distro_packages %} {% if nova_services['nova-novncproxy']['group'] in group_names or nova_services['nova-spicehtml5proxy']['group'] in group_names or nova_services['nova-serialconsole-proxy']['group'] in group_names %} {% if nova_console_type == 'novnc' %} {% set _ = packages.extend(nova_service_extra_distro_packages['novnc']) %} {% endif %} {% if nova_console_type == 'spice' %} {% set _ = packages.extend(nova_service_extra_distro_packages['spice']) %} {% endif %} {% if nova_console_type == 'serialconsole' %} {% set _ = packages.extend(nova_service_extra_distro_packages['serialconsole']) %} {% endif %} {% endif %} {% if nova_services['nova-compute']['group'] in group_names %} {% set _ = packages.extend(nova_compute_packages) %} {% if nova_virt_type in ['kvm', 'qemu'] %} {% set _ = packages.extend(nova_compute_kvm_distro_packages) %} {% set _ = packages.extend(nova_service_extra_distro_packages['kvm']) %} {% if nova_compute_ksm_enabled %} {% set _ = packages.extend(nova_compute_ksm_packages) %} {% endif %} {% endif %} {% if nova_barbican_enabled | bool %} {% set _ = packages.extend(nova_compute_barbican_distro_packages) %} {% endif %} {% endif %} {% if nova_oslomsg_amqp1_enabled | bool %} {% set _ = packages.extend(nova_compute_oslomsg_amqp1_distro_packages) %} {% endif %} {% set _ = packages.extend(nova_service_distro_packages) %} {{ packages }} _nova_bin: '/usr/bin'