diff --git a/node-daemon/pvcd.sample.yaml b/node-daemon/pvcd.sample.yaml index eca421fd..157cea8f 100644 --- a/node-daemon/pvcd.sample.yaml +++ b/node-daemon/pvcd.sample.yaml @@ -25,6 +25,8 @@ pvc: enable_storage: True # enable_api: Enable or disable the API client, if installed, when node is Primary enable_api: True + # enable_provisioner: Enable or disable the Provisioner client, if installed, when node is Primary + enable_provisioner: True # cluster: Cluster-level configuration cluster: # coordinators: The list of cluster coordinator hostnames diff --git a/node-daemon/pvcd/Daemon.py b/node-daemon/pvcd/Daemon.py index 5a058098..9b748dfb 100644 --- a/node-daemon/pvcd/Daemon.py +++ b/node-daemon/pvcd/Daemon.py @@ -138,6 +138,7 @@ def readConfig(pvcd_config_file, myhostname): 'enable_networking': o_config['pvc']['functions']['enable_networking'], 'enable_storage': o_config['pvc']['functions']['enable_storage'], 'enable_api': o_config['pvc']['functions']['enable_api'], + 'enable_provisioner': o_config['pvc']['functions']['enable_provisioner'], 'dynamic_directory': o_config['pvc']['system']['configuration']['directories']['dynamic_directory'], 'log_directory': o_config['pvc']['system']['configuration']['directories']['log_directory'], 'console_log_directory': o_config['pvc']['system']['configuration']['directories']['console_log_directory'], diff --git a/node-daemon/pvcd/NodeInstance.py b/node-daemon/pvcd/NodeInstance.py index 56bbd61c..e2e4f081 100644 --- a/node-daemon/pvcd/NodeInstance.py +++ b/node-daemon/pvcd/NodeInstance.py @@ -266,6 +266,10 @@ class NodeInstance(object): if self.config['enable_api']: self.logger.out('Stopping PVC API client service', state='i') common.run_os_command("systemctl stop pvc-api.service") + if self.config['enable_provisioner']: + self.logger.out('Stopping PVC Provisioner service', state='i') + common.run_os_command("systemctl stop pvc-provisioner.service") + common.run_os_command("systemctl stop pvc-provisioner-worker.service") for network in self.d_network: self.d_network[network].stopDHCPServer() self.d_network[network].removeGateways() @@ -287,6 +291,10 @@ class NodeInstance(object): if self.config['enable_api']: self.logger.out('Starting PVC API client service', state='i') common.run_os_command("systemctl start pvc-api.service") + if self.config['enable_provisioner']: + self.logger.out('Starting PVC Provisioner service', state='i') + common.run_os_command("systemctl start pvc-provisioner-worker.service") + common.run_os_command("systemctl start pvc-provisioner.service") time.sleep(1) # Switch Patroni leader to the local instance