Mercurial > treepkg
annotate recipes/kde_enterprise_4/base.py @ 522:7af344f9e704
set the correct tags_rules_pattern if not provided in the config
kw.pop with a default value doesn't work with empty strings
author | Bjoern Ricks <bricks@intevation.de> |
---|---|
date | Thu, 11 Nov 2010 08:26:32 +0000 |
parents | 85eb9425c346 |
children |
rev | line source |
---|---|
216
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
1 # Copyright (C) 2007, 2008, 2009 by Intevation GmbH |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
2 # Authors: |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
3 # Bernhard Herzog <bh@intevation.de> |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
4 # |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
5 # This program is free software under the GPL (>=v2) |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
6 # Read the file COPYING coming with the software for details. |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
7 |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
8 """Base classes for all kdepim packagers""" |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
9 |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
10 import os |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
11 import time |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
12 import inspect |
265
9c0131d2e0e1
Add automatic detection and builds of svn tags for the kdepim enterprise4
Bernhard Herzog <bh@intevation.de>
parents:
216
diff
changeset
|
13 import logging |
216
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
14 |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
15 import treepkg.packager |
265
9c0131d2e0e1
Add automatic detection and builds of svn tags for the kdepim enterprise4
Bernhard Herzog <bh@intevation.de>
parents:
216
diff
changeset
|
16 import treepkg.subversion |
9c0131d2e0e1
Add automatic detection and builds of svn tags for the kdepim enterprise4
Bernhard Herzog <bh@intevation.de>
parents:
216
diff
changeset
|
17 |
278
354fc60d90a4
Reuse most of the code from recipes/kde_enterprise_3_5/base.py for enterprise4
Bernhard Herzog <bh@intevation.de>
parents:
276
diff
changeset
|
18 import recipes.kde_enterprise_3_5.base as base35 |
265
9c0131d2e0e1
Add automatic detection and builds of svn tags for the kdepim enterprise4
Bernhard Herzog <bh@intevation.de>
parents:
216
diff
changeset
|
19 |
278
354fc60d90a4
Reuse most of the code from recipes/kde_enterprise_3_5/base.py for enterprise4
Bernhard Herzog <bh@intevation.de>
parents:
276
diff
changeset
|
20 class BaseSourcePackager(base35.BaseSourcePackager): |
216
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
21 |
335
85eb9425c346
Updated recipes to reflect that Subversion revsisons are handled as strings
Andre Heinecke <aheinecke@intevation.de>
parents:
278
diff
changeset
|
22 changemsg_template = "Update to SVN enterprise4 branch rev. %(revision)s" |
274
2676abfc0e1d
Refactoring: Implement do_package in treepkg.packager.SourcePackager.
Bernhard Herzog <bh@intevation.de>
parents:
273
diff
changeset
|
23 |
216
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
24 |
278
354fc60d90a4
Reuse most of the code from recipes/kde_enterprise_3_5/base.py for enterprise4
Bernhard Herzog <bh@intevation.de>
parents:
276
diff
changeset
|
25 BasePackageTrack = base35.BasePackageTrack |
267
fdee17d71778
Refactor the enterprise4 BasePackageTrack to make it possible to
Bernhard Herzog <bh@intevation.de>
parents:
265
diff
changeset
|
26 |
216
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
27 |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
28 def define_kdepim_packager(basename=None, external_subdirs=None): |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
29 |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
30 caller_globals = inspect.currentframe().f_back.f_globals |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
31 |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
32 SourcePackager = caller_globals.get("SourcePackager") |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
33 if SourcePackager is None: |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
34 class SourcePackager(BaseSourcePackager): |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
35 pkg_basename = basename |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
36 |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
37 class RevisionPackager(treepkg.packager.RevisionPackager): |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
38 source_packager_cls = SourcePackager |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
39 |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
40 class PackageTrack(BasePackageTrack): |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
41 revision_packager_cls = RevisionPackager |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
42 |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
43 if external_subdirs is not None: |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
44 svn_external_subdirs = external_subdirs |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
45 |
89ca9ba349e5
New module with code common to almost all kdepim enterprise 4 recipes
Bernhard Herzog <bh@intevation.de>
parents:
diff
changeset
|
46 caller_globals["PackageTrack"] = PackageTrack |