summaryrefslogtreecommitdiffstats
path: root/fuel-plugin-ovsnfv/deployment_scripts/puppet/modules/ovsdpdk/manifests/uninstall_ovs.pp
diff options
context:
space:
mode:
Diffstat (limited to 'fuel-plugin-ovsnfv/deployment_scripts/puppet/modules/ovsdpdk/manifests/uninstall_ovs.pp')
-rwxr-xr-xfuel-plugin-ovsnfv/deployment_scripts/puppet/modules/ovsdpdk/manifests/uninstall_ovs.pp46
1 files changed, 46 insertions, 0 deletions
diff --git a/fuel-plugin-ovsnfv/deployment_scripts/puppet/modules/ovsdpdk/manifests/uninstall_ovs.pp b/fuel-plugin-ovsnfv/deployment_scripts/puppet/modules/ovsdpdk/manifests/uninstall_ovs.pp
new file mode 100755
index 0000000..97afdd7
--- /dev/null
+++ b/fuel-plugin-ovsnfv/deployment_scripts/puppet/modules/ovsdpdk/manifests/uninstall_ovs.pp
@@ -0,0 +1,46 @@
+# == Class: ovsdpdk::uninstall_ovs
+#
+# Provides uninstallation of openvswitch package (if present) together with removing of kernel module
+#
+class ovsdpdk::uninstall_ovs (
+ $openvswitch_service_name = $::ovsdpdk::params::openvswitch_service_name,
+ $openvswitch_agent = $::ovsdpdk::params::openvswitch_agent,
+ $install_packages = $::ovsdpdk::params::install_packages,
+ $openvswitch_agent = $::ovsdpdk::params::openvswitch_agent,
+) inherits ovsdpdk {
+
+ #Due to dependencies to other packages, we won't purge vanilla OVS
+ #package { $remove_packages: ensure => 'purged' }
+
+ if $compute == 'True' {
+ exec { "/usr/sbin/service ${openvswitch_service_name} stop":
+ user => root,
+ }
+
+# This is required for Liberty
+# exec { "/usr/sbin/service ${openvswitch_agent} stop":
+# user => root,
+# path => "/usr/bin:/bin",
+# }
+ }
+
+ if $controller == 'True' {
+ exec { '/usr/sbin/service neutron-server stop':
+ user => root,
+ path => "/usr/bin:/bin",
+ onlyif => "ps aux | grep -vws grep | grep -ws neutron-server"
+ }
+ }
+
+ package { $install_packages: ensure => 'installed' }
+
+ if $compute == 'True' {
+ exec { '/sbin/modprobe -r openvswitch':
+ onlyif => "/bin/grep -q '^openvswitch' '/proc/modules'",
+ user => root,
+# require => Exec["/usr/sbin/service ${openvswitch_agent} stop"],
+ }
+ }
+
+}
+