示例#1
0
文件: submit.py 项目: boklm/mgarepo
def submit_packages(packager):
    form = cgi.FieldStorage()
    packageurl = form.getfirst("packageurl", "").strip()
    packagerev = form.getfirst("packagerev", "").strip()
    if not packageurl:
        show()
    elif not packagerev:
        raise CgiError, "No revision provided!"
    else:
        targetname = form.getfirst("target")
        if not targetname:
            raise CgiError, "No target selected!"
        for target in get_targets():
            if target.name == targetname:
                break
        else:
            raise CgiError, "Target not found!"
        try:
            tmp = int(packagerev)
        except ValueError:
            raise CgiError, "Invalid revision provided!"
        for allowed in target.allowed:
            if packageurl.startswith(allowed):
                break
        else:
            raise CgiError, "%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)
        show("Package submitted!")
示例#2
0
 def submit_package(self, packageurl, packagerev, targetname):
     username = os.environ.get("REMOTE_USER")
     packager = config.get("users", username)
     if not packager:
         raise CgiError, "your email was not found"
     elif not packagerev:
         raise CgiError, "no revision provided"
     elif not targetname:
         raise CgiError, "no target provided"
     else:
         targetname = targetname.lower()
         for target in get_targets():
             if target.name.lower() == targetname:
                 break
         else:
             raise CgiError, "target not found"
         try:
             tmp = int(packagerev)
         except ValueError:
             raise CgiError, "invalid revision provided"
         for allowed in target.allowed:
             if packageurl.startswith(allowed):
                 break
         else:
             raise CgiError, "%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
示例#3
0
文件: submit.py 项目: boklm/mgarepo
def get_targetoptions():
    s = ""
    selected = " selected"
    for target in get_targets():
        s += '<option value="%s"%s>%s</option>' \
             % (target.name, selected, target.name)
        selected = ""
    return s
示例#4
0
 def submit_targets(self):
     return [x.name for x in get_targets()]