Blob Blame History Raw
From 6259df9c598c6b52c249084a4417e014e745cd21 Mon Sep 17 00:00:00 2001
From: Martin Magr <mmagr@redhat.com>
Date: Mon, 25 Aug 2014 15:15:55 +0200
Subject: [PATCH] Add manage_service feature

puppet-glance lacks of disabling service managing. This patch adds
$manage_service parameter to relevant classes.

Change-Id: I222b1a3318f5163f6ad1e39cbb8be10c440ab99f
Closes-bug: #1359823

Conflicts:
	manifests/api.pp
	manifests/registry.pp
---
 manifests/api.pp      | 15 +++++++++++----
 manifests/registry.pp | 34 +++++++++++++++++++++-------------
 2 files changed, 32 insertions(+), 17 deletions(-)

diff --git a/manifests/api.pp b/manifests/api.pp
index 4132014..c1977aa 100644
--- a/manifests/api.pp
+++ b/manifests/api.pp
@@ -92,6 +92,10 @@
 #   (optional) User to authenticate as with keystone.
 #   Defaults to 'glance'.
 #
+# [*manage_service*]
+#   (optional) If Puppet should manage service startup / shutdown.
+#   Defaults to true.
+#
 # [*enabled*]
 #   (optional) Whether to enable services.
 #   Defaults to true.
@@ -167,6 +171,7 @@ class glance::api(
   $pipeline              = 'keystone+cachemanagement',
   $keystone_tenant       = 'services',
   $keystone_user         = 'glance',
+  $manage_service           = true,
   $enabled               = true,
   $sql_idle_timeout      = '3600',
   $sql_connection        = 'sqlite:///var/lib/glance/glance.sqlite',
@@ -393,10 +398,12 @@ class glance::api(
           '/etc/glance/glance-cache.conf']:
   }
 
-  if $enabled {
-    $service_ensure = 'running'
-  } else {
-    $service_ensure = 'stopped'
+  if $manage_service {
+    if $enabled {
+      $service_ensure = 'running'
+    } else {
+      $service_ensure = 'stopped'
+    }
   }
 
   service { 'glance-api':
diff --git a/manifests/registry.pp b/manifests/registry.pp
index 2798d7d..2f7abba 100644
--- a/manifests/registry.pp
+++ b/manifests/registry.pp
@@ -75,8 +75,13 @@
 #    (optional) Syslog facility to receive log lines.
 #    Defaults to LOG_USER.
 #
+#  [*manage_service*]
+#    (optional) If Puppet should manage service startup / shutdown.
+#    Defaults to true.
+#
 #  [*enabled*]
-#    (optional) Should the service be enabled. Defaults to true.
+#    (optional) Should the service be enabled.
+#    Defaults to true.
 #
 #  [*purge_config*]
 #    (optional) Whether to create only the specified config values in
@@ -121,6 +126,7 @@ class glance::registry(
   $pipeline          = 'keystone',
   $use_syslog        = false,
   $log_facility      = 'LOG_USER',
+  $manage_service        = true,
   $enabled           = true,
   $purge_config      = false,
   $cert_file         = false,
@@ -292,21 +298,23 @@ class glance::registry(
           '/etc/glance/glance-registry-paste.ini']:
   }
 
-  if $enabled {
 
-    Exec['glance-manage db_sync'] ~> Service['glance-registry']
+  if $manage_service {
+    if $enabled {
+      Exec['glance-manage db_sync'] ~> Service['glance-registry']
 
-    exec { 'glance-manage db_sync':
-      command     => $::glance::params::db_sync_command,
-      path        => '/usr/bin',
-      user        => 'glance',
-      refreshonly => true,
-      logoutput   => on_failure,
-      subscribe   => [Package[$glance::params::registry_package_name], File['/etc/glance/glance-registry.conf']],
+      exec { 'glance-manage db_sync':
+        command     => $::glance::params::db_sync_command,
+        path        => '/usr/bin',
+        user        => 'glance',
+        refreshonly => true,
+        logoutput   => on_failure,
+        subscribe   => [Package[$glance::params::registry_package_name], File['/etc/glance/glance-registry.conf']],
+      }
+      $service_ensure = 'running'
+    } else {
+      $service_ensure = 'stopped'
     }
-    $service_ensure = 'running'
-  } else {
-    $service_ensure = 'stopped'
   }
 
   service { 'glance-registry':
-- 
1.9.3