diff bin/inittreepkg.py @ 106:66cbfc772f84

Add bin/inittreepkg.py, a script to automate some of the installation and some support code for in in the packager classes.
author Bernhard Herzog <bh@intevation.de>
date Tue, 04 Mar 2008 14:31:28 +0000
parents
children 1fcdffbeb9de
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bin/inittreepkg.py	Tue Mar 04 14:31:28 2008 +0000
@@ -0,0 +1,44 @@
+#! /usr/bin/python2.4
+# Copyright (C) 2007, 2008 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 partially initialize the tree packager
+
+The script assumes that the config file for the tree packager already
+contains the settings for the individual packagers.  This script will at
+least create the base directory for all packagers configured in the
+configuration file and perhaps do other checks and initializations
+depending on the packager classes used.  The output indicates what has
+been done and what still needs to be done manually.
+"""
+
+
+import treepkgcmd
+from treepkg.options import create_parser
+from treepkg.packager import create_package_track, PackagerGroup
+from treepkg.readconfig import read_config
+
+
+def init_treepkg(config_file):
+    treepkg_opts, packager_opts = read_config(config_file)
+    group = PackagerGroup([create_package_track(**opts)
+                           for opts in packager_opts],
+                          **treepkg_opts)
+    for track in group.get_package_tracks():
+        track.init_treepkg()
+
+
+def parse_commandline():
+    parser = create_parser()
+    return parser.parse_args()
+
+
+def main():
+    options, args = parse_commandline()
+    init_treepkg(options.config_file)
+
+main()
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)