--- # 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. - name: Get CPU info content and store as var command: cat /proc/cpuinfo register: cpuinfo_contents changed_when: false - name: Check for existence of KVM node stat: path: "/dev/kvm" register: dev_kvm - name: Register a fact for the nova kvm virt type set_fact: nova_virt_type: "kvm" when: - cpuinfo_contents.stdout.find('vmx') != -1 or cpuinfo_contents.stdout.find('svm') != -1 or cpuinfo_contents.stdout.find('PowerNV') != -1 or (cpuinfo_contents.stdout.find('pSeries') != -1 and cpuinfo_contents.stdout.find('qemu') != -1 and ansible_architecture == 'ppc64le') or (dev_kvm.stat.ischr is defined and dev_kvm.stat.ischr and ansible_architecture == 'aarch64') - name: Register a fact for the nova powervm virt type set_fact: nova_virt_type: "powervm" when: - nova_virt_type is not defined - cpuinfo_contents.stdout.find('pSeries') != -1 - ansible_architecture == 'ppc64le' - cpuinfo_contents.stdout.find('qemu') == -1 - name: Register a fact for the nova qemu virt type set_fact: nova_virt_type: "qemu" when: - nova_virt_type is not defined - name: Remove lib linking for kvm with ironic set_fact: nova_compute_kvm_packages_to_symlink: [] when: - nova_virt_type == 'ironic'