Merge lp:~jameinel/bzr-builddeb/import-scripts-updates2 into lp:~james-w/bzr-builddeb/import-scripts

Proposed by John A Meinel
Status: Merged
Merge reported by: James Westby
Merged at revision: not available
Proposed branch: lp:~jameinel/bzr-builddeb/import-scripts-updates2
Merge into: lp:~james-w/bzr-builddeb/import-scripts
Prerequisite: lp:~jameinel/bzr-builddeb/import-scripts-updates
Diff against target: 79 lines (+25/-5)
1 file modified
import_package.py (+25/-5)
To merge this branch: bzr merge lp:~jameinel/bzr-builddeb/import-scripts-updates2
Reviewer Review Type Date Requested Status
Bzr-builddeb-hackers Pending
Review via email: mp+19537@code.launchpad.net
To post a comment you must log in.
Revision history for this message
John A Meinel (jameinel) wrote :

This adds some small tweaking to the import_package.py script. Probably needs some direct comments about what we should keep, but it was useful for me when trying to get started and debug what was going on.

  312 John Arbash Meinel 2010-02-17
      Several small updates.
      1) handle when madison-lite is not installed more gracefully
      2) enable_default_logging() before loading plugins, in case something fails to load.
      3) allow passing -Dxxx flags for bzrlib to use for debugging (like -Dhttp, -Derror, and -Dhpss)

This is currently committed on top of import-scripts-updates, but I can pull them back apart, there isn't a code-level dependency.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'import_package.py'
--- import_package.py 2010-02-12 21:51:28 +0000
+++ import_package.py 2010-02-17 21:05:27 +0000
@@ -1,6 +1,7 @@
1#!/usr/bin/python1#!/usr/bin/python
22
3import datetime3import datetime
4import errno
4import operator5import operator
5import optparse6import optparse
6import os7import os
@@ -17,10 +18,15 @@
1718
18from launchpadlib.errors import HTTPError19from launchpadlib.errors import HTTPError
1920
20from bzrlib import branch, bzrdir, errors, merge, tag, trace, transport, ui, urlutils21from bzrlib import branch, bzrdir, debug, errors, merge, tag, trace, transport, ui, urlutils
21from bzrlib.plugin import load_plugins22from bzrlib.plugin import load_plugins
22from bzrlib.trace import mutter, log_exception_quietly23from bzrlib.trace import mutter, log_exception_quietly, enable_default_logging
2324
25# We may not want to do this, but if there is a failure while loading plugins,
26# it is the only way to find out. One option would be to call
27# 'trace.pop_log_file()' immediately after loading plugins.
28enable_default_logging()
29mutter('import_package started w/ args: %r' % (sys.argv,))
24load_plugins()30load_plugins()
2531
26from bzrlib.plugins.builddeb import import_dsc32from bzrlib.plugins.builddeb import import_dsc
@@ -166,8 +172,15 @@
166 pocket)172 pocket)
167 vlist.add_if_needed(newp)173 vlist.add_if_needed(newp)
168 update_lists()174 update_lists()
169 proc = subprocess.Popen(["/usr/bin/madison-lite", "--mirror", icommon.lists_dir,175 try:
170 package], stdout=subprocess.PIPE, preexec_fn=subprocess_setup)176 proc = subprocess.Popen(["/usr/bin/madison-lite", "--mirror", icommon.lists_dir,
177 package], stdout=subprocess.PIPE, preexec_fn=subprocess_setup)
178 except OSError, e:
179 if e.errno in (errno.ENOENT,):
180 sys.stderr.write('You must have "madison-lite" installed.\n'
181 'try: sudo apt-get install madison-lite.\n')
182 sys.exit(1)
183 raise
171 output, errout = proc.communicate()184 output, errout = proc.communicate()
172 assert proc.returncode == 0, "Error running madison-lite"185 assert proc.returncode == 0, "Error running madison-lite"
173 for line in output.splitlines():186 for line in output.splitlines():
@@ -764,10 +777,11 @@
764 newdir = format.initialize_on_transport(to_transport)777 newdir = format.initialize_on_transport(to_transport)
765 repo = newdir.create_repository(shared=True)778 repo = newdir.create_repository(shared=True)
766 repo.set_make_working_trees(True)779 repo.set_make_working_trees(True)
780 mutter("finding all versions of %s" % (package,))
767 versions = get_versions(package, extra_debian=extra_debian)781 versions = get_versions(package, extra_debian=extra_debian)
768 assert len(versions.plist) > 0782 assert len(versions.plist) > 0
769 versions.reverse()783 versions.reverse()
770 mutter(str(versions))784 mutter("found %d versions: %s" % (len(versions.plist), versions))
771 possible_transports = []785 possible_transports = []
772 versions = find_unimported_versions(temp_dir, versions, package,786 versions = find_unimported_versions(temp_dir, versions, package,
773 revid_db, bstore, possible_transports=possible_transports)787 revid_db, bstore, possible_transports=possible_transports)
@@ -825,12 +839,18 @@
825parser.add_option("--no-existing", dest="no_existing", action="store_true")839parser.add_option("--no-existing", dest="no_existing", action="store_true")
826parser.add_option("--extra-debian", dest="extra_debian")840parser.add_option("--extra-debian", dest="extra_debian")
827parser.add_option("--verbose", dest="verbose", action="store_true")841parser.add_option("--verbose", dest="verbose", action="store_true")
842parser.add_option("-D", dest="debug_flags", action="append", default=[],
843 help="Set debug flags, see 'bzr help debug-flags'")
828844
829options, args = parser.parse_args()845options, args = parser.parse_args()
830846
831if options.verbose:847if options.verbose:
832 trace.set_verbosity_level(1)848 trace.set_verbosity_level(1)
833 trace.push_log_file(sys.stderr)849 trace.push_log_file(sys.stderr)
850if sys.stderr.isatty():
851 # Don't create a progress bar if we aren't actually in a terminal
852 ui.ui_factory = ui.make_ui_for_terminal(sys.stdin, sys.stdout, sys.stderr)
853debug.debug_flags.update(options.debug_flags)
834854
835855
836if len(args) < 1:856if len(args) < 1:

Subscribers

People subscribed via source and target branches

to all changes: