aboutsummaryrefslogtreecommitdiffstats
path: root/RepSys/commands
diff options
context:
space:
mode:
authorNicolas Vigier <boklm@mageia.org>2011-01-11 00:35:59 +0000
committerNicolas Vigier <boklm@mageia.org>2011-01-11 00:35:59 +0000
commitad7fb7807ceaee96521d779993a5e1b28650723f (patch)
tree2ece42aa7e83b7fdb51702b298aa3eec95da3573 /RepSys/commands
parent715e125cc8d0b3fc4a79752e28a8b76a4ce97d5a (diff)
downloadmgarepo-ad7fb7807ceaee96521d779993a5e1b28650723f.tar
mgarepo-ad7fb7807ceaee96521d779993a5e1b28650723f.tar.gz
mgarepo-ad7fb7807ceaee96521d779993a5e1b28650723f.tar.bz2
mgarepo-ad7fb7807ceaee96521d779993a5e1b28650723f.tar.xz
mgarepo-ad7fb7807ceaee96521d779993a5e1b28650723f.zip
rename repsys to mgarepo, RepSys to MgaRepo, and update docs and examples for Mageia
Diffstat (limited to 'RepSys/commands')
-rw-r--r--RepSys/commands/__init__.py0
-rw-r--r--RepSys/commands/authoremail.py37
-rw-r--r--RepSys/commands/changed.py41
-rw-r--r--RepSys/commands/ci.py35
-rw-r--r--RepSys/commands/co.py67
-rw-r--r--RepSys/commands/create.py34
-rw-r--r--RepSys/commands/del.py30
-rw-r--r--RepSys/commands/editlog.py39
-rw-r--r--RepSys/commands/getspec.py38
-rw-r--r--RepSys/commands/getsrpm.py100
-rw-r--r--RepSys/commands/log.py62
-rw-r--r--RepSys/commands/markrelease.py103
-rw-r--r--RepSys/commands/patchspec.py38
-rw-r--r--RepSys/commands/putsrpm.py59
-rw-r--r--RepSys/commands/rpmlog.py68
-rw-r--r--RepSys/commands/submit.py211
-rw-r--r--RepSys/commands/switch.py33
-rw-r--r--RepSys/commands/sync.py38
-rw-r--r--RepSys/commands/up.py22
-rw-r--r--RepSys/commands/upload.py28
20 files changed, 0 insertions, 1083 deletions
diff --git a/RepSys/commands/__init__.py b/RepSys/commands/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/RepSys/commands/__init__.py
+++ /dev/null
diff --git a/RepSys/commands/authoremail.py b/RepSys/commands/authoremail.py
deleted file mode 100644
index f5b8b70..0000000
--- a/RepSys/commands/authoremail.py
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/usr/bin/python
-from RepSys import Error, config
-from RepSys.command import *
-import sys
-import getopt
-
-HELP = """\
-Usage: repsys authoremail [OPTIONS] AUTHOR
-
-Shows the e-mail of an SVN author. It is just a simple interface to access
-the [authors] section of repsys.conf.
-
-Options:
- -h Show this message
-
-Examples:
- repsys authoremail john
-"""
-
-def parse_options():
- parser = OptionParser(help=HELP)
- opts, args = parser.parse_args()
- if len(args) != 1:
- raise Error, "invalid arguments"
- opts.author = args[0]
- return opts
-
-def print_author_email(author):
- email = config.get("users", author)
- if not email:
- raise Error, "author not found"
- print email
-
-def main():
- do_command(parse_options, print_author_email)
-
-# vim:et:ts=4:sw=4
diff --git a/RepSys/commands/changed.py b/RepSys/commands/changed.py
deleted file mode 100644
index 66c1a53..0000000
--- a/RepSys/commands/changed.py
+++ /dev/null
@@ -1,41 +0,0 @@
-#!/usr/bin/python
-from RepSys import Error, disable_mirror
-from RepSys.command import *
-from RepSys.layout import package_url
-from RepSys.rpmutil import check_changed
-import getopt
-import sys
-
-HELP = """\
-Usage: repsys changed [OPTIONS] URL
-
-Shows if there are pending changes since the last package release.
-
-Options:
- -a Check all packages in given URL
- -s Show differences
- -M Do not use the mirror (use the main repository)
- -h Show this message
-
-Examples:
- repsys changed http://repos/svn/cnc/snapshot/foo
- repsys changed -a http://repos/svn/cnc/snapshot
-"""
-
-def parse_options():
- parser = OptionParser(help=HELP)
- parser.add_option("-a", dest="all", action="store_true")
- parser.add_option("-s", dest="show", action="store_true")
- parser.add_option("-M", "--no-mirror", action="callback",
- callback=disable_mirror)
- opts, args = parser.parse_args()
- if len(args) != 1:
- raise Error, "invalid arguments"
- opts.pkgdirurl = package_url(args[0])
- opts.verbose = 1 # Unconfigurable
- return opts
-
-def main():
- do_command(parse_options, check_changed)
-
-# vim:et:ts=4:sw=4
diff --git a/RepSys/commands/ci.py b/RepSys/commands/ci.py
deleted file mode 100644
index 8d373b5..0000000
--- a/RepSys/commands/ci.py
+++ /dev/null
@@ -1,35 +0,0 @@
-#!/usr/bin/python
-from RepSys.command import *
-from RepSys.rpmutil import commit
-
-HELP = """\
-Usage: repsys ci [TARGET]
-
-Will commit recent modifications in the package.
-
-The difference between an ordinary "svn ci" and "repsys ci" is that it
-relocates the working copy to the default repository in case the option
-"mirror" is set in repsys.conf.
-
-Options:
- -h Show this message
- -m MSG Use the MSG as the log message
- -F FILE Read log message from FILE
-
-Examples:
- repsys ci
- repsys ci SPECS/package.spec SPECS/package-patch.patch
-"""
-
-def parse_options():
- parser = OptionParser(help=HELP)
- parser.add_option("-m", dest="message", default=None)
- parser.add_option("-F", dest="logfile", type="string",
- default=None)
- opts, args = parser.parse_args()
- if len(args):
- opts.target = args[0]
- return opts
-
-def main():
- do_command(parse_options, commit)
diff --git a/RepSys/commands/co.py b/RepSys/commands/co.py
deleted file mode 100644
index 81e4140..0000000
--- a/RepSys/commands/co.py
+++ /dev/null
@@ -1,67 +0,0 @@
-#!/usr/bin/python
-from RepSys import Error, disable_mirror
-from RepSys.command import *
-from RepSys.rpmutil import checkout
-import getopt
-import sys
-
-HELP = """\
-Usage: repsys co [OPTIONS] URL [LOCALPATH]
-
-Checkout the package source from the Mandriva repository.
-
-If the 'mirror' option is enabled, the package is obtained from the mirror
-repository.
-
-You can specify the distro branch to checkout from by using distro/pkgname.
-
-Options:
- -d The distribution branch to checkout from
- -b The package branch
- -r REV 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
- -M Do not use the mirror (use the main repository)
- --check Check integrity of files fetched from the binary repository
- -h Show this message
-
-Examples:
- repsys co pkgname
- repsys co -d 2009.0 pkgname
- repsys co 2009.0/pkgame
- repsys co http://repos/svn/cnc/snapshot/foo
- repsys co http://repos/svn/cnc/snapshot/foo foo-pkg
-"""
-
-def parse_options():
- parser = OptionParser(help=HELP)
- parser.add_option("-r", dest="revision")
- parser.add_option("-S", dest="use_binrepo", default=True,
- action="store_false")
- parser.add_option("--check", dest="binrepo_check", default=False,
- action="store_true")
- parser.add_option("-L", dest="binrepo_link", default=True,
- action="store_false")
- parser.add_option("--distribution", "-d", dest="distro", default=None)
- parser.add_option("--branch", "-b", dest="branch", default=None)
- parser.add_option("-s", "--spec", dest="spec", default=False,
- action="store_true")
- parser.add_option("-M", "--no-mirror", action="callback",
- callback=disable_mirror)
- opts, args = parser.parse_args()
- if len(args) not in (1, 2):
- raise Error, "invalid arguments"
- # here we don't use package_url in order to notify the user we are
- # using the mirror
- opts.pkgdirurl = args[0]
- if len(args) == 2:
- opts.path = args[1]
- else:
- opts.path = None
- return opts
-
-def main():
- do_command(parse_options, checkout)
-
-# vim:et:ts=4:sw=4
diff --git a/RepSys/commands/create.py b/RepSys/commands/create.py
deleted file mode 100644
index ded8abe..0000000
--- a/RepSys/commands/create.py
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/usr/bin/python
-from RepSys import Error
-from RepSys.command import *
-from RepSys.layout import package_url
-from RepSys.rpmutil import create_package
-import getopt
-import sys
-
-HELP = """\
-Usage: repsys create [OPTIONS] URL
-
-Creates the minimal structure of a package in the repository.
-
-Options:
- -h Show this message
-
-Examples:
- repsys create newpkg
- repsys create svn+ssh://svn.mandriva.com/svn/packages/cooker/newpkg
-"""
-
-def parse_options():
- parser = OptionParser(help=HELP)
- opts, args = parser.parse_args()
- if len(args) != 1:
- raise Error, "invalid arguments"
- opts.pkgdirurl = package_url(args[0], mirrored=False)
- opts.verbose = 1 # Unconfigurable
- return opts
-
-def main():
- do_command(parse_options, create_package)
-
-# vim:et:ts=4:sw=4
diff --git a/RepSys/commands/del.py b/RepSys/commands/del.py
deleted file mode 100644
index 2c6902e..0000000
--- a/RepSys/commands/del.py
+++ /dev/null
@@ -1,30 +0,0 @@
-from RepSys import Error
-from RepSys.command import *
-from RepSys.rpmutil import binrepo_delete
-
-HELP = """\
-Usage: repsys del [OPTIONS] [PATH]
-
-Remove a given file from the binary sources repository.
-
-Changes in the sources file will be left uncommited.
-
-Options:
- -c automatically commit the 'sources' file
- -h help
-
-"""
-
-def parse_options():
- parser = OptionParser(help=HELP)
- parser.add_option("-c", dest="commit", default=False,
- action="store_true")
- opts, args = parser.parse_args()
- if len(args):
- opts.paths = args
- else:
- raise Error, "you need to provide a path"
- return opts
-
-def main():
- do_command(parse_options, binrepo_delete)
diff --git a/RepSys/commands/editlog.py b/RepSys/commands/editlog.py
deleted file mode 100644
index 9d1afc5..0000000
--- a/RepSys/commands/editlog.py
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/usr/bin/python
-from RepSys import Error
-from RepSys.command import *
-from RepSys.layout import package_url
-from RepSys.svn import SVN
-import re
-
-HELP = """\
-Usage: repsys editlog [OPTIONS] [URL] REVISION
-
-Options:
- -h Show this message
-
-Examples:
- repsys editlog 14800
- repsys editlog https://repos/svn/cnc/snapshot 14800
-"""
-
-def parse_options():
- parser = OptionParser(help=HELP)
- opts, args = parser.parse_args()
- if len(args) == 2:
- pkgdirurl, revision = args
- elif len(args) == 1:
- pkgdirurl, revision = "", args[0]
- else:
- raise Error, "invalid arguments"
- opts.pkgdirurl = package_url(pkgdirurl, mirrored=False)
- opts.revision = re.compile(r".*?(\d+).*").sub(r"\1", revision)
- return opts
-
-def editlog(pkgdirurl, revision):
- svn = SVN()
- svn.propedit("svn:log", pkgdirurl, rev=revision)
-
-def main():
- do_command(parse_options, editlog)
-
-# vim:et:ts=4:sw=4
diff --git a/RepSys/commands/getspec.py b/RepSys/commands/getspec.py
deleted file mode 100644
index a357ef9..0000000
--- a/RepSys/commands/getspec.py
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/usr/bin/python
-from RepSys import Error, disable_mirror
-from RepSys.command import *
-from RepSys.layout import package_url
-from RepSys.rpmutil import get_spec
-import getopt
-import sys
-
-HELP = """\
-Usage: repsys getspec [OPTIONS] REPPKGURL
-
-Prints the .spec file of a given package.
-
-Options:
- -t DIR Use DIR as target for spec file (default is ".")
- -M Do not use the mirror (use the main repository)
- -h Show this message
-
-Examples:
- repsys getspec pkgname
- repsys getspec svn+ssh://svn.mandriva.com/svn/packages/cooker/pkgname
-"""
-
-def parse_options():
- parser = OptionParser(help=HELP)
- parser.add_option("-t", dest="targetdir", default=".")
- parser.add_option("-M", "--no-mirror", action="callback",
- callback=disable_mirror)
- opts, args = parser.parse_args()
- if len(args) != 1:
- raise Error, "invalid arguments"
- opts.pkgdirurl = package_url(args[0])
- return opts
-
-def main():
- do_command(parse_options, get_spec)
-
-# vim:et:ts=4:sw=4
diff --git a/RepSys/commands/getsrpm.py b/RepSys/commands/getsrpm.py
deleted file mode 100644
index 1767bb7..0000000
--- a/RepSys/commands/getsrpm.py
+++ /dev/null
@@ -1,100 +0,0 @@
-#!/usr/bin/python
-#
-# This program will extract given version/revision of the named package
-# from the Conectiva Linux repository system.
-#
-from RepSys import Error, config, disable_mirror
-from RepSys.command import *
-from RepSys.layout import package_url
-from RepSys.rpmutil import get_srpm
-import tempfile
-import shutil
-import getopt
-import glob
-import sys
-import os
-
-HELP = """\
-Usage: repsys getsrpm [OPTIONS] REPPKGURL
-
-Generates the source RPM (.srpm) file of a given package.
-
-Options:
- -c Use files in current/ directory (default)
- -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)
- -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
- -n Rename the package to include the revision number
- -l Use subversion log to build rpm %changelog
- -T FILE Template to be used to generate the %changelog
- -M Do not use the mirror (use the main repository)
- -h Show this message
- -S Do not download sources from the binary repository
- --check Check integrity of files fetched from the binary repository
- --strict Check if the given revision contains changes in REPPKGURL
-
-Examples:
- repsys getsrpm python
- repsys getsrpm -l python
- repsys getsrpm http://foo.bar/svn/cnc/snapshot/python
- repsys getsrpm -p http://foo.bar/svn/cnc/releases/8cl/python
- repsys getsrpm -r 1001 file:///svn/cnc/snapshot/python
-"""
-
-def mode_callback(option, opt, val, parser, mode):
- opts = parser.values
- opts.mode = mode
- if mode == "version":
- try:
- opts.version, opts.release = val.split("-", 1)
- except ValueError:
- raise Error, "wrong version, use something like 2.2-1mdk"
- elif mode == "revision":
- opts.revision = val
-
-def parse_options():
- parser = OptionParser(help=HELP)
- parser.defaults["mode"] = "current"
- parser.defaults["version"] = None
- parser.defaults["release"] = None
- parser.defaults["revision"] = None
- parser.defaults["submit"] = False
- callback_options = dict(action="callback", callback=mode_callback,
- type="string", dest="__ignore")
- parser.add_option("-c", callback_kwargs={"mode": "current"}, nargs=0,
- **callback_options)
- parser.add_option("-p", callback_kwargs={"mode": "pristine"}, nargs=0,
- **callback_options)
- parser.add_option("-r", callback_kwargs={"mode": "revision"}, nargs=1,
- **callback_options)
- parser.add_option("-v", callback_kwargs={"mode": "version"}, nargs=1,
- **callback_options)
- parser.add_option("-t", dest="targetdirs", action="append", default=[])
- parser.add_option("-s", dest="scripts", action="append", default=[])
- parser.add_option("-P", dest="packager", default="")
- 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("-S", dest="use_binrepo", default=True,
- action="store_false")
- parser.add_option("--check", dest="binrepo_check", default=False,
- action="store_true")
- parser.add_option("-M", "--no-mirror", action="callback",
- callback=disable_mirror)
- parser.add_option("--strict", dest="strict", default=False,
- action="store_true")
- opts, args = parser.parse_args()
- del opts.__ignore
- if len(args) != 1:
- raise Error, "invalid arguments"
- opts.pkgdirurl = package_url(args[0])
- opts.verbose = 1
- return opts
-
-def main():
- do_command(parse_options, get_srpm)
-
-# vim:et:ts=4:sw=4
diff --git a/RepSys/commands/log.py b/RepSys/commands/log.py
deleted file mode 100644
index 28df27d..0000000
--- a/RepSys/commands/log.py
+++ /dev/null
@@ -1,62 +0,0 @@
-#!/usr/bin/python
-from RepSys import config, mirror, disable_mirror
-from RepSys.command import *
-from RepSys.layout import package_url, checkout_url
-from RepSys.rpmutil import sync
-from RepSys.util import execcmd
-import sys
-import os
-
-HELP = """\
-Usage: repsys log [OPTIONS] [PACKAGE]
-
-Shows the SVN log for a given package.
-
-Options:
- -h Show this message
- -v Show changed paths
- -l LIMIT Limit of log entries to show
- -r REV Show a specific revision
- -M Do not use the mirror (use the main repository)
-
-Examples:
- repsys log mutt
- repsys log 2009.1/mutt
-"""
-
-def parse_options():
- parser = OptionParser(help=HELP)
- parser.add_option("-v", dest="verbose", action="store_true",
- default=False)
- parser.add_option("-l", "--limit", dest="limit", type="int",
- default=None)
- parser.add_option("-r", dest="revision", type="string", default=None)
- parser.add_option("-M", "--no-mirror", action="callback",
- callback=disable_mirror)
- opts, args = parser.parse_args()
- if len(args):
- opts.pkgdirurl = package_url(args[0])
- else:
- parser.error("log requires a package name")
- return opts
-
-def svn_log(pkgdirurl, verbose=False, limit=None, revision=None):
- mirror.info(pkgdirurl)
- url = checkout_url(pkgdirurl)
- svncmd = config.get("global", "svn-command", "svn")
- args = [svncmd, "log", url]
- if verbose:
- args.append("-v")
- if limit:
- args.append("-l")
- args.append(limit)
- if revision:
- args.append("-r")
- args.append(revision)
- if os.isatty(sys.stdin.fileno()):
- args.append("| less")
- rawcmd = " ".join(args)
- execcmd(rawcmd, show=True)
-
-def main():
- do_command(parse_options, svn_log)
diff --git a/RepSys/commands/markrelease.py b/RepSys/commands/markrelease.py
deleted file mode 100644
index 057cf1d..0000000
--- a/RepSys/commands/markrelease.py
+++ /dev/null
@@ -1,103 +0,0 @@
-#!/usr/bin/python
-#
-# This program will append a release to the Conectiva Linux package
-# repository system. It's meant to be a startup system to include
-# pre-packaged SRPMS in the repository, thus, you should not commit
-# packages over an ongoing package structure (with changes in current/
-# directory and etc). Also, notice that packages must be included in
-# cronological order.
-#
-from RepSys import Error
-from RepSys.command import *
-from RepSys.layout import package_url
-from RepSys.simplerpm import SRPM
-from RepSys.rpmutil import mark_release
-from RepSys.util import get_auth
-import getopt
-import sys
-import os
-
-HELP = """\
-*** WARNING --- You probably SHOULD NOT use this program! --- WARNING ***
-
-Usage: repsys markrelease [OPTIONS] REPPKGURL
-
-This subcommand creates a 'tag' for a given revision of a given package.
-
-The tag will be stored in the directory releases/ inside the package
-structure.
-
-Options:
- -f FILE Try to extract information from given file
- -r REV 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
-
-Examples:
- repsys markrelease -r 68 -v 1.0-1 file://svn/cnc/snapshot/foo
- repsys markrelease -f @68:foo-1.0-1.src.rpm file://svn/cnc/snapshot/foo
- repsys markrelease -r 68 -f foo-1.0.src.rpm file://svn/cnc/snapshot/foo
-"""
-
-def version_callback(option, opt, val, parser):
- opts = parser.values
- try:
- opts.version, opts.release = val.split("-", 1)
- except ValueError:
- raise Error, "wrong version, use something like 1:2.2-1mdk"
-
-def parse_options():
- parser = OptionParser(help=HELP)
- parser.defaults["version"] = None
- parser.defaults["release"] = 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("-f", dest="filename")
- parser.add_option("-n", dest="appendname", action="store_true")
- opts, args = parser.parse_args()
-
- if len(args) != 1:
- raise Error, "invalid arguments"
-
- opts.pkgdirurl = package_url(args[0], mirrored=False)
-
- filename = opts.filename
- appendname = opts.appendname
- del opts.filename, opts.appendname, opts.__ignore
-
- if filename:
- if not os.path.isfile(filename):
- raise Error, "file not found: "+filename
- if not opts.revision:
- basename = os.path.basename(filename)
- end = basename.find(":")
- if basename[0] != "@" or end == -1:
- raise Error, "couldn't guess revision from filename"
- opts.revision = basename[1:end]
- srpm = None
- if not opts.version:
- srpm = SRPM(filename)
- if srpm.epoch:
- opts.version = "%s:%s" % (srpm.epoch, srpm.version)
- else:
- opts.version = srpm.version
- opts.release = srpm.release
- if appendname:
- if not srpm:
- srpm = SRPM(filename)
- opts.pkgdirurl = "/".join([opts.pkgdirurl, srpm.name])
- elif appendname:
- raise Error, "option -n requires option -f"
- elif not opts.revision:
- raise Error, "no revision provided"
- elif not opts.version:
- raise Error, "no version provided"
- #get_auth()
- return opts
-
-def main():
- do_command(parse_options, mark_release)
-
-# vim:et:ts=4:sw=4
diff --git a/RepSys/commands/patchspec.py b/RepSys/commands/patchspec.py
deleted file mode 100644
index 9a4881b..0000000
--- a/RepSys/commands/patchspec.py
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/usr/bin/python
-#
-# This program will try to patch a spec file from a given package url.
-#
-from RepSys import Error
-from RepSys.rpmutil import patch_spec
-from RepSys.command import *
-from RepSys.layout import package_url
-import getopt
-import sys
-
-HELP = """\
-Usage: repsys patchspec [OPTIONS] REPPKGURL PATCHFILE
-
-It will try to patch a spec file from a given package url.
-
-Options:
- -l LOG Use LOG as log message
- -h Show this message
-
-Examples:
- repsys patchspec http://repos/svn/cnc/snapshot/foo
-"""
-
-def parse_options():
- parser = OptionParser(help=HELP)
- parser.add_option("-l", dest="log", default="")
- opts, args = parser.parse_args()
- if len(args) != 2:
- raise Error, "invalid arguments"
- opts.pkgdirurl = package_url(args[0], mirrored=False)
- opts.patchfile = args[1]
- return opts
-
-def main():
- do_command(parse_options, patch_spec)
-
-# vim:et:ts=4:sw=4
diff --git a/RepSys/commands/putsrpm.py b/RepSys/commands/putsrpm.py
deleted file mode 100644
index efe1a15..0000000
--- a/RepSys/commands/putsrpm.py
+++ /dev/null
@@ -1,59 +0,0 @@
-#!/usr/bin/python
-from RepSys import Error
-from RepSys.command import *
-from RepSys.layout import package_url
-from RepSys.rpmutil import put_srpm
-import getopt
-import sys, os
-
-HELP = """\
-Usage: repsys putsrpm [OPTIONS] SOURCERPMS
-
-Will import source RPMs into the SVN repository.
-
-If the package was already imported, it will add the new files and remove
-those not present in the source RPM.
-
-Options:
- -m LOG Log message used when commiting changes
- -t Create version-release tag on releases/
- -b NAME The distribution branch to place it
- -d URL The URL of base directory where packages will be placed
- -c URL The URL of the base directory where the changelog will be
- placed
- -s Don't strip the changelog from the spec
- (nor import it into misc/)
- -n Don't try to rename the spec file
- -h Show this message
-
-Examples:
- repsys putsrpm pkg/SRPMS/pkg-2.0-1.src.rpm
- repsys putsrpm -b 2009.1 foo-1.1-1.src.rpm
-"""
-
-def parse_options():
- parser = OptionParser(help=HELP)
- parser.add_option("-l", dest="logmsg", default="")
- parser.add_option("-t", dest="markrelease", action="store_true",
- default=False)
- parser.add_option("-s", dest="striplog", action="store_false",
- default=True)
- parser.add_option("-b", dest="branch", type="string", default=None)
- parser.add_option("-d", dest="baseurl", type="string", default=None)
- parser.add_option("-c", dest="baseold", type="string", default=None)
- parser.add_option("-n", dest="rename", action="store_false",
- default=True)
- opts, args = parser.parse_args()
- opts.srpmfiles = args
- return opts
-
-def put_srpm_cmd(srpmfiles, markrelease=False, striplog=True, branch=None,
- baseurl=None, baseold=None, logmsg=None, rename=False):
- for path in srpmfiles:
- put_srpm(path, markrelease, striplog, branch, baseurl, baseold,
- logmsg, rename)
-
-def main():
- do_command(parse_options, put_srpm_cmd)
-
-# vim:et:ts=4:sw=4
diff --git a/RepSys/commands/rpmlog.py b/RepSys/commands/rpmlog.py
deleted file mode 100644
index 238b675..0000000
--- a/RepSys/commands/rpmlog.py
+++ /dev/null
@@ -1,68 +0,0 @@
-#!/usr/bin/python
-#
-# This program will convert the output of "svn log" to be suitable
-# for usage in an rpm %changelog session.
-#
-from RepSys import Error, layout, disable_mirror
-from RepSys.command import *
-from RepSys.svn import SVN
-from RepSys.log import get_changelog, split_spec_changelog
-from cStringIO import StringIO
-import getopt
-import os
-import sys
-
-HELP = """\
-Usage: repsys rpmlog [OPTIONS] REPPKGDIRURL
-
-Prints the RPM changelog of a given package.
-
-Options:
- -r REV Collect logs from given revision to revision 0
- -n NUM Output only last NUM entries
- -T FILE %changelog template file to be used
- -o Append old package changelog
- -p Append changelog found in .spec file
- -s Sort changelog entries, even from the old log
- -M Do not use the mirror (use the main repository)
- -h Show this message
-
-Examples:
- repsys rpmlog python
- repsys rpmlog http://svn.mandriva.com/svn/packages/cooker/python
-"""
-
-def parse_options():
- parser = OptionParser(help=HELP)
- parser.add_option("-r", dest="revision")
- parser.add_option("-n", dest="size", type="int")
- parser.add_option("-T", "--template", dest="template", type="string")
- parser.add_option("-o", dest="oldlog", default=False,
- action="store_true")
- parser.add_option("-p", dest="usespec", default=False,
- action="store_true")
- parser.add_option("-s", dest="sort", default=False,
- action="store_true")
- parser.add_option("-M", "--no-mirror", action="callback",
- callback=disable_mirror)
- opts, args = parser.parse_args()
- if len(args) != 1:
- raise Error, "invalid arguments"
- opts.pkgdirurl = layout.package_url(args[0])
- return opts
-
-def rpmlog(pkgdirurl, revision, size, template, oldlog, usespec, sort):
- another = None
- if usespec:
- svn = SVN()
- specurl = layout.package_spec_url(pkgdirurl)
- rawspec = svn.cat(specurl, rev=revision)
- spec, another = split_spec_changelog(StringIO(rawspec))
- newlog = get_changelog(pkgdirurl, another=another, rev=revision,
- size=size, sort=sort, template=template, oldlog=oldlog)
- sys.stdout.writelines(newlog)
-
-def main():
- do_command(parse_options, rpmlog)
-
-# vim:sw=4:ts=4:et
diff --git a/RepSys/commands/submit.py b/RepSys/commands/submit.py
deleted file mode 100644
index 2924329..0000000
--- a/RepSys/commands/submit.py
+++ /dev/null
@@ -1,211 +0,0 @@
-#!/usr/bin/python
-from RepSys import Error, config, layout, mirror
-from RepSys.svn import SVN
-from RepSys.command import *
-from RepSys.rpmutil import get_spec, get_submit_info
-from RepSys.util import get_auth, execcmd, get_helper
-import urllib
-import getopt
-import sys
-import re
-import subprocess
-import uuid
-
-import xmlrpclib
-
-HELP = """\
-Usage: repsys submit [OPTIONS] [URL[@REVISION] ...]
-
-Submits the package from URL to the submit host.
-
-The submit host will try to build the package, and upon successful
-completion will 'tag' the package and upload it to the official
-repositories.
-
-The package name can refer to an alias to a group of packages defined in
-the section submit-groups of the configuration file.
-
-The status of the submit can visualized at:
-
-http://kenobi.mandriva.com/bs/output.php
-
-If no URL and revision are specified, the latest changed revision in the
-package working copy of the current directory will be used.
-
-Options:
- -t TARGET Submit given package URL to given target
- -l Just list available targets
- -r REV Provides a revision number (when not providing as an
- argument)
- -s The host in which the package URL will be submitted
- (defaults to the host in the URL)
- -a Submit all URLs at once (depends on server-side support)
- -i SID Use the submit identifier SID
- -h Show this message
- --distro The distribution branch where the packages come from
- --define Defines one variable to be used by the submit scripts
- in the submit host
-
-Examples:
- repsys submit
- repsys submit foo
- repsys submit 2009.1/foo
- repsys submit foo@14800 bar baz@11001
- repsys submit https://repos/svn/mdv/cooker/foo
- repsys submit -l https://repos
- repsys submit 2008.1/my-packages@11011
- repsys submit --define section=main/testing -t 2008.1
-"""
-
-DEFAULT_TARGET = "Cooker"
-
-def parse_options():
- parser = OptionParser(help=HELP)
- parser.defaults["revision"] = None
- parser.add_option("-t", dest="target", default=None)
- parser.add_option("-l", action="callback", callback=list_targets)
- parser.add_option("-r", dest="revision", type="string", nargs=1)
- parser.add_option("-s", dest="submithost", type="string", nargs=1,
- default=None)
- parser.add_option("-i", dest="sid", type="string", nargs=1,
- default=None)
- parser.add_option("-a", dest="atonce", action="store_true", default=False)
- parser.add_option("--distro", dest="distro", type="string",
- default=None)
- parser.add_option("--define", action="append", default=[])
- opts, args = parser.parse_args()
- if not args:
- name, url, rev = get_submit_info(".")
- args = ["%s@%s" % (url, str(rev))]
- print "Submitting %s at revision %s" % (name, rev)
- print "URL: %s" % url
- if opts.revision is not None:
- # backwards compatibility with the old -r usage
- if len(args) == 1:
- args[0] = args[0] + "@" + opts.revision
- else:
- raise Error, "can't use -r REV with more than one package name"
- del opts.revision
- if len(args) == 2:
- # prevent from using the old <name> <rev> syntax
- try:
- rev = int(args[1])
- except ValueError:
- # ok, it is a package name, let it pass
- pass
- else:
- raise Error, "the format <name> <revision> is deprecated, "\
- "use <name>@<revision> instead"
- # expand group aliases
- expanded = []
- for nameurl in args:
- expanded.extend(expand_group(nameurl))
- if expanded != args:
- print "Submitting: %s" % " ".join(expanded)
- args = expanded
- # generate URLs for package names:
- opts.urls = [mirror.strip_username(
- layout.package_url(nameurl, distro=opts.distro, mirrored=False))
- for nameurl in args]
- # find the revision if not specified:
- newurls = []
- for url in opts.urls:
- if not "@" in url:
- print "Fetching revision..."
- courl = layout.checkout_url(url)
- log = SVN().log(courl, limit=1)
- if not log:
- raise Error, "can't find a revision for %s" % courl
- ci = log[0]
- print "URL:", url
- print "Commit:",
- print "%d | %s" % (ci.revision, ci.author),
- if ci.lines:
- line = " ".join(ci.lines).strip()
- if len(line) > 57:
- line = line[:57] + "..."
- print "| %s" % line,
- print
- url = url + "@" + str(ci.revision)
- newurls.append(url)
- opts.urls[:] = newurls
- # choose a target if not specified:
- if opts.target is None and opts.distro is None:
- target = layout.distro_branch(opts.urls[0]) or DEFAULT_TARGET
- print "Implicit target: %s" % target
- opts.target = target
- del opts.distro
- return opts
-
-def expand_group(group):
- name, rev = layout.split_url_revision(group)
- distro = None
- if "/" in name:
- distro, name = name.rsplit("/", 1)
- found = config.get("submit-groups", name)
- packages = [group]
- if found:
- packages = found.split()
- if rev:
- packages = [("%s@%s" % (package, rev))
- for package in packages]
- if distro:
- packages = ["%s/%s" % (distro, package)
- for package in packages]
- return packages
-
-def list_targets(option, opt, val, parser):
- host = config.get("submit", "host")
- if host is None:
- raise Error, "no submit host defined in repsys.conf"
- createsrpm = get_helper("create-srpm")
- #TODO make it configurable
- command = "ssh %s %s --list" % (host, createsrpm)
- execcmd(command, show=True)
- sys.exit(0)
-
-def submit(urls, target, define=[], submithost=None, atonce=False, sid=None):
- if submithost is None:
- submithost = config.get("submit", "host")
- if submithost is None:
- # extract the submit host from the svn host
- type, rest = urllib.splittype(pkgdirurl)
- host, path = urllib.splithost(rest)
- user, host = urllib.splituser(host)
- submithost, port = urllib.splitport(host)
- del type, user, port, path, rest
- # runs a create-srpm in the server through ssh, which will make a
- # copy of the rpm in the export directory
- createsrpm = get_helper("create-srpm")
- baseargs = ["ssh", submithost, createsrpm, "-t", target]
- if not sid:
- sid = uuid.uuid4()
- define.append("sid=%s" % sid)
- for entry in reversed(define):
- baseargs.append("--define")
- baseargs.append(entry)
- cmdsargs = []
- if len(urls) == 1:
- # be compatible with server-side repsys versions older than 1.6.90
- url, rev = layout.split_url_revision(urls[0])
- baseargs.append("-r")
- baseargs.append(str(rev))
- baseargs.append(url)
- cmdsargs.append(baseargs)
- elif atonce:
- cmdsargs.append(baseargs + urls)
- else:
- cmdsargs.extend((baseargs + [url]) for url in urls)
- for cmdargs in cmdsargs:
- command = subprocess.list2cmdline(cmdargs)
- status, output = execcmd(command)
- if status == 0:
- print "Package submitted!"
- else:
- sys.stderr.write(output)
- sys.exit(status)
-
-def main():
- do_command(parse_options, submit)
-
-# vim:et:ts=4:sw=4
diff --git a/RepSys/commands/switch.py b/RepSys/commands/switch.py
deleted file mode 100644
index 998ae2c..0000000
--- a/RepSys/commands/switch.py
+++ /dev/null
@@ -1,33 +0,0 @@
-#!/usr/bin/python
-from RepSys.command import *
-from RepSys.rpmutil import switch
-
-HELP = """\
-Usage: repsys switch [URL]
-
-Relocates the working copy to the base location URL.
-
-If URL is not provided, it will use the option repository from repsys.conf
-as default, or, if the current working copy is already based in
-default_parent, it will use the location from the mirror option from
-repsys.conf.
-
-If the current work is based in another URL, it will use default_parent.
-
-Options:
- -h Show this message
-
-Examples:
- repsys switch
- repsys switch https://mirrors.localnetwork/svn/packages/
-"""
-
-def parse_options():
- parser = OptionParser(help=HELP)
- opts, args = parser.parse_args()
- if len(args):
- opts.mirrorurl = args[0]
- return opts
-
-def main():
- do_command(parse_options, switch)
diff --git a/RepSys/commands/sync.py b/RepSys/commands/sync.py
deleted file mode 100644
index b4bdaba..0000000
--- a/RepSys/commands/sync.py
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/usr/bin/python
-from RepSys.command import *
-from RepSys.rpmutil import sync
-
-HELP = """\
-Usage: repsys sync
-
-Will add or remove from the working copy those files added or removed
-in the spec file.
-
-It will not commit the changes.
-
-Options:
- -c Commit the changes, as in ci
- --dry-run Print results without changing the working copy
- --download -d
- Try to download the source files not found
- -h Show this message
-
-Examples:
- repsys sync
-"""
-
-def parse_options():
- parser = OptionParser(help=HELP)
- parser.add_option("--dry-run", dest="dryrun", default=False,
- action="store_true")
- parser.add_option("-c", dest="ci", default=False,
- action="store_true")
- parser.add_option("-d", "--download", dest="download", default=False,
- action="store_true")
- opts, args = parser.parse_args()
- if len(args):
- opts.target = args[0]
- return opts
-
-def main():
- do_command(parse_options, sync)
diff --git a/RepSys/commands/up.py b/RepSys/commands/up.py
deleted file mode 100644
index 02a1a9f..0000000
--- a/RepSys/commands/up.py
+++ /dev/null
@@ -1,22 +0,0 @@
-from RepSys import Error
-from RepSys.command import *
-from RepSys.rpmutil import update
-
-HELP = """\
-Usage: repsys up [PATH]
-
-Update the package working copy and synchronize all binaries.
-
-Options:
- -h help
-"""
-
-def parse_options():
- parser = OptionParser(help=HELP)
- opts, args = parser.parse_args()
- if args:
- opts.target = args[0]
- return opts
-
-def main():
- do_command(parse_options, update)
diff --git a/RepSys/commands/upload.py b/RepSys/commands/upload.py
deleted file mode 100644
index 6af50ea..0000000
--- a/RepSys/commands/upload.py
+++ /dev/null
@@ -1,28 +0,0 @@
-from RepSys import Error
-from RepSys.command import *
-from RepSys.rpmutil import upload
-
-HELP = """\
-Usage: repsys upload [OPTIONS] [PATH]
-
-Upload a given file to the binary sources repository.
-
-It will also update the contents of the 'binrepo.lst' file and leave it
-uncommited.
-
-If the path is a directory, all the contents of the directory will be
-uploaded or removed.
-
-Options:
- -h help
-
-"""
-
-def parse_options():
- parser = OptionParser(help=HELP)
- opts, args = parser.parse_args()
- opts.paths = args
- return opts
-
-def main():
- do_command(parse_options, upload)