Opened 4 years ago

Closed 4 years ago

Last modified 4 years ago

#1860 closed defect (fixed)

python < 2.7 generate sdist tarball without sqlalchemy-migrate repo

Reported by: jollyroger Owned by:
Priority: critical Milestone: 0.8.4
Version: master Keywords: simple
Cc:

Description

Failed tests:

===============================================================================
[FAIL]: buildbot.test.regressions.test_import_unicode_changes.TestUnicodeChanges.testNonUnicodeChange

Traceback (most recent call last):
  File "/root/buildbot-0.8.4-pre-229-gd97698c/buildbot/test/regressions/test_import_unicode_changes.py", line 66, in eb
    self.failUnless("UnicodeError" in str(f))
twisted.trial.unittest.FailTest: None
===============================================================================
[ERROR]: buildbot.test.regressions.test_import_unicode_changes.TestUnicodeChanges.testAsciiChange

Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/twisted/python/threadpool.py", line 207, in _worker
    result = context.call(ctx, function, *args, **kwargs)
  File "/usr/lib/python2.6/dist-packages/twisted/python/context.py", line 59, in callWithContext
    return self.currentContext().callWithContext(ctx, func, *args, **kw)
  File "/usr/lib/python2.6/dist-packages/twisted/python/context.py", line 37, in callWithContext
    return func(*args,**kw)
  File "/root/buildbot-0.8.4-pre-229-gd97698c/buildbot/db/pool.py", line 108, in thd
    rv = callable(self.engine, *args, **kwargs)
  File "/root/buildbot-0.8.4-pre-229-gd97698c/buildbot/db/model.py", line 449, in thd
    version_control(engine)
  File "/root/buildbot-0.8.4-pre-229-gd97698c/buildbot/db/model.py", line 420, in version_control
    migrate.versioning.schema.ControlledSchema.create(engine, self.repo_path, version)
  File "/usr/lib/pymodules/python2.6/migrate/versioning/schema.py", line 128, in create
    repository = Repository(repository)
  File "/usr/lib/pymodules/python2.6/migrate/versioning/repository.py", line 76, in __init__
    self.verify(path)
  File "/usr/lib/pymodules/python2.6/migrate/versioning/repository.py", line 97, in verify
    raise exceptions.InvalidRepositoryError(path)
migrate.versioning.exceptions.InvalidRepositoryError: /root/buildbot-0.8.4-pre-229-gd97698c/buildbot/db/migrate
===============================================================================
[ERROR]: buildbot.test.regressions.test_import_unicode_changes.TestUnicodeChanges.testUTF16Change

Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/twisted/python/threadpool.py", line 207, in _worker
    result = context.call(ctx, function, *args, **kwargs)
  File "/usr/lib/python2.6/dist-packages/twisted/python/context.py", line 59, in callWithContext
    return self.currentContext().callWithContext(ctx, func, *args, **kw)
  File "/usr/lib/python2.6/dist-packages/twisted/python/context.py", line 37, in callWithContext
    return func(*args,**kw)
  File "/root/buildbot-0.8.4-pre-229-gd97698c/buildbot/db/pool.py", line 108, in thd
    rv = callable(self.engine, *args, **kwargs)
  File "/root/buildbot-0.8.4-pre-229-gd97698c/buildbot/db/model.py", line 449, in thd
    version_control(engine)
  File "/root/buildbot-0.8.4-pre-229-gd97698c/buildbot/db/model.py", line 420, in version_control
    migrate.versioning.schema.ControlledSchema.create(engine, self.repo_path, version)
  File "/usr/lib/pymodules/python2.6/migrate/versioning/schema.py", line 128, in create
    repository = Repository(repository)
  File "/usr/lib/pymodules/python2.6/migrate/versioning/repository.py", line 76, in __init__
    self.verify(path)
  File "/usr/lib/pymodules/python2.6/migrate/versioning/repository.py", line 97, in verify
    raise exceptions.InvalidRepositoryError(path)
migrate.versioning.exceptions.InvalidRepositoryError: /root/buildbot-0.8.4-pre-229-gd97698c/buildbot/db/migrate
===============================================================================
[ERROR]: buildbot.test.regressions.test_import_unicode_changes.TestUnicodeChanges.testUnicodeChange

Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/twisted/python/threadpool.py", line 207, in _worker
    result = context.call(ctx, function, *args, **kwargs)
  File "/usr/lib/python2.6/dist-packages/twisted/python/context.py", line 59, in callWithContext
    return self.currentContext().callWithContext(ctx, func, *args, **kw)
  File "/usr/lib/python2.6/dist-packages/twisted/python/context.py", line 37, in callWithContext
    return func(*args,**kw)
  File "/root/buildbot-0.8.4-pre-229-gd97698c/buildbot/db/pool.py", line 108, in thd
    rv = callable(self.engine, *args, **kwargs)
  File "/root/buildbot-0.8.4-pre-229-gd97698c/buildbot/db/model.py", line 449, in thd
    version_control(engine)
  File "/root/buildbot-0.8.4-pre-229-gd97698c/buildbot/db/model.py", line 420, in version_control
    migrate.versioning.schema.ControlledSchema.create(engine, self.repo_path, version)
  File "/usr/lib/pymodules/python2.6/migrate/versioning/schema.py", line 128, in create
    repository = Repository(repository)
  File "/usr/lib/pymodules/python2.6/migrate/versioning/repository.py", line 76, in __init__
    self.verify(path)
  File "/usr/lib/pymodules/python2.6/migrate/versioning/repository.py", line 97, in verify
    raise exceptions.InvalidRepositoryError(path)
migrate.versioning.exceptions.InvalidRepositoryError: /root/buildbot-0.8.4-pre-229-gd97698c/buildbot/db/migrate
===============================================================================
[ERROR]: buildbot.test.unit.test_db_model.DBConnector_Basic.test_is_current_empty

Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/twisted/internet/defer.py", line 125, in maybeDeferred
    result = f(*args, **kw)
  File "/root/buildbot-0.8.4-pre-229-gd97698c/buildbot/db/model.py", line 378, in thd
    repo = migrate.versioning.repository.Repository(self.repo_path)
  File "/usr/lib/pymodules/python2.6/migrate/versioning/repository.py", line 76, in __init__
    self.verify(path)
  File "/usr/lib/pymodules/python2.6/migrate/versioning/repository.py", line 97, in verify
    raise exceptions.InvalidRepositoryError(path)
migrate.versioning.exceptions.InvalidRepositoryError: /root/buildbot-0.8.4-pre-229-gd97698c/buildbot/db/migrate
===============================================================================
[ERROR]: buildbot.test.unit.test_db_model.DBConnector_Basic.test_is_current_full

Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/twisted/internet/defer.py", line 125, in maybeDeferred
    result = f(*args, **kw)
  File "/root/buildbot-0.8.4-pre-229-gd97698c/buildbot/db/model.py", line 449, in thd
    version_control(engine)
  File "/root/buildbot-0.8.4-pre-229-gd97698c/buildbot/db/model.py", line 420, in version_control
    migrate.versioning.schema.ControlledSchema.create(engine, self.repo_path, version)
  File "/usr/lib/pymodules/python2.6/migrate/versioning/schema.py", line 128, in create
    repository = Repository(repository)
  File "/usr/lib/pymodules/python2.6/migrate/versioning/repository.py", line 76, in __init__
    self.verify(path)
  File "/usr/lib/pymodules/python2.6/migrate/versioning/repository.py", line 97, in verify
    raise exceptions.InvalidRepositoryError(path)
migrate.versioning.exceptions.InvalidRepositoryError: /root/buildbot-0.8.4-pre-229-gd97698c/buildbot/db/migrate
-------------------------------------------------------------------------------

Steps to reproduce:

git clone https://github.com/buildbot/buildbot.git
cd buildbot/master
python setup.py test #tests passed
python setup.py sdist
cd .. tar zxvf buildbot/master/dist/buildbot*.tar.gz
cd buildbot-0.8.*/
python setup.py test #tests failed

Environment:

OS: Debian Squeezy

Software versions: python(2.6), python-mock (0.6.0), python-jinja2 (2.5.5), python-twisted (10.1.0), python-sqlalchemy (0.6.3), python-migrate (0.6)

List of files inside sdist tarball:

buildbot-0.8.4-pre-229-gd97698c/
buildbot-0.8.4-pre-229-gd97698c/README
buildbot-0.8.4-pre-229-gd97698c/UPGRADING
buildbot-0.8.4-pre-229-gd97698c/PKG-INFO
buildbot-0.8.4-pre-229-gd97698c/CREDITS
buildbot-0.8.4-pre-229-gd97698c/contrib/
buildbot-0.8.4-pre-229-gd97698c/contrib/git_buildbot.py
buildbot-0.8.4-pre-229-gd97698c/contrib/coverage2text.py
buildbot-0.8.4-pre-229-gd97698c/contrib/generate_changelog.py
buildbot-0.8.4-pre-229-gd97698c/contrib/css/
buildbot-0.8.4-pre-229-gd97698c/contrib/css/sample2.css
buildbot-0.8.4-pre-229-gd97698c/contrib/css/sample1.css
buildbot-0.8.4-pre-229-gd97698c/contrib/post_build_request.py
buildbot-0.8.4-pre-229-gd97698c/contrib/webhook_status.py
buildbot-0.8.4-pre-229-gd97698c/contrib/init-scripts/
buildbot-0.8.4-pre-229-gd97698c/contrib/init-scripts/buildmaster.init.sh
buildbot-0.8.4-pre-229-gd97698c/contrib/init-scripts/buildmaster.default
buildbot-0.8.4-pre-229-gd97698c/contrib/svn_watcher.py
buildbot-0.8.4-pre-229-gd97698c/contrib/run_maxq.py
buildbot-0.8.4-pre-229-gd97698c/contrib/trac/
buildbot-0.8.4-pre-229-gd97698c/contrib/trac/bbwatcher/
buildbot-0.8.4-pre-229-gd97698c/contrib/trac/bbwatcher/templates/
buildbot-0.8.4-pre-229-gd97698c/contrib/trac/bbwatcher/templates/bbw_builder.html
buildbot-0.8.4-pre-229-gd97698c/contrib/trac/bbwatcher/templates/bbw_welcome.html
buildbot-0.8.4-pre-229-gd97698c/contrib/trac/bbwatcher/templates/bbw_allbuilders.html
buildbot-0.8.4-pre-229-gd97698c/contrib/trac/bbwatcher/model.py
buildbot-0.8.4-pre-229-gd97698c/contrib/trac/bbwatcher/__init__.py
buildbot-0.8.4-pre-229-gd97698c/contrib/trac/bbwatcher/api.py
buildbot-0.8.4-pre-229-gd97698c/contrib/trac/bbwatcher/web_ui.py
buildbot-0.8.4-pre-229-gd97698c/contrib/trac/setup.py
buildbot-0.8.4-pre-229-gd97698c/contrib/trac/README.md
buildbot-0.8.4-pre-229-gd97698c/contrib/trac/TODO.md
buildbot-0.8.4-pre-229-gd97698c/contrib/os-x/
buildbot-0.8.4-pre-229-gd97698c/contrib/os-x/README
buildbot-0.8.4-pre-229-gd97698c/contrib/os-x/net.sourceforge.buildbot.master.plist
buildbot-0.8.4-pre-229-gd97698c/contrib/buildbot_cvs_mail.py
buildbot-0.8.4-pre-229-gd97698c/contrib/github_buildbot.py
buildbot-0.8.4-pre-229-gd97698c/contrib/README.txt
buildbot-0.8.4-pre-229-gd97698c/contrib/windows/
buildbot-0.8.4-pre-229-gd97698c/contrib/windows/buildbot_service.py
buildbot-0.8.4-pre-229-gd97698c/contrib/windows/buildbot.bat
buildbot-0.8.4-pre-229-gd97698c/contrib/googlecode_atom.py
buildbot-0.8.4-pre-229-gd97698c/contrib/bzr_buildbot.py
buildbot-0.8.4-pre-229-gd97698c/contrib/viewcvspoll.py
buildbot-0.8.4-pre-229-gd97698c/contrib/buildbot_json.py
buildbot-0.8.4-pre-229-gd97698c/contrib/bb_applet.py
buildbot-0.8.4-pre-229-gd97698c/contrib/fakechange.py
buildbot-0.8.4-pre-229-gd97698c/contrib/bitbucket_buildbot.py
buildbot-0.8.4-pre-229-gd97698c/contrib/fix_changes_pickle_encoding.py
buildbot-0.8.4-pre-229-gd97698c/contrib/svn_buildbot.py
buildbot-0.8.4-pre-229-gd97698c/contrib/darcs_buildbot.py
buildbot-0.8.4-pre-229-gd97698c/contrib/bk_buildbot.py
buildbot-0.8.4-pre-229-gd97698c/contrib/svnpoller.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/
buildbot-0.8.4-pre-229-gd97698c/buildbot/locks.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/persistent_queue.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/base.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/status_json.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/base.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/feeds.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/files/
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/files/robots.txt
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/files/default.css
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/files/favicon.ico
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/files/bg_gradient.jpg
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/build.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/buildslave.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/feed_atom10.xml
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/root.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/testresult.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/feed_rss20.xml
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/change_macros.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/logs.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/buildstatus.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/buildstep.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/grid_transposed.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/feed_description.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/change.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/forms.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/change_sources.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/onelineperbuildonebuilder.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/empty.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/buildslaves.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/waterfall.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/builder.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/authfail.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/grid_macros.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/jsonhelp.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/footer.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/layout.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/revmacros.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/build_line.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/about.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/waterfallhelp.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/console.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/box_macros.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/builders.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/onelineperbuild.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/directory.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/templates/grid.html
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/waterfall.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/buildstatus.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/__init__.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/slaves.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/change_hook.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/baseweb.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/console.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/build.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/step.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/root.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/about.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/olpb.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/tests.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/builder.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/changes.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/grid.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/logs.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/auth.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/hooks/
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/hooks/base.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/hooks/__init__.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/hooks/github.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/web/authz.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/status_push.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/__init__.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/progress.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/tinderbox.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/words.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/client.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/builder.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/html.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/status_gerrit.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/status/mail.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/buildslave.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/VERSION
buildbot-0.8.4-pre-229-gd97698c/buildbot/changes/
buildbot-0.8.4-pre-229-gd97698c/buildbot/changes/base.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/changes/p4poller.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/changes/manager.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/changes/gerritchangesource.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/changes/__init__.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/changes/bonsaipoller.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/changes/pb.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/changes/hgbuildbot.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/changes/changes.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/changes/filter.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/changes/gitpoller.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/changes/mail.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/changes/svnpoller.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/__init__.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/pbutil.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/scripts/
buildbot-0.8.4-pre-229-gd97698c/buildbot/scripts/sample.cfg
buildbot-0.8.4-pre-229-gd97698c/buildbot/scripts/__init__.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/scripts/startup.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/scripts/reconfig.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/scripts/runner.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/scripts/logwatcher.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/scripts/checkconfig.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/manhole.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/scheduler.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/buildbot.png
buildbot-0.8.4-pre-229-gd97698c/buildbot/ec2buildslave.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/buildrequest.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/pbmanager.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/config.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/sourcestamp.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/process/
buildbot-0.8.4-pre-229-gd97698c/buildbot/process/factory.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/process/base.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/process/buildstep.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/process/botmaster.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/process/__init__.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/process/mtrlogobserver.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/process/buildrequest.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/process/build.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/process/slavebuilder.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/process/debug.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/process/builder.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/process/properties.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/process/subunitlogobserver.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/interfaces.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/schedulers/
buildbot-0.8.4-pre-229-gd97698c/buildbot/schedulers/basic.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/schedulers/base.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/schedulers/manager.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/schedulers/__init__.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/schedulers/timed.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/schedulers/trysched.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/schedulers/triggerable.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/schedulers/filter.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/schedulers/dependent.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/maxq.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/dummy.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/vstudio.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/source.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/trigger.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/__init__.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/package/
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/package/__init__.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/package/rpm/
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/package/rpm/rpmspec.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/package/rpm/rpmlint.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/package/rpm/__init__.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/package/rpm/rpmbuild.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/transfer.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/python.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/subunit.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/python_twisted.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/slave.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/shell.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/steps/master.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/test_extra_coverage.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/regressions/
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/regressions/test_sourcestamp_revision.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/regressions/__init__.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/regressions/test_import_unicode_changes.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/regressions/test_steps_shell_WarningCountingShellCommand.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/regressions/test_shell_command_properties.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/__init__.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_db_sourcestamps.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_util_collections.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_status_web_links.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_changes_gerritchangesource.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_util_loop.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_util_netstrings.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_steps_slave.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_util_eventual.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_schedulers_timed_Periodic.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_master.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_changes_p4poller.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_schedulers_manager.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_util_misc.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_status_web_change_hook.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/__init__.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_db_changes.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_db_model.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_status_web_change_hooks_github.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_util_subscriptions.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_oldpaths.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_db_schedulers.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_status_builder_LogFileProducer.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_process_properties.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_changes_mail_CVSMaildirSource.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_pbmanager.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_util_maildir.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_steps_source_Source.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_db_state.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_status_persistent_queue.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_schedulers_base.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_status_builder.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_changes_mail.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_changes_filter.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_changes_base.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_schedulers_timed_Nightly.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_db_pool.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_changes_gitpoller.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_db_connector.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_process_build.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_process_botmaster_BotMaster_cleanshutdown.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_process_buildstep.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_steps_source_Repo.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_schedulers_timed_Timed.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_schedulers_triggerable.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_util.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_changes_bonsaipoller.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_util_ComparableMixin.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_steps_transfer.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_status_web_authz_Authz.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_db_enginestrategy.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_contrib_buildbot_cvs_mail.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_changes_pb.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_schedulers_basic.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_schedulers_dependent.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_schedulers_trysched.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_status_mail_MailNotifier.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_db_buildsets.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_changes_manager.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/unit/test_changes_svnpoller.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/fake/
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/fake/state.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/fake/__init__.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/fake/fakedb.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/fake/web.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/util/
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/util/gpo.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/util/__init__.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/util/connector_component.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/util/changesource.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/util/change_import.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/util/scheduler.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/util/pbmanager.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/util/db.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/util/compat.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/test/util/dirs.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/util/
buildbot-0.8.4-pre-229-gd97698c/buildbot/util/subscription.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/util/__init__.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/util/loop.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/util/maildir.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/util/netstrings.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/util/eventual.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/util/collections.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/util/misc.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/util/monkeypatches.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/clients/
buildbot-0.8.4-pre-229-gd97698c/buildbot/clients/base.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/clients/sendchange.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/clients/__init__.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/clients/debug.glade
buildbot-0.8.4-pre-229-gd97698c/buildbot/clients/tryclient.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/clients/gtkPanes.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/clients/debug.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/master.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/db/
buildbot-0.8.4-pre-229-gd97698c/buildbot/db/enginestrategy.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/db/state.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/db/base.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/db/model.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/db/__init__.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/db/schedulers.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/db/migrate/
buildbot-0.8.4-pre-229-gd97698c/buildbot/db/migrate/README
buildbot-0.8.4-pre-229-gd97698c/buildbot/db/buildsets.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/db/exceptions.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/db/sourcestamps.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/db/changes.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/db/pool.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/db/connector.py
buildbot-0.8.4-pre-229-gd97698c/buildbot/libvirtbuildslave.py
buildbot-0.8.4-pre-229-gd97698c/MANIFEST.in
buildbot-0.8.4-pre-229-gd97698c/setup.py
buildbot-0.8.4-pre-229-gd97698c/NEWS
buildbot-0.8.4-pre-229-gd97698c/docs/
buildbot-0.8.4-pre-229-gd97698c/docs/configuration.texinfo
buildbot-0.8.4-pre-229-gd97698c/docs/cfg-buildslaves.texinfo
buildbot-0.8.4-pre-229-gd97698c/docs/resources.texinfo
buildbot-0.8.4-pre-229-gd97698c/docs/cfg-global.texinfo
buildbot-0.8.4-pre-229-gd97698c/docs/cfg-interlocks.texinfo
buildbot-0.8.4-pre-229-gd97698c/docs/hexnut64.png
buildbot-0.8.4-pre-229-gd97698c/docs/hexnut32.png
buildbot-0.8.4-pre-229-gd97698c/docs/cust-changesources.texinfo
buildbot-0.8.4-pre-229-gd97698c/docs/installation.texinfo
buildbot-0.8.4-pre-229-gd97698c/docs/examples/
buildbot-0.8.4-pre-229-gd97698c/docs/examples/repo_gerrit.cfg
buildbot-0.8.4-pre-229-gd97698c/docs/examples/hello.cfg
buildbot-0.8.4-pre-229-gd97698c/docs/examples/twisted_master.cfg
buildbot-0.8.4-pre-229-gd97698c/docs/cfg-schedulers.texinfo
buildbot-0.8.4-pre-229-gd97698c/docs/version.py
buildbot-0.8.4-pre-229-gd97698c/docs/introduction.texinfo
buildbot-0.8.4-pre-229-gd97698c/docs/cfg-builders.texinfo
buildbot-0.8.4-pre-229-gd97698c/docs/Makefile
buildbot-0.8.4-pre-229-gd97698c/docs/developer.texinfo
buildbot-0.8.4-pre-229-gd97698c/docs/buildbot.1
buildbot-0.8.4-pre-229-gd97698c/docs/cmdline.texinfo
buildbot-0.8.4-pre-229-gd97698c/docs/concepts.texinfo
buildbot-0.8.4-pre-229-gd97698c/docs/buildbot.texinfo
buildbot-0.8.4-pre-229-gd97698c/docs/customization.texinfo
buildbot-0.8.4-pre-229-gd97698c/docs/cfg-buildsteps.texinfo
buildbot-0.8.4-pre-229-gd97698c/docs/hexnut48.png
buildbot-0.8.4-pre-229-gd97698c/docs/cfg-buildfactories.texinfo
buildbot-0.8.4-pre-229-gd97698c/docs/cfg-changesources.texinfo
buildbot-0.8.4-pre-229-gd97698c/docs/images/
buildbot-0.8.4-pre-229-gd97698c/docs/images/slaves.ai
buildbot-0.8.4-pre-229-gd97698c/docs/images/overview.ai
buildbot-0.8.4-pre-229-gd97698c/docs/images/slaves.png
buildbot-0.8.4-pre-229-gd97698c/docs/images/master.txt
buildbot-0.8.4-pre-229-gd97698c/docs/images/master.svg
buildbot-0.8.4-pre-229-gd97698c/docs/images/Makefile
buildbot-0.8.4-pre-229-gd97698c/docs/images/master.ai
buildbot-0.8.4-pre-229-gd97698c/docs/images/slaves.svg
buildbot-0.8.4-pre-229-gd97698c/docs/images/status.png
buildbot-0.8.4-pre-229-gd97698c/docs/images/overview.png
buildbot-0.8.4-pre-229-gd97698c/docs/images/status.svg
buildbot-0.8.4-pre-229-gd97698c/docs/images/overview.svg
buildbot-0.8.4-pre-229-gd97698c/docs/images/status.ai
buildbot-0.8.4-pre-229-gd97698c/docs/images/master.png
buildbot-0.8.4-pre-229-gd97698c/docs/images/overview.txt
buildbot-0.8.4-pre-229-gd97698c/docs/images/slaves.txt
buildbot-0.8.4-pre-229-gd97698c/docs/images/icon.blend
buildbot-0.8.4-pre-229-gd97698c/docs/images/status.txt
buildbot-0.8.4-pre-229-gd97698c/docs/cfg-statustargets.texinfo
buildbot-0.8.4-pre-229-gd97698c/COPYING
buildbot-0.8.4-pre-229-gd97698c/bin/
buildbot-0.8.4-pre-229-gd97698c/bin/buildbot

Change History (16)

comment:1 Changed 4 years ago by dustin

What is in the repository directory that the exception claims does not exist? /root/buildbot-0.8.4-pre-229-gd97698c/buildbot/db/migrate

I can't replicate so far, even after deleting the unpacked tarball directory from which I installed Buildbot.

I installed this by creating a virtualenv and then running 'python setup.py install' with that virtualenv activated.

comment:2 Changed 4 years ago by jollyroger

There's only README file in that directory. Perhaps you cannot reproduce the issue because you have buildbot package already installed system-wide. AFAIK virtualenv only adds your chroot directory to PYTHONPATH so all system-wide installed modules are still available.

comment:3 Changed 4 years ago by dustin

Well, we're seeing a few things work differently. I see the entire contents of the migrate directory in my extracted tarball:

(sand27)dustin@euclid ~/tmp/buildbot-0.8.4-pre-239-g8b63982 $ ls buildbot/db/migrate/
README  migrate.cfg  versions

If I run 'python setup.py test' from there, I get

Traceback (most recent call last):
  File "setup.py", line 299, in <module>
    setup(**setup_args)
  File "/usr/lib/python2.7/distutils/core.py", line 152, in setup
    dist.run_commands()
  File "/usr/lib/python2.7/distutils/dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "setup.py", line 72, in run
    os.path.join('buildbot', 'test'))))
  File "setup.py", line 97, in _run
    run()
  File "/home/dustin/code/buildbot/t/buildbot/sand27/lib/python2.7/site-packages/twisted/scripts/trial.py", line 342, in run
    suite = _getSuite(config)
  File "/home/dustin/code/buildbot/t/buildbot/sand27/lib/python2.7/site-packages/twisted/scripts/trial.py", line 300, in _getSuite
    return loader.loadByNames(config['tests'], recurse)
  File "/home/dustin/code/buildbot/t/buildbot/sand27/lib/python2.7/site-packages/twisted/trial/runner.py", line 668, in loadByNames
    for thing in set(things)]
  File "/home/dustin/code/buildbot/t/buildbot/sand27/lib/python2.7/site-packages/twisted/trial/runner.py", line 624, in loadAnything
    return self.loadPackage(thing, recurse)
  File "/home/dustin/code/buildbot/t/buildbot/sand27/lib/python2.7/site-packages/twisted/trial/runner.py", line 579, in loadPackage
    thingToAdd = self.loadModule(module)
  File "/home/dustin/code/buildbot/t/buildbot/sand27/lib/python2.7/site-packages/twisted/trial/runner.py", line 498, in loadModule
    suite.addTest(self.loadClass(testClass))
  File "/home/dustin/code/buildbot/t/buildbot/sand27/lib/python2.7/site-packages/twisted/trial/runner.py", line 518, in loadClass
    for name in names])
  File "/home/dustin/code/buildbot/t/buildbot/sand27/lib/python2.7/site-packages/twisted/trial/runner.py", line 539, in _makeCase
    return klass(methodName)
  File "/usr/lib/python2.7/test/test_multibytecodec_support.py", line 255, in __init__
    self.open_mapping_file().close() # test it to report the error early
  File "/usr/lib/python2.7/test/test_multibytecodec_support.py", line 260, in open_mapping_file
    return test_support.open_urlresource(self.mapfileurl)
  File "/usr/lib/python2.7/test/test_support.py", line 495, in open_urlresource
    requires('urlfetch')
  File "/usr/lib/python2.7/test/test_support.py", line 223, in requires
    raise ResourceDenied(msg)
test.test_support.ResourceDenied: Use of the `urlfetch' resource not enabled

because the 'python setup.py test' does not remove 'test' from sys.argv. Fixing that (and I'll commit the fix in a moment) makes the tests pass.

So I'm guessing something is wrong with your sdist, since it is producing a tarball without the entire migrate repository in it. Can you see if you can figure out why that's the case?

comment:4 Changed 4 years ago by Dustin J. Mitchell

  • Resolution set to fixed
  • Status changed from new to closed

fix 'setup.py test' to not try to run Python's tests too

Fixes #1860

Changeset: c7bf32f7dbf572745c13d833f2da1efcca227d59

comment:5 Changed 4 years ago by dustin

  • Resolution fixed deleted
  • Status changed from closed to reopened

Oops, that should have been "refs", not "fixes"

comment:6 Changed 4 years ago by jollyroger

I have Python 2.6.6 installed on my box. I tried this scenario on Debian and Gentoo (both with python 2.6.6) to be sure that this is not specific to Debian and got the same results. Running with python 2.7 did the trick.

Note that with virtualenv set up I also got all the files inside the tarball.

comment:7 Changed 4 years ago by dustin

  • Milestone changed from undecided to 0.8.4
  • Priority changed from major to critical
  • Summary changed from buildbot test fail if extracted from the source archive to python < 2.7 generate sdist tarball without sqlalchemy-migrate repo

Ah, well done - it looks like older versions of Python don't correctly generate the sdist tarball.

comment:8 Changed 4 years ago by dustin

  • Keywords sprint added

comment:9 Changed 4 years ago by dustin

  • Keywords simple added; sprint removed

I'm sure this is "simple" if you know how setuptools works

comment:10 Changed 4 years ago by jollyroger

I've added the necessary files in this commit. But still get the error, but slightly different one:

===============================================================================
[ERROR]
Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/twisted/python/threadpool.py", line 207, in _worker
    result = context.call(ctx, function, *args, **kwargs)
  File "/usr/lib/python2.6/dist-packages/twisted/python/context.py", line 59, in callWithContext
    return self.currentContext().callWithContext(ctx, func, *args, **kw)
  File "/usr/lib/python2.6/dist-packages/twisted/python/context.py", line 37, in callWithContext
    return func(*args,**kw)
  File "/home/jollyroger/buildbot/buildbot/build-dir/buildbot-0.8.4-pre-246-ga4a6c9a/buildbot/db/pool.py", line 108, in thd
    rv = callable(self.engine, *args, **kwargs)
  File "/home/jollyroger/buildbot/buildbot/build-dir/buildbot-0.8.4-pre-246-ga4a6c9a/buildbot/db/model.py", line 453, in thd
    upgrade(engine)
  File "/home/jollyroger/buildbot/buildbot/build-dir/buildbot-0.8.4-pre-246-ga4a6c9a/buildbot/db/model.py", line 417, in upgrade
    schema.runchange(version, change, 1)
  File "/usr/lib/python2.6/dist-packages/migrate/versioning/schema.py", line 84, in runchange
    change.run(self.engine, step)
  File "/usr/lib/python2.6/dist-packages/migrate/versioning/script/py.py", line 145, in run
    script_func(engine)
  File "/home/jollyroger/buildbot/buildbot/build-dir/buildbot-0.8.4-pre-246-ga4a6c9a/buildbot/db/migrate/versions/004_add_autoincrement.py", line 80, in upgrade
    col.alter(autoincrement=True)
  File "/usr/lib/python2.6/dist-packages/migrate/changeset/schema.py", line 493, in alter
    return alter_column(self, *p, **k)
  File "/usr/lib/python2.6/dist-packages/migrate/changeset/schema.py", line 136, in alter_column
    engine._run_visitor(visitorcallable, delta)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 1682, in _run_visitor
    **kwargs).traverse_single(element)
  File "/usr/lib/python2.6/dist-packages/migrate/changeset/ansisql.py", line 57, in traverse_single
    ret = super(AlterTableVisitor, self).traverse_single(elem)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/visitors.py", line 77, in traverse_single
    return meth(obj, **kw)
  File "/usr/lib/python2.6/dist-packages/migrate/changeset/databases/sqlite.py", line 55, in visit_column
    self.recreate_table(table,column,delta)
  File "/usr/lib/python2.6/dist-packages/migrate/changeset/databases/sqlite.py", line 42, in recreate_table
    table.create()
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/schema.py", line 439, in create
    bind.create(self, checkfirst=checkfirst)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 1647, in create
    connection=connection, **kwargs)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 1682, in _run_visitor
    **kwargs).traverse_single(element)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/visitors.py", line 77, in traverse_single
    return meth(obj, **kw)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/ddl.py", line 58, in visit_table
    self.connection.execute(schema.CreateTable(table))
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 1157, in execute
    params)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 1207, in _execute_ddl
    compiled_ddl=ddl.compile(dialect=self.dialect),
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/expression.py", line 1271, in compile
    compiler.compile()
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 702, in compile
    self.string = self.process(self.statement)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 715, in process
    return obj._compiler_dispatch(self, **kwargs)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/visitors.py", line 48, in _compiler_dispatch
    return getter(visitor)(self, **kw)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/compiler.py", line 1152, in visit_create_table
    const = self.create_table_constraints(table)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/compiler.py", line 1170, in create_table_constraints
    (self.process(constraint) for constraint in constraints
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/compiler.py", line 1169, in <genexpr>
    return ", 
	".join(p for p in
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/compiler.py", line 1176, in <genexpr>
    not getattr(constraint, 'use_alter', False)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 715, in process
    return obj._compiler_dispatch(self, **kwargs)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/visitors.py", line 48, in _compiler_dispatch
    return getter(visitor)(self, **kw)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/compiler.py", line 1294, in visit_foreign_key_constraint
    preparer.format_constraint(constraint)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/compiler.py", line 1564, in format_constraint
    return self.quote(constraint.name, constraint.quote)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/compiler.py", line 1538, in quote
    if self._requires_quotes(ident):
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/compiler.py", line 1519, in _requires_quotes
    lc_value = value.lower()
exceptions.AttributeError: 'int' object has no attribute 'lower'

buildbot.test.regressions.test_import_unicode_changes.TestUnicodeChanges.testAsciiChange
buildbot.test.regressions.test_import_unicode_changes.TestUnicodeChanges.testUTF16Change
buildbot.test.regressions.test_import_unicode_changes.TestUnicodeChanges.testUnicodeChange
===============================================================================
[ERROR]
Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/twisted/internet/defer.py", line 133, in maybeDeferred
    result = f(*args, **kw)
  File "/home/jollyroger/buildbot/buildbot/build-dir/buildbot-0.8.4-pre-246-ga4a6c9a/buildbot/db/model.py", line 453, in thd
    upgrade(engine)
  File "/home/jollyroger/buildbot/buildbot/build-dir/buildbot-0.8.4-pre-246-ga4a6c9a/buildbot/db/model.py", line 417, in upgrade
    schema.runchange(version, change, 1)
  File "/usr/lib/python2.6/dist-packages/migrate/versioning/schema.py", line 84, in runchange
    change.run(self.engine, step)
  File "/usr/lib/python2.6/dist-packages/migrate/versioning/script/py.py", line 145, in run
    script_func(engine)
  File "/home/jollyroger/buildbot/buildbot/build-dir/buildbot-0.8.4-pre-246-ga4a6c9a/buildbot/db/migrate/versions/004_add_autoincrement.py", line 80, in upgrade
    col.alter(autoincrement=True)
  File "/usr/lib/python2.6/dist-packages/migrate/changeset/schema.py", line 493, in alter
    return alter_column(self, *p, **k)
  File "/usr/lib/python2.6/dist-packages/migrate/changeset/schema.py", line 136, in alter_column
    engine._run_visitor(visitorcallable, delta)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 1682, in _run_visitor
    **kwargs).traverse_single(element)
  File "/usr/lib/python2.6/dist-packages/migrate/changeset/ansisql.py", line 57, in traverse_single
    ret = super(AlterTableVisitor, self).traverse_single(elem)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/visitors.py", line 77, in traverse_single
    return meth(obj, **kw)
  File "/usr/lib/python2.6/dist-packages/migrate/changeset/databases/sqlite.py", line 55, in visit_column
    self.recreate_table(table,column,delta)
  File "/usr/lib/python2.6/dist-packages/migrate/changeset/databases/sqlite.py", line 42, in recreate_table
    table.create()
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/schema.py", line 439, in create
    bind.create(self, checkfirst=checkfirst)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 1647, in create
    connection=connection, **kwargs)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 1682, in _run_visitor
    **kwargs).traverse_single(element)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/visitors.py", line 77, in traverse_single
    return meth(obj, **kw)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/ddl.py", line 58, in visit_table
    self.connection.execute(schema.CreateTable(table))
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 1157, in execute
    params)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 1207, in _execute_ddl
    compiled_ddl=ddl.compile(dialect=self.dialect),
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/expression.py", line 1271, in compile
    compiler.compile()
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 702, in compile
    self.string = self.process(self.statement)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 715, in process
    return obj._compiler_dispatch(self, **kwargs)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/visitors.py", line 48, in _compiler_dispatch
    return getter(visitor)(self, **kw)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/compiler.py", line 1152, in visit_create_table
    const = self.create_table_constraints(table)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/compiler.py", line 1170, in create_table_constraints
    (self.process(constraint) for constraint in constraints
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/compiler.py", line 1169, in <genexpr>
    return ", 
	".join(p for p in
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/compiler.py", line 1176, in <genexpr>
    not getattr(constraint, 'use_alter', False)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 715, in process
    return obj._compiler_dispatch(self, **kwargs)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/visitors.py", line 48, in _compiler_dispatch
    return getter(visitor)(self, **kw)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/compiler.py", line 1294, in visit_foreign_key_constraint
    preparer.format_constraint(constraint)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/compiler.py", line 1564, in format_constraint
    return self.quote(constraint.name, constraint.quote)
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/compiler.py", line 1538, in quote
    if self._requires_quotes(ident):
  File "/usr/lib/python2.6/dist-packages/sqlalchemy/sql/compiler.py", line 1519, in _requires_quotes
    lc_value = value.lower()
exceptions.AttributeError: 'int' object has no attribute 'lower'

buildbot.test.unit.test_db_model.DBConnector_Basic.test_is_current_full
-------------------------------------------------------------------------------

I believe this is connected to sqlalchemy, so just to remind I have version 0.6.3 installed. Just in case i see a method trying to run a string method to an integer so it seems type cast is needed somewhere.

comment:11 Changed 4 years ago by Dustin J. Mitchell

Merge branch 'bug1860' of git://github.com/jollyroger/buildbot

Refs #1860

Changeset: a2572e5484253d682ad59485c18cd252ec3d957a

comment:12 Changed 4 years ago by dustin

As far as the new AttributeError problems, can you try adding

print "NAMES", col.name, col_name

in buildbot/db/migrate/versions/004_add_autoincrement.py before the call to col.alter?

comment:13 Changed 4 years ago by jollyroger

Ok, here's the output(stripped):

buildbot.test.integration.test_upgrade
  TestWeirdChanges
    testUpgradeChangeLinks ... 
NAMES schedulerid schedulerid
NAMES id id
                                         [ERROR]
    testUpgradeChangeNoRevision ... 
NAMES schedulerid schedulerid
NAMES id id
                                    [ERROR]
    testUpgradeChangeProperties ... 
NAMES schedulerid schedulerid
NAMES id id
                                    [ERROR]
    testUpgradeListsAsFilenames ... 
NAMES schedulerid schedulerid
NAMES id id
                                    [ERROR]
  UpgradeTest075
    test_test ... 
NAMES schedulerid schedulerid
NAMES id id
                                                      [ERROR]
  UpgradeTestCitools
    test_test ... 
NAMES schedulerid schedulerid
NAMES id id
                                                      [ERROR]
  UpgradeTestEmpty
    test_emptydb_modelmatches ... 
NAMES schedulerid schedulerid
NAMES id id
                                      [ERROR]
buildbot.test.regressions.test_import_unicode_changes
  TestUnicodeChanges
    testAsciiChange ... 
NAMES schedulerid schedulerid
NAMES id id
                                                [ERROR]
    testNonUnicodeChange ...                                               [OK]
    testUTF16Change ... 
NAMES schedulerid schedulerid
NAMES id id
                                                [ERROR]
    testUnicodeChange ... 
NAMES schedulerid schedulerid
NAMES id id
                                              [ERROR]

--- skipped ---

buildbot.test.unit.test_db_model
  DBConnector_Basic
    test_is_current_empty ...                                              [OK]
    test_is_current_full ... 
NAMES schedulerid schedulerid
NAMES id id
                                           [ERROR]

So the case is failing on 'builds' table. I added all absent tables' stubs and all the tests had been passed. (Did some reverse engineering though, so no relations were created). It appears that _trial_temp/test.db database is empty (at least after running the tests) so there is no way to get table structure by loading table from the database.

Here are stubs I used:

sa.Table("builds", metadata,
    sa.Column('id', sa.Integer, autoincrement=False, primary_key=True),
    sa.Column('number', sa.Integer),
    sa.Column('brid', sa.Integer),
    sa.Column('start_time', sa.Integer),
    sa.Column('finish_time', sa.Integer),
)

sa.Table("buildrequests", metadata,
    sa.Column('id', sa.Integer, autoincrement=False, primary_key=True),
    sa.Column('buildsetid', sa.Integer),
    sa.Column('buildername', sa.String(256), nullable=False),
    sa.Column('priority', sa.Integer),
    sa.Column('claimed_at', sa.Integer),
    sa.Column('claimed_by_name', sa.String(256), nullable=False),
    sa.Column('claimed_by_incarnation', sa.String(256), nullable=False),
    sa.Column('complete', sa.Integer),
    sa.Column('results', sa.SmallInteger),
    sa.Column('submitted_at', sa.Integer),
    sa.Column('complete_at', sa.Integer),
)

sa.Table("buildsets", metadata,
    sa.Column('id', sa.Integer, autoincrement=False, primary_key=True),
    sa.Column('external_idstring', sa.String(256), nullable=False),
    sa.Column('reason', sa.String(256), nullable=False),
    sa.Column('sourcestampid', sa.Integer),
    sa.Column('submitted_at', sa.Integer),
    sa.Column('complete', sa.SmallInteger),
    sa.Column('complete_at', sa.Integer),
    sa.Column('results', sa.SmallInteger),
)

sa.Table("patches", metadata,
    sa.Column('id', sa.Integer, autoincrement=False, primary_key=True),
    sa.Column('patchlevel', sa.Integer),
    sa.Column('patch_base64', sa.Text, nullable=False),
    sa.Column('subdir', sa.Text, nullable=False),
)
Last edited 4 years ago by jollyroger (previous) (diff)

comment:14 Changed 4 years ago by Dustin J. Mitchell

  • Resolution set to fixed
  • Status changed from reopened to closed

Add more "fake" metadata tables to help upgrade.

Fixes #1860.

Changeset: e1839438e1defe1b8981973db1afe440debca1e9

comment:15 Changed 4 years ago by Dustin J. Mitchell

include full tables for 004_add_autoincrement

Some dialects (SQLite) alter the schema by creating a new temporary table, copying data, and renaming. Such dialects need the entire table schema, foreign keys and defaults and all. This was broken by an otherwise innocent-looking patch (refs #1860), and caused Force Builds to fail, among other things.

Changeset: 08c77c538933669998ed26dd67a7412ceeab6c49

comment:16 Changed 4 years ago by Dustin J. Mitchell

Supply values for all columns for buildsets and buildrequests

The database has default values, but Buildbot should avoid using them wherever possible, so this adds explicit values in the Python code.

This is the second half of the fix to the previous commit, which merely fixed the database default values. Refs #1860.

Changeset: 2296b93206e30d0e5f92ffee2c791918662299ec

Note: See TracTickets for help on using tickets.