gate tests failed with "NameError: name 'StandardError' is not defined"

Bug #1403510 reported by Dan Prince
44
This bug affects 9 people
Affects Status Importance Assigned to Milestone
Ceilometer
Fix Released
High
Ildiko Vancsa
Juno
Invalid
Undecided
Ildiko Vancsa
PBR
Fix Released
Undecided
Jeremy Stanley
django-openstack-auth
Invalid
High
Unassigned
os-apply-config
Confirmed
High
Unassigned
python-cinderclient
Invalid
Undecided
Unassigned
python-ironicclient
Invalid
High
Unassigned
python-keystoneclient
Invalid
Undecided
Unassigned
python-openstackclient
Invalid
Undecided
Unassigned
zaqar
Fix Released
High
Victoria Martinez de la Cruz

Bug Description

Hit this issue with the python 33 tests in the os-apply-config gate:

2014-12-17 12:46:21.465 | from sphinx import apidoc
2014-12-17 12:46:21.465 | File "/home/jenkins/workspace/gate-os-apply-config-python33/.tox/py33/lib/python3.3/site-packages/sphinx/apidoc.py", line 22, in <module>
2014-12-17 12:46:21.465 | from sphinx.util.osutil import walk
2014-12-17 12:46:21.465 | File "/home/jenkins/workspace/gate-os-apply-config-python33/.tox/py33/lib/python3.3/site-packages/sphinx/util/__init__.py", line 25, in <module>
2014-12-17 12:46:21.465 | import docutils
2014-12-17 12:46:21.465 | File "./docutils/__init__.py", line 68, in <module>
2014-12-17 12:46:21.465 | class ApplicationError(StandardError):
2014-12-17 12:46:21.465 | NameError: name 'StandardError' is not defined

Dan Prince (dan-prince)
Changed in os-apply-config:
importance: Undecided → Low
status: New → Triaged
Revision history for this message
James Polley (tchaypo) wrote :

17:49:10 <dstufft> docutil's setup.py install is being executed
17:49:39 <dstufft> in ./ there is a py2 version of docutils, which is being translated into py3 in ./build
17:50:21 <dstufft> as part of installing docutils, setuptools interates of the egg_writer entry point and imports things, which causes pbr to get imported
17:50:24 <dstufft> pbr imports sphinx
17:50:30 <dstufft> sphinx imports docutils
17:50:37 <dstufft> and ./ is on sys.path
17:50:49 <dstufft> so it imports the py2 docutils from ./
17:51:50 <tchaypo> and then we’re running non-translated docutils in py3, so it fails.

Changed in os-apply-config:
importance: Low → Critical
assignee: nobody → James Polley (tchaypo)
Revision history for this message
Joshua Harlow (harlowja) wrote :

Pretty sure this is knocking off any py33/py34 build that pulls in sphinx...

https://review.openstack.org/#/c/142337/

Revision history for this message
James Polley (tchaypo) wrote :

http://logs.openstack.org/20/142120/2/check//gate-os-apply-config-python33/c271e52/tox/py33-1.log reference /home/jenkins/workspace/gate-os-apply-config-python33/.tox/py33/build/hacking/pbr-0.10.2-py3.3.egg

http://logs.openstack.org/20/142120/2/gate//gate-os-apply-config-python33/a46f8f9/tox/py33-1.log mentions /home/jenkins/workspace/gate-os-apply-config-python33/.tox/py33/build/hacking/pbr-0.10.3-py3.3.egg

https://review.openstack.org/#/c/142509/ should fix this; if it doesn't, my testing shows that forcing pbr==0.10.2 reverts to pbr's previous behaviour and thus fixes the problem

Changed in os-apply-config:
importance: Critical → High
status: Triaged → Confirmed
Revision history for this message
Joe Gordon (jogo) wrote :
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to pbr (feature/0.10)

Fix proposed to branch: feature/0.10
Review: https://review.openstack.org/142561

Revision history for this message
Kai Qiang Wu(Kennan) (wkqwu) wrote :

Notice error jenkis log as :

http://logs.openstack.org/61/141061/6/check//gate-ceilometer-python33/18c38af/console.html
2014-12-17 23:24:57.336 |
2014-12-17 23:24:57.337 | File "/home/jenkins/workspace/gate-ceilometer-python33/.tox/py33/lib/python3.3/site-packages/sphinx/apidoc.py", line 22, in <module>
2014-12-17 23:24:57.337 |
2014-12-17 23:24:57.337 | from sphinx.util.osutil import walk
2014-12-17 23:24:57.338 |
2014-12-17 23:24:57.338 | File "/home/jenkins/workspace/gate-ceilometer-python33/.tox/py33/lib/python3.3/site-packages/sphinx/util/__init__.py", line 25, in <module>
2014-12-17 23:24:57.339 |
2014-12-17 23:24:57.339 | import docutils
2014-12-17 23:24:57.340 |
2014-12-17 23:24:57.340 | File "./docutils/__init__.py", line 68, in <module>
2014-12-17 23:24:57.340 |
2014-12-17 23:24:57.341 | class ApplicationError(StandardError):
2014-12-17 23:24:57.341 |
2014-12-17 23:24:57.342 | NameError: name 'StandardError' is not defined

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to pbr (feature/0.10)

Reviewed: https://review.openstack.org/142561
Committed: https://git.openstack.org/cgit/openstack-dev/pbr/commit/?id=65f4fafd907a16ea1952ab7072676db2e9e0c51d
Submitter: Jenkins
Branch: feature/0.10

commit 65f4fafd907a16ea1952ab7072676db2e9e0c51d
Author: Doug Hellmann <email address hidden>
Date: Wed Dec 17 14:26:03 2014 -0500

    Only import sphinx during hook processing

    When pbr is imported to handle writing the egg_info file because of
    the entry point, it's causing sphinx to get imported. This has a
    cascading effect once docutils is trying to be installed on a
    system with pbr installed. If some of the imports fail along the way,
    allow pbr to continue usefully but without the Sphinx extensions
    available. Eventually, when everything is installed, those extensions
    will work again when the commands for build_sphinx, etc. are run
    separately.

    Also slip in a change to reorder the default list of environments run by
    tox so the testr database is created using a dbm format available to all
    python versions.

    Change-Id: I79d67bf41a09d7e5aad8ed32eaf107f139167eb8
    Closes-bug: #1403510

James Polley (tchaypo)
Changed in os-apply-config:
assignee: James Polley (tchaypo) → nobody
Changed in ceilometer:
assignee: nobody → Ildiko Vancsa (ildiko-vancsa)
status: New → In Progress
Dina Belova (dbelova)
Changed in ceilometer:
importance: Undecided → High
Changed in ceilometer:
milestone: none → kilo-1
Changed in zaqar:
status: New → Confirmed
importance: Undecided → High
Dmitry Tantsur (divius)
Changed in python-ironicclient:
status: New → Confirmed
importance: Undecided → High
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on pbr (feature/0.10)

Change abandoned by Monty Taylor (<email address hidden>) on branch: feature/0.10
Review: https://review.openstack.org/142509

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to ceilometer (master)

Reviewed: https://review.openstack.org/142574
Committed: https://git.openstack.org/cgit/openstack/ceilometer/commit/?id=f3927e17f7088569872a42d4701abeed285a7970
Submitter: Jenkins
Branch: master

commit f3927e17f7088569872a42d4701abeed285a7970
Author: Ildiko Vancsa <email address hidden>
Date: Wed Dec 17 21:52:02 2014 +0100

    Remove Sphinx from py33 requirements

    Docutils has install problems on Python 3, let's keep it on Python 2
    only.

    Closes-Bug: #1403510
    Change-Id: Ibd0a731e87e4b4628f095e8a853cb762e3a21f32

Changed in ceilometer:
status: In Progress → Fix Committed
Matthias Runge (mrunge)
Changed in django-openstack-auth:
importance: Undecided → High
Changed in zaqar:
assignee: nobody → Victoria Martínez de la Cruz (vkmc)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to zaqar (master)

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

Changed in zaqar:
status: Confirmed → In Progress
Thierry Carrez (ttx)
Changed in ceilometer:
status: Fix Committed → Fix Released
Revision history for this message
Adam Gandelman (gandelman-a) wrote :

Nightly periodic stable/juno runs are showing this blowing on ceilometer there, too:

http://logs.openstack.org/93/141593/3/gate/gate-ceilometer-python33/e674199/console.html

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to zaqar (master)

Reviewed: https://review.openstack.org/142812
Committed: https://git.openstack.org/cgit/openstack/zaqar/commit/?id=9fdc3933879e3734dfbe570cb01a8c0cd3ed527b
Submitter: Jenkins
Branch: master

commit 9fdc3933879e3734dfbe570cb01a8c0cd3ed527b
Author: Victoria Martinez de la Cruz <email address hidden>
Date: Thu Dec 18 11:55:28 2014 -0300

    Temporally remove Sphinx from test-requirements-py3

    An untranslated version of Docutils is being run in the py33 gate.
    Disabling Sphinx from our requirements is a simple workaround for
    this issue, until a new pbr is released.

    Change-Id: I9f21fde548f60e9bd450e63f03857e9c743c205f
    Closes-Bug: #1403510

Changed in zaqar:
status: In Progress → Fix Committed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to pbr (master)

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

Changed in pbr:
assignee: nobody → Clark Boylan (cboylan)
status: New → In Progress
Thierry Carrez (ttx)
Changed in zaqar:
milestone: none → kilo-1
status: Fix Committed → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

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

Changed in pbr:
assignee: Clark Boylan (cboylan) → Monty Taylor (mordred)
Changed in pbr:
assignee: Monty Taylor (mordred) → Clark Boylan (cboylan)
Changed in pbr:
assignee: Clark Boylan (cboylan) → Jeremy Stanley (fungi)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to ceilometer (stable/juno)

Fix proposed to branch: stable/juno
Review: https://review.openstack.org/143097

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to pbr (master)

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

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on pbr (master)

Change abandoned by Jeremy Stanley (<email address hidden>) on branch: master
Review: https://review.openstack.org/142840

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Change abandoned by Jeremy Stanley (<email address hidden>) on branch: master
Review: https://review.openstack.org/142930

Revision history for this message
Steve Martinelli (stevemar) wrote :

issue seems to be resolved

Changed in python-openstackclient:
status: New → Invalid
Revision history for this message
Ruby Loo (rloo) wrote :

Looks like this has been fixed.

Changed in python-ironicclient:
status: Confirmed → Invalid
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to pbr (master)

Reviewed: https://review.openstack.org/142931
Committed: https://git.openstack.org/cgit/openstack-dev/pbr/commit/?id=c01b8dae1e5ad91d30756140d9b591818444db2d
Submitter: Jenkins
Branch: master

commit c01b8dae1e5ad91d30756140d9b591818444db2d
Author: Monty Taylor <email address hidden>
Date: Thu Dec 18 15:09:33 2014 -0800

    Port in git sha changes from 0.10 line

    Stop including git sha in version strings

    We include it in pbr.json now. Including it is contentious in the world
    of python, and it's up for debate as to whether or not it provides value.

    Write and read more complex git sha info

    Instead of encoding the git sha into the version string, add it to
    a metadata file. This will allow us to get out of the business of
    arguing with pip and setuptools about version info. In order to make
    this really nice, provide a command line utility called "pbr" that has
    subcommands to print out the metadata that we're now including in the
    egg-info dir.

    Only import sphinx during hook processing

    When pbr is imported to handle writing the egg_info file because of
    the entry point, it's causing sphinx to get imported. This has a
    cascading effect once docutils is trying to be installed on a system
    with pbr installed. If some of the imports fail along the way, allow
    pbr to continue usefully but without the Sphinx extensions
    available. Eventually, when everything is installed, those
    extensions will work again when the commands for build_sphinx, etc.
    are run separately.

    Also slip in a change to reorder the default list of environments
    run by tox so the testr database is created using a dbm format
    available to all python versions.

    Integration test PBR commits

    Make sure that if a PBR commit is being tested then we install and
    use that source rather than the latest PBR release.

    Change-Id: Ie121e795be2eef30822daaa5fe8ab1c2315577ae
    (cherry picked from commit 65f4fafd907a16ea1952ab7072676db2e9e0c51d)
    (cherry picked from commit cd7da23937b66fea3ec42fa2f5a128f363a97e7e)
    Closes-Bug: #1403510
    Co-Authored-By: Clark Boylan <email address hidden>
    Co-Authored-By: Doug Hellmann <email address hidden>
    Co-Authored-By: Jeremy Stanley <email address hidden>

Changed in pbr:
status: In Progress → Fix Committed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Reviewed: https://review.openstack.org/143326
Committed: https://git.openstack.org/cgit/openstack-dev/pbr/commit/?id=a89b90e37ebd2132cb8947f974f535ada824516b
Submitter: Jenkins
Branch: master

commit e7d2825d39fce2111d0d413e63e553603a0e56fb
Author: Clark Boylan <email address hidden>
Date: Wed Dec 17 14:21:35 2014 -0800

    Properly check for git before getting git dir

    We cannot get the git dir if git is not installed. Check that git is
    installed before querying for the git dir. Return None if the git dir
    cannot be found or if git is not installed.

    Change-Id: Ic8e0c74a779b23842369a8cf01fcbf37885202ef
    Fixes-bug: 1326682

commit 5dd31ac46b8b5b7d3b0e1fb123f653ac915eeac6
Author: Monty Taylor <email address hidden>
Date: Wed Dec 17 00:44:13 2014 -0500

    Use post version signifiers

    PEP440 is unhappy about revcounts after pre-release tags.

    Change-Id: I553a0bf9f522d50bcbdb16756c994058bd27da77

commit 65f4fafd907a16ea1952ab7072676db2e9e0c51d
Author: Doug Hellmann <email address hidden>
Date: Wed Dec 17 14:26:03 2014 -0500

    Only import sphinx during hook processing

    When pbr is imported to handle writing the egg_info file because of
    the entry point, it's causing sphinx to get imported. This has a
    cascading effect once docutils is trying to be installed on a
    system with pbr installed. If some of the imports fail along the way,
    allow pbr to continue usefully but without the Sphinx extensions
    available. Eventually, when everything is installed, those extensions
    will work again when the commands for build_sphinx, etc. are run
    separately.

    Also slip in a change to reorder the default list of environments run by
    tox so the testr database is created using a dbm format available to all
    python versions.

    Change-Id: I79d67bf41a09d7e5aad8ed32eaf107f139167eb8
    Closes-bug: #1403510

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on ceilometer (stable/juno)

Change abandoned by Ildiko Vancsa (<email address hidden>) on branch: stable/juno
Review: https://review.openstack.org/143097
Reason: Original problem does not exist anymore.

Julien Danjou (jdanjou)
no longer affects: python-tooz
Revision history for this message
Morgan Fainberg (mdrnstm) wrote :

This appears to be resolved.

Changed in python-keystoneclient:
status: New → Invalid
Thierry Carrez (ttx)
Changed in ceilometer:
milestone: kilo-1 → 2015.1.0
Thierry Carrez (ttx)
Changed in zaqar:
milestone: kilo-1 → 2015.1.0
Changed in pbr:
status: Fix Committed → Fix Released
Revision history for this message
Sean McGinnis (sean-mcginnis) wrote :

Fixed indirectly.

Changed in python-cinderclient:
status: New → Invalid
Revision history for this message
David Lyle (david-lyle) wrote :

I'm not seeing this error.

Changed in django-openstack-auth:
status: New → Invalid
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.