class virtual::kvm::images { user { 'iso': ensure => present, home => "/usr/local/share/iso", } file { [ '/usr/local/share/iso', "/usr/local/share/iso/${lsbdistcodename}", "/usr/local/share/iso/${lsbdistcodename}/installer", "/usr/local/share/iso/${lsbdistcodename}/installer/profiles" ]: ensure => directory, owner => iso, group => iso, mode => '0755', require => User['iso'], } file { "/usr/local/share/iso/${lsbdistcodename}/installer/profiles/kvm-unencrypted.preseed": ensure => present, owner => root, group => root, mode => '0644', source => 'puppet:///modules/virtual/kvm/kvm-unencrypted.preseed', require => File["/usr/local/share/iso/${lsbdistcodename}/installer/profiles"], } exec { "build-simple-cdd-${lsbdistcodename}": command => '/usr/bin/build-simple-cdd --serial-console --profiles kvm-unencrypted', user => 'iso', timeout => 0, cwd => "/usr/local/share/iso/${lsbdistcodename}/installer", creates => "/usr/local/share/iso/${lsbdistcodename}/installer/images/debian-${lsbdistrelease}-${architecture}-CD-1.iso", require => [ File["/usr/local/share/iso/${lsbdistcodename}/installer/profiles/kvm-unencrypted.preseed"], Package['simple-cdd'] ], } exec { "debirf-make-profile-rescue-${lsbdistcodename}": command => 'tar xzf /usr/share/doc/debirf/example-profiles/rescue.tgz', user => 'iso', cwd => "/usr/local/share/iso/${lsbdistcodename}", creates => "/usr/local/share/iso/${lsbdistcodename}/rescue", require => [ File["/usr/local/share/iso/${lsbdistcodename}"], Package['debirf'] ], } exec { "debirf-make-rescue-${lsbdistcodename}": command => '/usr/bin/debirf make -n rescue', user => 'iso', timeout => 0, creates => "/usr/local/share/iso/${lsbdistcodename}/rescue/vmlinuz-${kernelrelease}", cwd => "/usr/local/share/iso/${lsbdistcodename}", require => Exec["debirf-make-profile-rescue-${lsbdistcodename}"], } exec { "debirf-makeiso-rescue-${lsbdistcodename}": command => '/usr/bin/debirf makeiso rescue', user => 'iso', timeout => 0, creates => "/usr/local/share/iso/${lsbdistcodename}/rescue/debirf-rescue_${lsbdistcodename}_${kernelrelease}.iso", cwd => "/usr/local/share/iso/${lsbdistcodename}", require => Exec["debirf-make-rescue-${lsbdistcodename}"], } }