From f89ef9a9ee968c778af3444c7f9d2a39489fcf2b Mon Sep 17 00:00:00 2001 From: Harry Huang Date: Thu, 11 Oct 2018 11:05:02 +0800 Subject: Manage host power from cobbler JIRA: COMPASS-616 1. Use fence_ipmilan to control power of baremetal servers. Add fence_libvirt to control power of virtual servers. 2. Use power_manage field instead of ipmi field 3. Add power_type to specify machine's power manage tool 4. Store power manage information in db and update to cobbler 5. Manage power from cobbler for both virtual and baremetal machines Change-Id: Ic36ae640dc0aa1703566b5b0b549880a71be36e4 Signed-off-by: Harry Huang --- compass-deck/apiclient/restful.py | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) (limited to 'compass-deck/apiclient/restful.py') diff --git a/compass-deck/apiclient/restful.py b/compass-deck/apiclient/restful.py index bb82922..f5d4855 100644 --- a/compass-deck/apiclient/restful.py +++ b/compass-deck/apiclient/restful.py @@ -231,7 +231,7 @@ class Client(object): return self._get('/switches/%s/machines-hosts' % switch_id, data=data) def add_switch_machine(self, switch_id, mac=None, port=None, - vlans=None, ipmi_credentials=None, + vlans=None, power_manage=None, tag=None, location=None, raw_data=None): data = {} if raw_data: @@ -246,8 +246,8 @@ class Client(object): if vlans: data['vlans'] = vlans - if ipmi_credentials: - data['ipmi_credentials'] = ipmi_credentials + if power_manage: + data['power_manage'] = power_manage if tag: data['tag'] = tag @@ -258,7 +258,7 @@ class Client(object): return self._post('/switches/%s/machines' % switch_id, data=data) def update_switch_machine(self, switch_id, machine_id, port=None, - vlans=None, ipmi_credentials=None, tag=None, + vlans=None, power_manage=None, tag=None, location=None, raw_data=None): data = {} if raw_data: @@ -270,8 +270,8 @@ class Client(object): if vlans: data['vlans'] = vlans - if ipmi_credentials: - data['ipmi_credentials'] = ipmi_credentials + if power_manage: + data['power_manage'] = power_manage if tag: data['tag'] = tag @@ -412,14 +412,14 @@ class Client(object): return self._get('/machines/%s' % machine_id, data=data) - def update_machine(self, machine_id, ipmi_credentials=None, tag=None, + def update_machine(self, machine_id, power_manage=None, tag=None, location=None, raw_data=None): data = {} if raw_data: data = raw_data else: - if ipmi_credentials: - data['ipmi_credentials'] = ipmi_credentials + if power_manage: + data['power_manage'] = power_manage if tag: data['tag'] = tag @@ -429,15 +429,15 @@ class Client(object): return self._put('/machines/%s' % machine_id, data=data) - def patch_machine(self, machine_id, ipmi_credentials=None, + def patch_machine(self, machine_id, power_manage=None, tag=None, location=None, raw_data=None): data = {} if raw_data: data = raw_data else: - if ipmi_credentials: - data['ipmi_credentials'] = ipmi_credentials + if power_manage: + data['power_manage'] = power_manage if tag: data['tag'] = tag -- cgit 1.2.3-korg