diff options
author | Olivier Blin <oblin@mandriva.com> | 2006-11-13 18:06:25 +0000 |
---|---|---|
committer | Olivier Blin <oblin@mandriva.com> | 2006-11-13 18:06:25 +0000 |
commit | ddfe1eae14c0a6bebe9343c3ea8aa890e056fec2 (patch) | |
tree | 1e01fc46c00a6758162ca0f9d154a0f86fe28365 /create-srpm | |
parent | f6c282e106b441f26535f1a621d906a4c9aa861d (diff) | |
download | mgarepo-ddfe1eae14c0a6bebe9343c3ea8aa890e056fec2.tar mgarepo-ddfe1eae14c0a6bebe9343c3ea8aa890e056fec2.tar.gz mgarepo-ddfe1eae14c0a6bebe9343c3ea8aa890e056fec2.tar.bz2 mgarepo-ddfe1eae14c0a6bebe9343c3ea8aa890e056fec2.tar.xz mgarepo-ddfe1eae14c0a6bebe9343c3ea8aa890e056fec2.zip |
merge with 1.6 branch (commits 83373 and 83726)
Diffstat (limited to 'create-srpm')
-rwxr-xr-x | create-srpm | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/create-srpm b/create-srpm index 000afd2..544b011 100755 --- a/create-srpm +++ b/create-srpm @@ -3,7 +3,7 @@ from RepSys import Error, config from RepSys.rpmutil import get_srpm from RepSys.cgiutil import get_targets -from RepSys.util import mapurl +from RepSys.util import mapurl, execcmd, get_helper import sys import os import pwd @@ -16,7 +16,7 @@ class CmdIface: return config.get("users", author) def submit_package(self, packageurl, packagerev, targetname, - dontmapurl_=0): + dontmapurl_=0, define=[]): pw = pwd.getpwuid(os.getuid()) username = pw[0] packager = config.get("users", username) or pw[4] @@ -46,13 +46,27 @@ class CmdIface: newurl = packageurl if not dontmapurl_: newurl = mapurl(packageurl) - get_srpm(newurl, + targetsrpms = get_srpm(newurl, revision=packagerev, targetdirs=target.target, packager=packager, revname=1, svnlog=1, scripts=target.scripts) + + uploadsrpm = get_helper("upload-srpm") + if uploadsrpm: + upload_command = [ uploadsrpm ] + if define: + for x in define: + upload_command.append("--define") + upload_command.append(x) + upload_command.append(targetname) + upload_command.append(targetsrpms[0]) + status, output = execcmd(" ".join(upload_command)) + os.unlink(targetsrpms[0]) + if status != 0: + raise CmdError, "Failed to upload %s:\n%s" % (packageurl, output) return 1 def submit_targets(self): @@ -69,6 +83,7 @@ def parse_options(): parser.add_option("-M", "--nomapping", action="store_true", dest="urlmap", default=False, help="disable url mapping") + parser.add_option("--define", action="append") opts, args = parser.parse_args() if not args: parser.error("you must supply a package url") @@ -78,7 +93,7 @@ def parse_options(): def main(): iface = CmdIface() opts, args = parse_options() - iface.submit_package(args[0], opts.revision, opts.target, opts.urlmap) + iface.submit_package(args[0], opts.revision, opts.target, opts.urlmap, opts.define) if __name__ == "__main__": |