summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichal Skalski <mskalski@mirantis.com>2016-09-18 14:16:16 +0200
committerMichal Skalski <mskalski@mirantis.com>2016-09-18 14:30:33 +0200
commita10a10b373f17dc423800e6bb8d1a8e99450090d (patch)
tree972735bac4d8d5213f5d718f4e6e8f0a77f8aae8
parentb8f6485d5a5c66f0fce566e59b8b5891c6a7f571 (diff)
[Fuel-plugin] Install kernel in post-deployment.
Install kernel and reboot compute nodes in post-deployment phase when there is less chance to interfere with other tasks. Implement Michael's suggestion to use reboot puppet module. Change-Id: I83867e5e2752c39d2b69c950e3e475d43de04466 Signed-off-by: Michal Skalski <mskalski@mirantis.com>
-rw-r--r--.gitignore4
-rw-r--r--fuel-plugin/deployment_scripts/puppet/manifests/kvm-install.pp13
-rw-r--r--fuel-plugin/deployment_scripts/puppet/modules/.gitkeep0
-rw-r--r--fuel-plugin/deployment_tasks.yaml8
-rwxr-xr-xfuel-plugin/pre_build_hook8
5 files changed, 23 insertions, 10 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000..23e440920
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+*.rpm
+*.deb
+fuel-plugin/.build/
+fuel-plugin/deployment_scripts/puppet/modules/reboot
diff --git a/fuel-plugin/deployment_scripts/puppet/manifests/kvm-install.pp b/fuel-plugin/deployment_scripts/puppet/manifests/kvm-install.pp
index a396e9472..4c04aa0a6 100644
--- a/fuel-plugin/deployment_scripts/puppet/manifests/kvm-install.pp
+++ b/fuel-plugin/deployment_scripts/puppet/manifests/kvm-install.pp
@@ -1,15 +1,16 @@
-$fuel_settings = parseyaml(file('/etc/astute.yaml'))
+$kvm_settings = hiera('fuel-plugin-kvm')
if $operatingsystem == 'Ubuntu' {
- if $fuel_settings['fuel-plugin-kvm']['use_kvm'] {
+ 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",
- } ->
- exec {'reboot':
- command => "reboot",
- path => "/usr/bin:/usr/sbin:/bin:/sbin",
+ notify => Reboot['after_run'],
+ }
+ reboot { 'after_run':
+ apply => finished,
}
} else {
}
diff --git a/fuel-plugin/deployment_scripts/puppet/modules/.gitkeep b/fuel-plugin/deployment_scripts/puppet/modules/.gitkeep
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/fuel-plugin/deployment_scripts/puppet/modules/.gitkeep
diff --git a/fuel-plugin/deployment_tasks.yaml b/fuel-plugin/deployment_tasks.yaml
index f6e31e3ee..0aee295c1 100644
--- a/fuel-plugin/deployment_tasks.yaml
+++ b/fuel-plugin/deployment_tasks.yaml
@@ -1,10 +1,10 @@
- id: kvm_install
type: puppet
version: 2.0.0
- groups: [compute]
- required_for: [firewall]
- requires: [tools]
+ role: [compute]
+ required_for: [post_deployment_end]
+ requires: [post_deployment_start]
parameters:
puppet_manifest: puppet/manifests/kvm-install.pp
puppet_modules: puppet/modules:/etc/puppet/modules
- timeout: 720
+ timeout: 1200
diff --git a/fuel-plugin/pre_build_hook b/fuel-plugin/pre_build_hook
index a3c883283..259862f8f 100755
--- a/fuel-plugin/pre_build_hook
+++ b/fuel-plugin/pre_build_hook
@@ -4,6 +4,10 @@ set -eux
BUILD_FOR=${BUILD_FOR:-ubuntu}
DIR="$(dirname `readlink -f $0`)"
+MODULES="${DIR}/deployment_scripts/puppet/modules"
+
+REBOOT_VER='1.2.1'
+REBOOT_URL="https://github.com/puppetlabs/puppetlabs-reboot/archive/${REBOOT_VER}.tar.gz"
function build_pkg {
case $1 in
@@ -25,3 +29,7 @@ for system in $BUILD_FOR
do
build_pkg $system
done
+
+rm -rf ${MODULES}/reboot
+mkdir -p ${MODULES}/reboot
+wget -qO- ${REBOOT_URL} | tar -C ${MODULES}/reboot --strip-components=1 -zxvf -