IPA: Fail to clean drives

Bug #1469838 reported by Jacob McCann
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Ironic
Fix Released
Undecided
Jacob McCann

Bug Description

With newer build of ironic python agent from http://tarballs.openstack.org/ironic-python-agent/coreos/files/ I started running into failed cleaning.

Snippet of error from ironic-conductor DEBUG logging (pardon the text blob ... not sure how to properly format in launchpad):

2015-06-29 17:50:20.045 1904 DEBUG ironic.drivers.modules.agent_base_vendor [-] Cleaning command status for node 355f28d4-35b8-45ce-aba3-946952c8c0d9 on step {u'priority': 10, u'interface': u'deploy', u'step': u'erase_devices', u'reboot_requested': False}: {u'command_error': {u'message': u'Clean step failed.', u'code': 500, u'type': u'CleaningError', u'details': u'Error performing clean_step erase_devices: sequence item 5: expected string, int found'}, u'command_status': u'FAILED', u'command_params': {u'node': {u'target_power_state': None, u'target_provision_state': u'available', u'last_error': None, u'updated_at': u'2015-06-29T17:49:17.000000', u'maintenance_reason': None, u'provision_state': u'cleaning', u'clean_step': {u'priority': 10, u'interface': u'deploy', u'step': u'erase_devices', u'reboot_requested': False}, u'id': 2, u'uuid': u'355f28d4-35b8-45ce-aba3-946952c8c0d9', u'console_enabled': False, u'extra': {}, u'chassis_id': None, u'provision_updated_at': u'2015-06-29T17:47:51.000000', u'maintenance': False, u'conductor_affinity': 1, u'inspection_started_at': None, u'inspection_finished_at': None, u'power_state': u'power on', u'driver': u'agent_vbox', u'reservation': u'default-centos-70', u'properties': {u'memory_mb': 4096, u'cpu_arch': u'x86_64', u'local_gb': 11, u'cpus': 1}, u'instance_uuid': None, u'name': u'my-baremetal', u'driver_info': {u'virtualbox_vmname': u'baremetal', u'virtualbox_host': u'10.0.2.2', u'deploy_kernel': u'2fbbcb70-db8e-4c10-a373-5829b24fffb2', u'deploy_ramdisk': u'f87a6d09-b1f8-479a-9da0-785d8560804c'}, u'created_at': u'2015-06-29T17:41:25.000000', u'driver_internal_info': {u'agent_url': u'http://192.168.50.104:9999', u'hardware_manager_version': {u'generic_hardware_manager': u'1.0'}, u'clean_steps': [{u'priority': 10, u'interface': u'deploy', u'step': u'erase_devices', u'reboot_requested': False}], u'is_whole_disk_image': True, u'agent_last_heartbeat': 1435600147}, u'instance_info': {}}, u'step': {u'priority': 10, u'interface': u'deploy', u'step': u'erase_devices', u'reboot_requested': False}, u'ports': [{u'uuid': u'e040eef7-503c-4f7b-b639-6a6f7c70b86e', u'extra': {}, u'created_at': u'2015-06-29T17:41:40.000000', u'updated_at': u'2015-06-29T17:47:57.000000', u'node_id': 2, u'address': u'08:00:27:6e:df:70', u'id': 9}], u'clean_version': {u'generic_hardware_manager': u'1.0'}}, u'command_result': None, u'id': u'899c16d7-18bf-4a40-8a6f-d9bfb1cad48e', u'command_name': u'execute_clean_step'} continue_cleaning /usr/lib/python2.7/site-packages/ironic/drivers/modules/agent_base_vendor.py:153

This seems to stem from https://github.com/openstack/ironic-python-agent/commit/4c1d2cdb190a894e7cc83ed5d30061a53fe9e09b where it was made possible to pass iterations to shred. However the value used before was String '1' (https://github.com/openstack/ironic-python-agent/blob/8cef029d0d052df38a4f424f90b4434d230cecd0/ironic_python_agent/hardware.py#L456-L457) and now the default value being set seems to be an int 1 (https://github.com/openstack/ironic-python-agent/blob/4c1d2cdb190a894e7cc83ed5d30061a53fe9e09b/ironic_python_agent/hardware.py#L457-L460). This is just a quick guess. I'm going to continue to debug by attempting to figure out how to build my own ramdisk.

Tags: agent
Revision history for this message
Jacob McCann (jmccann) wrote :

I did verify this to myself after generating my own IPA from https://github.com/openstack/ironic-python-agent (after working through other issues in getting that to work).

I generated a ramdisk from the latest code and it continued to fail.

I then edited the default for npasses from 1 to '1' and generated a new IPA and it worked fine.

I'll now work on contributing back a fix.

Jacob McCann (jmccann)
Changed in ironic:
assignee: nobody → Jacob McCann (jmccann-git)
Changed in ironic:
status: New → In Progress
Changed in ironic:
status: In Progress → Fix Committed
Changed in ironic:
milestone: none → 4.0.0
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.