From 4a69d386c55f01ef3645ad500d232f27fc7c2444 Mon Sep 17 00:00:00 2001 From: Michael Polenchuk Date: Wed, 15 Feb 2017 18:36:58 +0400 Subject: [fuel-plugin] Employ dedicated reboot task * Use native reboot task after kernel setup to avoid unexpected behavior. * Add support for removing installed kernel (get back to original one). * Create symlink to the headers to enable dkms modules to get source files of the kernel. Change-Id: Icdf8db267c69a55337910bc3aed15d56eb783ae5 Signed-off-by: Michael Polenchuk --- .../puppet/manifests/kvm-install.pp | 46 ++++++++++++++-------- 1 file changed, 30 insertions(+), 16 deletions(-) (limited to 'fuel-plugin/deployment_scripts') diff --git a/fuel-plugin/deployment_scripts/puppet/manifests/kvm-install.pp b/fuel-plugin/deployment_scripts/puppet/manifests/kvm-install.pp index 4c04aa0a6..fba3e38ce 100644 --- a/fuel-plugin/deployment_scripts/puppet/manifests/kvm-install.pp +++ b/fuel-plugin/deployment_scripts/puppet/manifests/kvm-install.pp @@ -1,18 +1,32 @@ $kvm_settings = hiera('fuel-plugin-kvm') -if $operatingsystem == 'Ubuntu' { - if $kvm_settings['use_kvm'] { - package { 'linux-headers-4.4.6-rt14nfv': - ensure => "1.0.OPNFV", - notify => Reboot['after_run'], - } -> - package { 'linux-image-4.4.6-rt14nfv': - ensure => "1.0.OPNFV", - notify => Reboot['after_run'], - } - reboot { 'after_run': - apply => finished, - } - } else { - } -} elsif $operatingsystem == 'CentOS' { + +case $::operatingsystem { + 'Ubuntu': { + $version = '4.4.6-rt14nfv' + $kernel_kit = ["linux-headers-${version}", "linux-image-${version}"] + $kernel_src = "/usr/src/linux-headers-${version}" + $kernel_src_link = "/lib/modules/${version}/build" + } + default: { + fail("Unsupported operating system: ${::osfamily}/${::operatingsystem}") + } + +} + +if $kvm_settings['use_kvm'] { + $ensure_pkg = '1.0.OPNFV' + $ensure_link = 'link' +} else { + $ensure_pkg = 'purged' + $ensure_link = 'absent' +} + +package { $kernel_kit: + ensure => $ensure_pkg, + before => File[$kernel_src_link], +} + +file { $kernel_src_link: + ensure => $ensure_link, + target => $kernel_src, } -- cgit 1.2.3-korg