@@ -106,13 +106,13 @@ def _getParentVarNamesRecursively(self, dependent_var, soft=False):
106106
107107class LocalConf (object ):
108108
109- def __init__ (self , localrc , localconf , services , plugins ):
109+ def __init__ (self , localrc , localconf , base_services , services , plugins ):
110110 self .localrc = []
111111 self .meta_sections = {}
112112 if plugins :
113113 self .handle_plugins (plugins )
114- if services :
115- self .handle_services (services )
114+ if services or base_services :
115+ self .handle_services (base_services , services or {} )
116116 if localrc :
117117 self .handle_localrc (localrc )
118118 if localconf :
@@ -123,9 +123,12 @@ def handle_plugins(self, plugins):
123123 if v :
124124 self .localrc .append ('enable_plugin {} {}' .format (k , v ))
125125
126- def handle_services (self , services ):
127- base_services = services .pop ('base' , True )
128- if not base_services :
126+ def handle_services (self , base_services , services ):
127+ enable_base_services = services .pop ('base' , True )
128+ if enable_base_services and base_services :
129+ self .localrc .append ('ENABLED_SERVICES={}' .format (
130+ "," .join (base_services )))
131+ else :
129132 self .localrc .append ('disable_all_services' )
130133 for k , v in services .items ():
131134 if v is False :
@@ -164,6 +167,7 @@ def main():
164167 module = AnsibleModule (
165168 argument_spec = dict (
166169 plugins = dict (type = 'dict' ),
170+ base_services = dict (type = 'list' ),
167171 services = dict (type = 'dict' ),
168172 localrc = dict (type = 'dict' ),
169173 local_conf = dict (type = 'dict' ),
@@ -174,6 +178,7 @@ def main():
174178 p = module .params
175179 lc = LocalConf (p .get ('localrc' ),
176180 p .get ('local_conf' ),
181+ p .get ('base_services' ),
177182 p .get ('services' ),
178183 p .get ('plugins' ))
179184 lc .write (p ['path' ])
0 commit comments