aboutsummaryrefslogtreecommitdiffstats
path: root/MgaRepo/commands/putsrpm.py
blob: 68d87d08aa3b823f6a60db259c51a91e2b3db291 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#!/usr/bin/python
from MgaRepo import Error
from MgaRepo.command import *
from MgaRepo.layout import package_url
from MgaRepo.rpmutil import put_srpm
import getopt
import sys, os

HELP = """\
Usage: mgarepo 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:
    mgarepo putsrpm pkg/SRPMS/pkg-2.0-1.src.rpm
    mgarepo 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