* Detailed description of the problem and step-by-step instruction on how to reproduce it.
I have setup an all-in-one stable/juno devstack environment on Ubuntu 14.04.1 LTS, the new added ironic node sync IPMI power status failed with error: Failed to create the password file. expected a character buffer object, and oslo.messaging with 1.5.1 will report debug log every second in Ironic conductor log like https://bugs.launchpad.net/ironic/+bug/1399257 described, upgrade oslo.messaging version to the latest 1.6.0 the issue also occurred, the oslo.messaging reported log will disappear after downgraded to 1.4.1, but the ironic node still sync IPMI power status failed.
The command line ipmitool can check and control power status of the bare metal node successfully.
* Version: ironic stable/juno with Devstack all-in-one installation
* Output of utilities run:
Ironic conductor logs for sync power status failed:
2015-01-29 08:54:38.443 DEBUG oslo.messaging._drivers.impl_rabbit [-] Timed out waiting for RPC response: timed out from (pid=76084) _raise_timeout_if_deadline_is_reached /usr/local/lib/python2.7/dist-packages/oslo/messaging/_drivers/impl_rabbit.py:676
2015-01-29 08:54:38.443 DEBUG oslo.messaging._drivers.impl_rabbit [-] Timed out waiting for RPC response: timed out from (pid=76084) _raise_timeout_if_deadline_is_reached /usr/local/lib/python2.7/dist-packages/oslo/messaging/_drivers/impl_rabbit.py:676
2015-01-29 08:13:26.232 WARNING ironic.drivers.modules.ipmitool [-] IPMI power status failed for node 364b9f16-70dd-449a-b405-bae03ffc4ff2 with error: Failed to create the password file. expected a character buffer object.
2015-01-29 08:13:26.232 WARNING ironic.conductor.manager [-] During sync_power_state, could not get power state for node 364b9f16-70dd-449a-b405-bae03ffc4ff2. Error: IPMI call failed: power status..
The command line ipmitool control power status:
$ ipmitool -I lanplus -H 10.100.2.121 -U admin -P 12345678 chassis power status
Chassis Power is off
$ ipmitool -I lanplus -H 10.100.2.121 -U admin -P 12345678 chassis power on
Chassis Power Control: Up/On
$ ipmitool -I lanplus -H 10.100.2.121 -U admin -P 12345678 chassis power status
Chassis Power is on
Can you change ipmi admin password from numeric value (12345678) to a string and try again?
"expected a character buffer object" error message is a python error and if it works with new password (string not a numeric value), it means that we may need "password" casting to string and then pass to write()? str(password) )
---- ipmitool.py ---
f.write(password) -> f.write(
----