ironic.conf $pybasedir is not enabled before using

Bug #1267351 reported by Haomeng,Wang
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Ironic
Fix Released
Medium
Haomeng,Wang

Bug Description

We should not refer $pybasedir directly in our code, because it is loaded in paths.py, should use paths.basedir_def("") to use this $pybasedir value as a base path.

2014-01-05 11:47:58.710 13369 ERROR ironic.openstack.common.rpc.amqp [req-adb3e692-b923-4194-83d1-90d0aec5a9e6 None None] Exception during message handling
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp Traceback (most recent call last):
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp File "/opt/stack/ironic/ironic/openstack/common/rpc/amqp.py", line 434, in _process_data
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp **args)
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp File "/opt/stack/ironic/ironic/openstack/common/rpc/dispatcher.py", line 172, in dispatch
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp result = getattr(proxyobj, method)(ctxt, **kwargs)
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp File "/opt/stack/ironic/ironic/conductor/manager.py", line 267, in do_node_deploy
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp node['target_provision_state'] = states.NOSTATE
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp File "/opt/stack/ironic/ironic/openstack/common/excutils.py", line 70, in __exit__
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp six.reraise(self.type_, self.value, self.tb)
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp File "/opt/stack/ironic/ironic/conductor/manager.py", line 261, in do_node_deploy
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp task.driver.deploy.prepare(task, node)
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp File "/opt/stack/ironic/ironic/drivers/modules/pxe.py", line 552, in prepare
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp _create_pxe_config(task, node, pxe_info)
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp File "/opt/stack/ironic/ironic/drivers/modules/pxe.py", line 486, in _create_pxe_config
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp pxe_config = _build_pxe_config(node, pxe_info)
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp File "/opt/stack/ironic/ironic/drivers/modules/pxe.py", line 181, in _build_pxe_config
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp template = env.get_template(tmpl_file)
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/jinja2/environment.py", line 719, in get_template
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp return self._load_template(name, self.make_globals(globals))
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/jinja2/environment.py", line 693, in _load_template
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp template = self.loader.load(self, name, globals)
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/jinja2/loaders.py", line 115, in load
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp source, filename, uptodate = self.get_source(environment, name)
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/jinja2/loaders.py", line 180, in get_source
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp raise TemplateNotFound(template)
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp TemplateNotFound: pxe_config.template
2014-01-05 11:47:58.710 13369 TRACE ironic.openstack.common.rpc.amqp

Haomeng,Wang (whaom)
Changed in ironic:
assignee: nobody → Haomeng,Wang (whaom)
summary: - ifonic.conf $pybasedir is not eabled before using
+ ironic.conf $pybasedir is not enabled before using
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to ironic (master)

Fix proposed to branch: master
Review: https://review.openstack.org/65628

Changed in ironic:
status: New → In Progress
Haomeng,Wang (whaom)
Changed in ironic:
importance: Undecided → Medium
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to ironic (master)

Reviewed: https://review.openstack.org/65628
Committed: https://git.openstack.org/cgit/openstack/ironic/commit/?id=6bee1a5dd7ed0f3ee47304b939f347dd566e9ca9
Submitter: Jenkins
Branch: master

commit 6bee1a5dd7ed0f3ee47304b939f347dd566e9ca9
Author: Haomeng, Wang <email address hidden>
Date: Thu Jan 9 13:23:03 2014 +0800

    Enable $pybasedir value in pxe.py

    We should not refer $pybasedir directly in our python code, because
    it is loaded by paths.py, we should use paths.basedir_def("") to load
    this $pybasedir value as a base path.

    And change some 'nova' words to 'ironic in paths.py

    Change-Id: I4c6bcb103d4d1eee8e7bf78f46c815630666cfe9
    Closes-Bug: #1267351

Changed in ironic:
status: In Progress → Fix Committed
Thierry Carrez (ttx)
Changed in ironic:
milestone: none → icehouse-2
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in ironic:
milestone: icehouse-2 → 2014.1
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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