Daily recipe build fails on Launchpad but works locally

Asked by Raoul Snyman on 2013-01-06

Hi,

I'm trying to set up a daily build from a recipe for my OpenLP project. I've tested it out locally, creating the recipe, running it through bzr dailydeb, and then running the resulting source package through pbuilder, and everything works fine.

When I created the recipe on Launchpad, however, it fails with the following exception:

bzr: ERROR: exceptions.AttributeError: 'cStringIO.StringI' object has no attribute 'split'
Traceback (most recent call last):
  File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 946, in exception_to_return_code
    return the_callable(*args, **kwargs)
  File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 1150, in run_bzr
    ret = run(*run_argv)
  File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 699, in run_argv_aliases
    return self.run(**all_cmd_args)
  File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 721, in run
    return self._operation.run_simple(*args, **kwargs)
  File "/usr/lib/python2.5/site-packages/bzrlib/cleanup.py", line 135, in run_simple
    self.cleanups, self.func, *args, **kwargs)
  File "/usr/lib/python2.5/site-packages/bzrlib/cleanup.py", line 165, in _do_with_cleanups
    result = func(*args, **kwargs)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/builder/cmds.py", line 620, in run
    possible_transports=possible_transports)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/builder/cmds.py", line 463, in _get_prepared_branch_from_location
    changed = resolve_revisions(base_branch, if_changed_from=old_recipe)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/builder/recipe.py", line 653, in resolve_revisions
    if_changed_from=if_changed_from_revisions)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/builder/recipe.py", line 623, in _resolve_revisions_recurse
    if_changed_from=if_changed_child)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/builder/recipe.py", line 602, in _resolve_revisions_recurse
    substitute_branch_vars(new_branch.name, new_branch.branch, new_branch.revid)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/builder/recipe.py", line 1018, in substitute_branch_vars
    cl = changelog.Changelog(tree.get_file(cl_file_id))
  File "/var/lib/python-support/python2.5/debian_bundle/changelog.py", line 203, in __init__
    self.parse_changelog(file, max_blocks, allow_empty_author=allow_empty_author)
  File "/var/lib/python-support/python2.5/debian_bundle/changelog.py", line 222, in parse_changelog
    for line in self._file.split('\n'):
AttributeError: 'cStringIO.StringI' object has no attribute 'split'

The recipe:
  https://code.launchpad.net/~openlp-core/+recipe/openlp-daily

The full build log:
  https://launchpadlibrarian.net/127695793/buildlog.txt.gz

The command I'm using:
  $ bzr dailydeb --allow-fallback-to-native ~/openlp.recipe ~/lprecipe

The only difference I have between the two recipes is that locally I'm using a local checkout of the same repository, because builddeb has connection timeouts when trying to check out the remote repo.

Question information

Language:
English Edit question
Status:
Solved
For:
Launchpad itself Edit question
Assignee:
No assignee Edit question
Solved by:
Raoul Snyman
Solved:
2013-01-08
Last query:
2013-01-08
Last reply:
2013-01-07
William Grant (wgrant) said : #1

Launchpad doesn't support recipe format 0.4 yet. Try changing your recipe to version 0.3 (just s/0.4/0.3/ in the first line).

Raoul Snyman (raoul-snyman) said : #2

Unfortunately I need the {latest-tag} (which is not in version 0.3) for how we generate version numbers, so I guess I'll have to stick with my build scripts for the moment.

Thanks for the answer.