From 453eb8a021ece8210ebfdad48ce4441c0078feb4 Mon Sep 17 00:00:00 2001 From: Julia Kreger Date: Thu, 3 Dec 2015 14:50:13 -0500 Subject: [PATCH] Add VM creation support on Debian jessie Debian jessie changed the libvirt service name from the prior release and as such we need additional logic to load the defaults and a defaults file that represents jessie. Additionally, we need to ensure that we start the default network as it may not be started by default on Debian jessie. Change-Id: I48a64f61d8ba42f76c2df3b984d3090b68e3cf93 Partial-Bug: 1522552 --- .../defaults/dummy-defaults.yml | 2 ++ .../defaults/required_defaults_Debian_jessie.yml | 2 ++ .../roles/bifrost-create-vm-nodes/tasks/main.yml | 12 ++++++++++++ 3 files changed, 16 insertions(+) create mode 100644 playbooks/roles/bifrost-create-vm-nodes/defaults/dummy-defaults.yml create mode 100644 playbooks/roles/bifrost-create-vm-nodes/defaults/required_defaults_Debian_jessie.yml diff --git a/playbooks/roles/bifrost-create-vm-nodes/defaults/dummy-defaults.yml b/playbooks/roles/bifrost-create-vm-nodes/defaults/dummy-defaults.yml new file mode 100644 index 000000000..4dc461926 --- /dev/null +++ b/playbooks/roles/bifrost-create-vm-nodes/defaults/dummy-defaults.yml @@ -0,0 +1,2 @@ +--- +# Note(TheJulia): This file is intentionally left empty. Do not edit. diff --git a/playbooks/roles/bifrost-create-vm-nodes/defaults/required_defaults_Debian_jessie.yml b/playbooks/roles/bifrost-create-vm-nodes/defaults/required_defaults_Debian_jessie.yml new file mode 100644 index 000000000..f4485d8b6 --- /dev/null +++ b/playbooks/roles/bifrost-create-vm-nodes/defaults/required_defaults_Debian_jessie.yml @@ -0,0 +1,2 @@ +--- +libvirt_service_name: libvirtd diff --git a/playbooks/roles/bifrost-create-vm-nodes/tasks/main.yml b/playbooks/roles/bifrost-create-vm-nodes/tasks/main.yml index e977dce10..809cc1251 100644 --- a/playbooks/roles/bifrost-create-vm-nodes/tasks/main.yml +++ b/playbooks/roles/bifrost-create-vm-nodes/tasks/main.yml @@ -23,6 +23,11 @@ with_first_found: - "../defaults/required_defaults_{{ ansible_distribution }}.yml" - "../defaults/required_defaults_{{ ansible_os_family }}.yml" +- name: "Include OS version-specific defaults" + include_vars: "{{ item }}" + with_first_found: + - "../defaults/required_defaults_{{ ansible_distribution }}_{{ ansible_distribution_release }}.yml" + - "../defaults/dummy-defaults.yml" # NOTE(cinerama): On Fedora 22, ansible 1.9, ansible_pkg_mgr # defaults to yum, which may not be installed. This can be safely # removed when we start using an ansible release which prefers dnf. @@ -39,6 +44,13 @@ with_items: required_packages - name: "Restart libvirt service" service: name="{{libvirt_service_name}}" state=restarted +- name: "Verify default network is running" + shell: virsh net-info default |grep Active|grep -q yes + register: virsh_network_status + ignore_errors: yes +- name: "Start default network if not running" + command: virsh net-start default + when: virsh_network_status.rc != 0 - name: "Create virtual machines" script: create_vm_nodes-for-role.sh environment: