annotate bin/createstaticweb.py @ 570:44c0f8404983

Refactor git pull command out of update Tag MUST NOT use update because therefore it always changes the current local branch! For listing the tags it's enough to pull the latest repo changes
author Bjoern Ricks <bricks@intevation.de>
date Fri, 02 Sep 2011 11:46:29 +0000
parents ef87d30468b6
children
rev   line source
287
1fcdffbeb9de Make the #! line in the commands more portable. Use /usr/bin/python
Bernhard Herzog <bh@intevation.de>
parents: 154
diff changeset
1 #! /usr/bin/python
1fcdffbeb9de Make the #! line in the commands more portable. Use /usr/bin/python
Bernhard Herzog <bh@intevation.de>
parents: 154
diff changeset
2 # Copyright (C) 2007, 2008, 2009 by Intevation GmbH
78
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
3 # Authors:
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
4 # Bernhard Herzog <bh@intevation.de>
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
5 #
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
6 # This program is free software under the GPL (>=v2)
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
7 # Read the file COPYING coming with the software for details.
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
8
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
9 """Creates a static web-site with a status report"""
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
10
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
11 import sys
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
12 import os
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
13
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
14 import treepkgcmd
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
15 from treepkg.options import create_parser
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
16 from treepkg.web import Status
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
17
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
18 def parse_commandline():
152
4adcb15cbdfb Let the user supply the filename of the template to use for the status page.
Bernhard Herzog <bh@intevation.de>
parents: 78
diff changeset
19 parser = create_parser()
154
a30351c91a68 Make status-by-startdate.html the default template. Sorting by date is
Bernhard Herzog <bh@intevation.de>
parents: 152
diff changeset
20 parser.set_defaults(status_template="status-by-startdate.html")
372
ef87d30468b6 Added the option to expose additional log files from the log directory.
Andre Heinecke <aheinecke@intevation.de>
parents: 325
diff changeset
21 parser.set_defaults(show_logs="build_log.txt.gz")
152
4adcb15cbdfb Let the user supply the filename of the template to use for the status page.
Bernhard Herzog <bh@intevation.de>
parents: 78
diff changeset
22 parser.add_option("--status-template",
4adcb15cbdfb Let the user supply the filename of the template to use for the status page.
Bernhard Herzog <bh@intevation.de>
parents: 78
diff changeset
23 help=("The template file to use for the status page."
4adcb15cbdfb Let the user supply the filename of the template to use for the status page.
Bernhard Herzog <bh@intevation.de>
parents: 78
diff changeset
24 " Relative filenames are interpreted"
4adcb15cbdfb Let the user supply the filename of the template to use for the status page.
Bernhard Herzog <bh@intevation.de>
parents: 78
diff changeset
25 " relative to the web subdirectory."
325
85b5667f543e Fix default value in help string for --status-template option.
Bernhard Herzog <bh@intevation.de>
parents: 287
diff changeset
26 " Default is status-by-startdate.html."))
372
ef87d30468b6 Added the option to expose additional log files from the log directory.
Andre Heinecke <aheinecke@intevation.de>
parents: 325
diff changeset
27 parser.add_option("--show-logs",
ef87d30468b6 Added the option to expose additional log files from the log directory.
Andre Heinecke <aheinecke@intevation.de>
parents: 325
diff changeset
28 help=("A comma seperated list of filenames of the"
ef87d30468b6 Added the option to expose additional log files from the log directory.
Andre Heinecke <aheinecke@intevation.de>
parents: 325
diff changeset
29 " logs that should be included in the status page."
ef87d30468b6 Added the option to expose additional log files from the log directory.
Andre Heinecke <aheinecke@intevation.de>
parents: 325
diff changeset
30 " Valid names are filenames of the files"
ef87d30468b6 Added the option to expose additional log files from the log directory.
Andre Heinecke <aheinecke@intevation.de>
parents: 325
diff changeset
31 " in the log dir of a package. e.g."
ef87d30468b6 Added the option to expose additional log files from the log directory.
Andre Heinecke <aheinecke@intevation.de>
parents: 325
diff changeset
32 " --show-logs=tarball_log.txt,dpkg_source.txt"
ef87d30468b6 Added the option to expose additional log files from the log directory.
Andre Heinecke <aheinecke@intevation.de>
parents: 325
diff changeset
33 " Default is build_log.txt.gz"))
152
4adcb15cbdfb Let the user supply the filename of the template to use for the status page.
Bernhard Herzog <bh@intevation.de>
parents: 78
diff changeset
34 return parser.parse_args()
78
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
35
372
ef87d30468b6 Added the option to expose additional log files from the log directory.
Andre Heinecke <aheinecke@intevation.de>
parents: 325
diff changeset
36 def create_static_site(treepkg_config, status_template, show_logs, destdir):
ef87d30468b6 Added the option to expose additional log files from the log directory.
Andre Heinecke <aheinecke@intevation.de>
parents: 325
diff changeset
37 status = Status(treepkg_config=treepkg_config, template=status_template,
ef87d30468b6 Added the option to expose additional log files from the log directory.
Andre Heinecke <aheinecke@intevation.de>
parents: 325
diff changeset
38 logs=show_logs.split(","))
78
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
39 status.create_static_site(destdir)
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
40
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
41 def main():
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
42 options, args = parse_commandline()
152
4adcb15cbdfb Let the user supply the filename of the template to use for the status page.
Bernhard Herzog <bh@intevation.de>
parents: 78
diff changeset
43 create_static_site(options.config_file,
4adcb15cbdfb Let the user supply the filename of the template to use for the status page.
Bernhard Herzog <bh@intevation.de>
parents: 78
diff changeset
44 options.status_template,
372
ef87d30468b6 Added the option to expose additional log files from the log directory.
Andre Heinecke <aheinecke@intevation.de>
parents: 325
diff changeset
45 options.show_logs,
152
4adcb15cbdfb Let the user supply the filename of the template to use for the status page.
Bernhard Herzog <bh@intevation.de>
parents: 78
diff changeset
46 args[0])
78
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
47
9a602d8eaa60 initial revision of the subversion repository
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
48 main()
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)