aboutsummaryrefslogtreecommitdiffstats
path: root/create-srpm
diff options
context:
space:
mode:
authorMystery Man <unknown@mandriva.org>2005-12-07 10:44:44 +0000
committerMystery Man <unknown@mandriva.org>2005-12-07 10:44:44 +0000
commitd42426e5263b01076457675cdfda6c6c5f8a9abf (patch)
tree9fc396a8974d3f1fd098d33113c266a00619c70c /create-srpm
parent1c16d2812f86016cf8a1a6fa525281c644b9ab89 (diff)
downloadmgarepo-d42426e5263b01076457675cdfda6c6c5f8a9abf.tar
mgarepo-d42426e5263b01076457675cdfda6c6c5f8a9abf.tar.gz
mgarepo-d42426e5263b01076457675cdfda6c6c5f8a9abf.tar.bz2
mgarepo-d42426e5263b01076457675cdfda6c6c5f8a9abf.tar.xz
mgarepo-d42426e5263b01076457675cdfda6c6c5f8a9abf.zip
This commit was manufactured by cvs2svn to create tag 'V1_5_4_1mdk'.topic/V1_5_X@939
Diffstat (limited to 'create-srpm')
-rwxr-xr-xcreate-srpm71
1 files changed, 71 insertions, 0 deletions
diff --git a/create-srpm b/create-srpm
new file mode 100755
index 0000000..cdf8e26
--- /dev/null
+++ b/create-srpm
@@ -0,0 +1,71 @@
+#!/usr/bin/python
+
+from RepSys import Error, config
+from RepSys.rpmutil import get_srpm
+from RepSys.cgiutil import get_targets
+import sys
+import os
+import pwd
+
+class CmdError(Error): pass
+
+class CmdIface:
+ def author_email(self, author):
+ return config.get("users", author)
+
+ def submit_package(self, packageurl, packagerev, targetname):
+ pw = pwd.getpwuid(os.getuid())
+ username = pw[0]
+ packager = config.get("users", username) or pw[4]
+ if not packager:
+ raise CmdError, "your email was not found"
+ elif not packagerev:
+ raise CmdError, "no revision provided"
+ elif not targetname:
+ raise CmdError, "no target provided"
+ else:
+ targetname = targetname.lower()
+ for target in get_targets():
+ if target.name.lower() == targetname:
+ break
+ else:
+ raise CmdError, "target not found"
+ try:
+ tmp = int(packagerev)
+ except ValueError:
+ raise CmdError, "invalid revision provided"
+ for allowed in target.allowed:
+ if packageurl.startswith(allowed):
+ break
+ else:
+ raise CmdError, "%s is not allowed for this target" \
+ % packageurl
+ get_srpm(packageurl,
+ revision=packagerev,
+ targetdirs=target.target,
+ packager=packager,
+ revname=1,
+ svnlog=1,
+ scripts=target.scripts)
+ return 1
+
+ def submit_targets(self):
+ return [x.name for x in get_targets()]
+
+
+def main():
+
+ iface = CmdIface()
+
+ print sys.argv
+
+ if len(sys.argv) == 3:
+ rev = None
+ target = sys.argv[2]
+ else:
+ rev = sys.argv[2]
+ target = sys.argv[3]
+
+ iface.submit_package(sys.argv[1], rev, target)
+
+main()