From beb67f30d16b71c9aed508db68f1c99ccc7f2e62 Mon Sep 17 00:00:00 2001 From: James Laska Date: Wed, 19 Nov 2008 09:46:47 -0500 Subject: Add support for fence_bladecenter power control --- cobbler/action_power.py | 1 + cobbler/item_system.py | 2 +- cobbler/modules/cli_system.py | 2 +- installer_templates/settings.template | 1 + setup.py | 1 + templates/power_bladecenter.template | 1 + webui_templates/system_edit.tmpl | 2 +- 7 files changed, 7 insertions(+), 3 deletions(-) create mode 100644 templates/power_bladecenter.template diff --git a/cobbler/action_power.py b/cobbler/action_power.py index 9934d8d0..44013d3b 100644 --- a/cobbler/action_power.py +++ b/cobbler/action_power.py @@ -132,6 +132,7 @@ class PowerTool: "ilo" : "/etc/cobbler/power_ilo.template", "rsa" : "/etc/cobbler/power_rsa.template", "lpar" : "/etc/cobbler/power_lpar.template", + "bladecenter": "/etc/cobbler/power_bladecenter.template", } result = map.get(self.system.power_type, "") diff --git a/cobbler/item_system.py b/cobbler/item_system.py index 520e3c02..22b99d45 100644 --- a/cobbler/item_system.py +++ b/cobbler/item_system.py @@ -503,7 +503,7 @@ class System(item.Item): def set_power_type(self, power_type): power_type = power_type.lower() - valid = "bullpap wti apc_snmp ether-wake ipmilan drac ipmitool ilo rsai lpar none" + valid = "bullpap wti apc_snmp ether-wake ipmilan drac ipmitool ilo rsai lpar bladecenter none" choices = valid.split(" ") choices.sort() if power_type not in choices: diff --git a/cobbler/modules/cli_system.py b/cobbler/modules/cli_system.py index c8c64286..36ec6188 100644 --- a/cobbler/modules/cli_system.py +++ b/cobbler/modules/cli_system.py @@ -97,7 +97,7 @@ class SystemFunction(commands.CobblerFunction): if not self.matches_args(args,["dumpvars","remove","report","getks","list"]): p.add_option("--power-pass", dest="power_pass", help="password for power management interface") if not self.matches_args(args,["dumpvars","poweron","poweroff","reboot","remove","report","getks","list"]): - p.add_option("--power-type", dest="power_type", help="one of: none, apc_snmp, bullpap, drac, ether-wake, ilo, ipmilan, ipmitool, wti, lpar") + p.add_option("--power-type", dest="power_type", help="one of: none, apc_snmp, bullpap, drac, ether-wake, ilo, ipmilan, ipmitool, wti, lpar, bladecenter") if not self.matches_args(args,["dumpvars","remove","report","getks","list"]): p.add_option("--power-user", dest="power_user", help="username for power management interface, if required") diff --git a/installer_templates/settings.template b/installer_templates/settings.template index 55724310..9083c153 100644 --- a/installer_templates/settings.template +++ b/installer_templates/settings.template @@ -162,6 +162,7 @@ omshell_bin: /usr/bin/omshell # ilo # rsa # lpar +# bladecenter power_management_default_type: 'ipmitool' diff --git a/setup.py b/setup.py index 51df55b2..b148ba91 100644 --- a/setup.py +++ b/setup.py @@ -220,6 +220,7 @@ if __name__ == "__main__": (etcpath, ['templates/power_wti.template']), (etcpath, ['templates/power_ilo.template']), (etcpath, ['templates/power_lpar.template']), + (etcpath, ['templates/power_bladecenter.template']), # templates for /usr/bin/cobbler-setup (itemplates, ['installer_templates/modules.conf.template']), diff --git a/templates/power_bladecenter.template b/templates/power_bladecenter.template new file mode 100644 index 00000000..d350fa58 --- /dev/null +++ b/templates/power_bladecenter.template @@ -0,0 +1 @@ +/sbin/fence_bladecenter -x -a $power_address -l $power_user -p $power_pass -n $power_id -o $power_mode diff --git a/webui_templates/system_edit.tmpl b/webui_templates/system_edit.tmpl index c99b01ea..b2f80ca4 100644 --- a/webui_templates/system_edit.tmpl +++ b/webui_templates/system_edit.tmpl @@ -643,7 +643,7 @@ function page_onload() {