Bladeren bron

libvirt: fall back to mkisofs if genisoimage isn't available

Dan Williams 8 jaren geleden
bovenliggende
commit
04b1c99fd2
2 gewijzigde bestanden met toevoegingen van 6 en 2 verwijderingen
  1. 1 1
      README_libvirt.md
  2. 5 1
      playbooks/libvirt/openshift-cluster/tasks/launch_instances.yml

+ 1 - 1
README_libvirt.md

@@ -15,7 +15,7 @@ Install dependencies
 3.	Install [ebtables](http://ebtables.netfilter.org/)
 4.	Install [qemu and qemu-system-x86](http://wiki.qemu.org/Main_Page)
 5.	Install [libvirt-python and libvirt](http://libvirt.org/)
-6.	Install [genisoimage](http://cdrkit.org/)
+6.	Install [genisoimage](http://cdrkit.org/) or [mkisofs](http://cdrtools.sourceforge.net/private/cdrecord.html)
 7.	Enable and start the libvirt daemon, e.g:
 	-	`systemctl enable libvirtd`
 	-	`systemctl start libvirtd`

+ 5 - 1
playbooks/libvirt/openshift-cluster/tasks/launch_instances.yml

@@ -49,8 +49,12 @@
     - '{{ instances }}'
     - [ user-data, meta-data ]
 
+- name: Check for genisoimage
+  command: which genisoimage
+  register: which_genisoimage
+
 - name: Create the cloud-init config drive
-  command: 'genisoimage -output {{ libvirt_storage_pool_path }}/{{ item }}_cloud-init.iso -volid cidata -joliet -rock user-data meta-data'
+  command: '{{ 'genisoimage' if which_genisoimage.rc == 0 else 'mkisofs'}} -output {{ libvirt_storage_pool_path }}/{{ item }}_cloud-init.iso -volid cidata -joliet -rock user-data meta-data'
   args:
     chdir: '{{ libvirt_storage_pool_path }}/{{ item }}_configdrive/'
     creates: '{{ libvirt_storage_pool_path }}/{{ item }}_cloud-init.iso'