diff bin/initbuilder.py @ 344:f06f707d9fda

merged branches/scratchbox into trunk #### IMPORTANT FOR ALL TREEPKGS ##### pbuilderrc config variable name changed to builderconfig
author Bjoern Ricks <bricks@intevation.de>
date Fri, 23 Apr 2010 07:43:29 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bin/initbuilder.py	Fri Apr 23 07:43:29 2010 +0000
@@ -0,0 +1,55 @@
+#! /usr/bin/python
+# Copyright (C) 2007, 2008, 2009 by Intevation GmbH
+# Authors:
+# Bernhard Herzog <bh@intevation.de>
+#
+# This program is free software under the GPL (>=v2)
+# Read the file COPYING coming with the software for details.
+
+"""Script to initialize the builder environment for the tree packager
+
+The script assumes that the config file for the tree packager already
+contains the builder settings.  Also, this script assumes that there is
+only one builder setting for all packagers.
+"""
+
+import sys
+
+import treepkgcmd
+from treepkg.options import create_parser
+from treepkg.packager import create_package_track, PackagerGroup
+from treepkg.readconfig import read_config
+
+
+def parse_commandline():
+    parser = create_parser()
+    parser.set_defaults(distribution="etch")
+    parser.add_option("--mirrorsite",
+                      help=("The debian mirror site"
+                            " (pbuilder MIRRORSITE setting).  Required."))
+    parser.add_option("--othermirror",
+                      help=("Extra contents of the OTHERMIRROR setting."
+                            " See the pbuilder documentation for the format."))
+    parser.add_option("--distribution",
+                      help=("The debian distribution for the pbuilder chroot."
+                            " Default is etch."))
+    return parser.parse_args()
+
+
+def main():
+    options, args = parse_commandline()
+
+    if options.mirrorsite is None:
+        print >>sys.stderr, "Missing required option --mirrorsite"
+        sys.exit(1)
+
+    treepkg_opts, packager_opts = read_config(options.config_file)
+    group = PackagerGroup([create_package_track(**opts)
+                           for opts in packager_opts],
+                          **treepkg_opts)
+    track = group.get_package_tracks()[0]
+    track.builder.init_builder(distribution=options.distribution,
+                                mirrorsite=options.mirrorsite,
+                                extramirrors=options.othermirror)
+
+main()
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)