[Mageia-sysadm] [371] add binrepo revision options

root at mageia.org root at mageia.org
Fri Jan 28 19:27:48 CET 2011


Revision: 371
Author:   boklm
Date:     2011-01-28 19:27:48 +0100 (Fri, 28 Jan 2011)
Log Message:
-----------
add binrepo revision options

Modified Paths:
--------------
    build_system/mgarepo/trunk/MgaRepo/binrepo.py
    build_system/mgarepo/trunk/MgaRepo/commands/co.py
    build_system/mgarepo/trunk/MgaRepo/commands/getsrpm.py
    build_system/mgarepo/trunk/MgaRepo/commands/markrelease.py
    build_system/mgarepo/trunk/MgaRepo/rpmutil.py

Modified: build_system/mgarepo/trunk/MgaRepo/binrepo.py
===================================================================
--- build_system/mgarepo/trunk/MgaRepo/binrepo.py	2011-01-28 17:49:40 UTC (rev 370)
+++ build_system/mgarepo/trunk/MgaRepo/binrepo.py	2011-01-28 18:27:48 UTC (rev 371)
@@ -151,7 +151,7 @@
         os.symlink(linkpath, destpath)
 
 def download(targetdir, pkgdirurl=None, export=False, show=True,
-        revision=None, symlinks=True, check=False):
+        revision=None, binrev=None, symlinks=True, check=False):
     assert not export or (export and pkgdirurl)
     svn = SVN()
     sourcespath = os.path.join(targetdir, "SOURCES")
@@ -160,8 +160,7 @@
         topurl = translate_url(pkgdirurl)
     else:
         topurl = translate_topdir(targetdir)
-    binrev = None
-    if revision:
+    if revision and not binrev:
         if pkgdirurl:
             binrev = mapped_revision(pkgdirurl, revision)
         else:
@@ -409,9 +408,10 @@
     binrev = "{%s}" % date
     return binrev
 
-def markrelease(sourceurl, releasesurl, version, release, revision):
+def markrelease(sourceurl, releasesurl, version, release, revision, binrev):
     svn = SVN()
-    binrev = mapped_revision(sourceurl, revision)
+    if not binrev:
+	binrev = mapped_revision(sourceurl, revision)
     binsource = translate_url(sourceurl)
     binreleases = translate_url(releasesurl)
     versiondir = mirror._joinurl(binreleases, version)

Modified: build_system/mgarepo/trunk/MgaRepo/commands/co.py
===================================================================
--- build_system/mgarepo/trunk/MgaRepo/commands/co.py	2011-01-28 17:49:40 UTC (rev 370)
+++ build_system/mgarepo/trunk/MgaRepo/commands/co.py	2011-01-28 18:27:48 UTC (rev 371)
@@ -19,6 +19,7 @@
     -d      The distribution branch to checkout from
     -b      The package branch
     -r REV  Revision to checkout
+    -R REV  binrepo revision to checkout
     -S      Do not download sources from the binaries repository
     -L      Do not make symlinks of the binaries downloaded in SOURCES/
     -s      Only checkout the SPECS/ directory
@@ -37,6 +38,7 @@
 def parse_options():
     parser = OptionParser(help=HELP)
     parser.add_option("-r", dest="revision")
+    parser.add_option("-R", dest="binrev")
     parser.add_option("-S", dest="use_binrepo", default=True,
             action="store_false")
     parser.add_option("--check", dest="binrepo_check", default=False,

Modified: build_system/mgarepo/trunk/MgaRepo/commands/getsrpm.py
===================================================================
--- build_system/mgarepo/trunk/MgaRepo/commands/getsrpm.py	2011-01-28 17:49:40 UTC (rev 370)
+++ build_system/mgarepo/trunk/MgaRepo/commands/getsrpm.py	2011-01-28 18:27:48 UTC (rev 371)
@@ -24,6 +24,7 @@
     -p         Use files in pristine/ directory
     -v VER     Use files from the version specified by VER (e.g. 2.2.1-2cl)
     -r REV     Use files from current directory, in revision REV (e.g. 1001)
+    -R REV     Use binrepo files from current directory, in revision REV (e.g. 1001)
     -t DIR     Put SRPM file in directory DIR when done (default is ".")
     -P USER    Define the RPM packager inforamtion to USER
     -s FILE    Run script with "FILE TOPDIR SPECFILE" command
@@ -41,7 +42,7 @@
     mgarepo getsrpm -l python
     mgarepo getsrpm http://foo.bar/svn/cnc/snapshot/python
     mgarepo getsrpm -p http://foo.bar/svn/cnc/releases/8cl/python
-    mgarepo getsrpm -r 1001 file:///svn/cnc/snapshot/python
+    mgarepo getsrpm -r 1001 -R 101 file:///svn/cnc/snapshot/python
 """
 
 def mode_callback(option, opt, val, parser, mode):
@@ -78,6 +79,7 @@
     parser.add_option("-n", dest="revname", action="store_true")
     parser.add_option("-l", dest="svnlog", action="store_true")
     parser.add_option("-T", dest="template", type="string", default=None)
+    parser.add_option("-R", dest="binrev", type="string", default=None)
     parser.add_option("-S", dest="use_binrepo", default=True,
             action="store_false")
     parser.add_option("--check", dest="binrepo_check", default=False,

Modified: build_system/mgarepo/trunk/MgaRepo/commands/markrelease.py
===================================================================
--- build_system/mgarepo/trunk/MgaRepo/commands/markrelease.py	2011-01-28 17:49:40 UTC (rev 370)
+++ build_system/mgarepo/trunk/MgaRepo/commands/markrelease.py	2011-01-28 18:27:48 UTC (rev 371)
@@ -30,6 +30,7 @@
 Options:
     -f FILE Try to extract information from given file
     -r REV  Revision which will be used to make the release copy tag
+    -R REV  binrepo revision which will be used to make the release copy tag
     -v VER  Version which will be used to make the release copy tag
     -n      Append package name to provided URL
     -h      Show this message
@@ -51,9 +52,11 @@
     parser = OptionParser(help=HELP)
     parser.defaults["version"] = None
     parser.defaults["release"] = None
+    parser.defaults["binrev"] = None
     parser.add_option("-v", action="callback", callback=version_callback,
             nargs=1, type="string", dest="__ignore")
     parser.add_option("-r", dest="revision")
+    parser.add_option("-R", dest="binrev")
     parser.add_option("-f", dest="filename")
     parser.add_option("-n", dest="appendname", action="store_true")
     opts, args = parser.parse_args()

Modified: build_system/mgarepo/trunk/MgaRepo/rpmutil.py
===================================================================
--- build_system/mgarepo/trunk/MgaRepo/rpmutil.py	2011-01-28 17:49:40 UTC (rev 370)
+++ build_system/mgarepo/trunk/MgaRepo/rpmutil.py	2011-01-28 18:27:48 UTC (rev 371)
@@ -61,6 +61,7 @@
              version = None,
              release = None,
              revision = None,
+             binrev = None,
              packager = "",
              revname = 0,
              svnlog = 0,
@@ -105,7 +106,7 @@
             binrepo_check = (binrepo_check or 
                     config.getbool("binrepo", "getsrpm-check", False))
             download_binaries(tmpdir, geturl, revision=revision,
-                    export=True, check=binrepo_check)
+                    binrev=binrev, export=True, check=binrepo_check)
         srpmsdir = os.path.join(tmpdir, "SRPMS")
         os.mkdir(srpmsdir)
         specsdir = os.path.join(tmpdir, "SPECS")
@@ -462,7 +463,7 @@
             "nocurrent": nocurrent,
             "nopristine": nopristine}
 
-def checkout(pkgdirurl, path=None, revision=None, branch=None, distro=None,
+def checkout(pkgdirurl, path=None, revision=None, binrev=None, branch=None, distro=None,
         spec=False, use_binrepo=False, binrepo_check=True, binrepo_link=True):
     o_pkgdirurl = pkgdirurl
     pkgdirurl = layout.package_url(o_pkgdirurl, distro=distro)
@@ -477,7 +478,7 @@
     svn = SVN()
     svn.checkout(current, path, rev=revision, show=1)
     if use_binrepo:
-        download_binaries(path, revision=revision, symlinks=binrepo_link,
+        download_binaries(path, revision=revision, binrev=binrev, symlinks=binrepo_link,
                 check=binrepo_check)
     
 def getpkgtopdir(basedir=None):
@@ -609,13 +610,13 @@
     return sources
     
 def download_binaries(target, pkgdirurl=None, export=False, revision=None,
-        symlinks=True, check=False):
+        binrev=None, symlinks=True, check=False):
     refurl = pkgdirurl
     if refurl is None:
         refurl = binrepo.svn_root(target)
     if binrepo.enabled(refurl):
         binrepo.download(target, pkgdirurl, export=export,
-                revision=revision, symlinks=symlinks, check=check)
+                revision=revision, binrev=binrev symlinks=symlinks, check=check)
 
 def update(target=None):
     svn = SVN()
-------------- next part --------------
An HTML attachment was scrubbed...
URL: </pipermail/mageia-sysadm/attachments/20110128/0abd8443/attachment-0001.html>


More information about the Mageia-sysadm mailing list