mirror of
https://gitlab.archlinux.org/archlinux/aurweb.git
synced 2025-02-03 10:43:03 +01:00
Fix issues reported by pyflakes
Fix several style issues and remove unneeded imports/assignments. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
This commit is contained in:
parent
aaa138cd38
commit
f8b3cb97e5
4 changed files with 63 additions and 21 deletions
|
@ -39,7 +39,7 @@ ssh_opts = config.get('auth', 'ssh-options')
|
||||||
|
|
||||||
keytype = sys.argv[1]
|
keytype = sys.argv[1]
|
||||||
keytext = sys.argv[2]
|
keytext = sys.argv[2]
|
||||||
if not keytype in valid_keytypes:
|
if keytype not in valid_keytypes:
|
||||||
exit(1)
|
exit(1)
|
||||||
|
|
||||||
db = mysql.connector.connect(host=aur_db_host, user=aur_db_user,
|
db = mysql.connector.connect(host=aur_db_host, user=aur_db_user,
|
||||||
|
|
|
@ -25,6 +25,7 @@ ssh_cmdline = config.get('serve', 'ssh-cmdline')
|
||||||
enable_maintenance = config.getboolean('options', 'enable-maintenance')
|
enable_maintenance = config.getboolean('options', 'enable-maintenance')
|
||||||
maintenance_exc = config.get('options', 'maintenance-exceptions').split()
|
maintenance_exc = config.get('options', 'maintenance-exceptions').split()
|
||||||
|
|
||||||
|
|
||||||
def pkgbase_from_name(pkgbase):
|
def pkgbase_from_name(pkgbase):
|
||||||
db = mysql.connector.connect(host=aur_db_host, user=aur_db_user,
|
db = mysql.connector.connect(host=aur_db_host, user=aur_db_user,
|
||||||
passwd=aur_db_pass, db=aur_db_name,
|
passwd=aur_db_pass, db=aur_db_name,
|
||||||
|
@ -36,9 +37,11 @@ def pkgbase_from_name(pkgbase):
|
||||||
row = cur.fetchone()
|
row = cur.fetchone()
|
||||||
return row[0] if row else None
|
return row[0] if row else None
|
||||||
|
|
||||||
|
|
||||||
def pkgbase_exists(pkgbase):
|
def pkgbase_exists(pkgbase):
|
||||||
return pkgbase_from_name(pkgbase) is not None
|
return pkgbase_from_name(pkgbase) is not None
|
||||||
|
|
||||||
|
|
||||||
def list_repos(user):
|
def list_repos(user):
|
||||||
db = mysql.connector.connect(host=aur_db_host, user=aur_db_user,
|
db = mysql.connector.connect(host=aur_db_host, user=aur_db_user,
|
||||||
passwd=aur_db_pass, db=aur_db_name,
|
passwd=aur_db_pass, db=aur_db_name,
|
||||||
|
@ -56,6 +59,7 @@ def list_repos(user):
|
||||||
print((' ' if row[1] else '*') + row[0])
|
print((' ' if row[1] else '*') + row[0])
|
||||||
db.close()
|
db.close()
|
||||||
|
|
||||||
|
|
||||||
def create_pkgbase(pkgbase, user):
|
def create_pkgbase(pkgbase, user):
|
||||||
if not re.match(repo_regex, pkgbase):
|
if not re.match(repo_regex, pkgbase):
|
||||||
die('{:s}: invalid repository name: {:s}'.format(action, pkgbase))
|
die('{:s}: invalid repository name: {:s}'.format(action, pkgbase))
|
||||||
|
@ -83,6 +87,7 @@ def create_pkgbase(pkgbase, user):
|
||||||
db.commit()
|
db.commit()
|
||||||
db.close()
|
db.close()
|
||||||
|
|
||||||
|
|
||||||
def pkgbase_config_keywords(pkgbase, keywords):
|
def pkgbase_config_keywords(pkgbase, keywords):
|
||||||
pkgbase_id = pkgbase_from_name(pkgbase)
|
pkgbase_id = pkgbase_from_name(pkgbase)
|
||||||
if not pkgbase_id:
|
if not pkgbase_id:
|
||||||
|
@ -102,6 +107,7 @@ def pkgbase_config_keywords(pkgbase, keywords):
|
||||||
db.commit()
|
db.commit()
|
||||||
db.close()
|
db.close()
|
||||||
|
|
||||||
|
|
||||||
def check_permissions(pkgbase, user):
|
def check_permissions(pkgbase, user):
|
||||||
db = mysql.connector.connect(host=aur_db_host, user=aur_db_user,
|
db = mysql.connector.connect(host=aur_db_host, user=aur_db_user,
|
||||||
passwd=aur_db_pass, db=aur_db_name,
|
passwd=aur_db_pass, db=aur_db_name,
|
||||||
|
@ -120,13 +126,16 @@ def check_permissions(pkgbase, user):
|
||||||
"WHERE Name = %s AND Username = %s", [pkgbase, user])
|
"WHERE Name = %s AND Username = %s", [pkgbase, user])
|
||||||
return cur.fetchone()[0] > 0
|
return cur.fetchone()[0] > 0
|
||||||
|
|
||||||
|
|
||||||
def die(msg):
|
def die(msg):
|
||||||
sys.stderr.write("{:s}\n".format(msg))
|
sys.stderr.write("{:s}\n".format(msg))
|
||||||
exit(1)
|
exit(1)
|
||||||
|
|
||||||
|
|
||||||
def die_with_help(msg):
|
def die_with_help(msg):
|
||||||
die(msg + "\nTry `{:s} help` for a list of commands.".format(ssh_cmdline))
|
die(msg + "\nTry `{:s} help` for a list of commands.".format(ssh_cmdline))
|
||||||
|
|
||||||
|
|
||||||
user = os.environ.get("AUR_USER")
|
user = os.environ.get("AUR_USER")
|
||||||
cmd = os.environ.get("SSH_ORIGINAL_COMMAND")
|
cmd = os.environ.get("SSH_ORIGINAL_COMMAND")
|
||||||
if not cmd:
|
if not cmd:
|
||||||
|
@ -136,7 +145,7 @@ action = cmdargv[0]
|
||||||
|
|
||||||
if enable_maintenance:
|
if enable_maintenance:
|
||||||
remote_addr = os.environ["SSH_CLIENT"].split(" ")[0]
|
remote_addr = os.environ["SSH_CLIENT"].split(" ")[0]
|
||||||
if not remote_addr in maintenance_exc:
|
if remote_addr not in maintenance_exc:
|
||||||
die("The AUR is down due to maintenance. We will be back soon.")
|
die("The AUR is down due to maintenance. We will be back soon.")
|
||||||
|
|
||||||
if action == 'git-upload-pack' or action == 'git-receive-pack':
|
if action == 'git-upload-pack' or action == 'git-receive-pack':
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
#!/usr/bin/python3
|
#!/usr/bin/python3
|
||||||
|
|
||||||
from copy import copy, deepcopy
|
|
||||||
import configparser
|
import configparser
|
||||||
import mysql.connector
|
import mysql.connector
|
||||||
import os
|
import os
|
||||||
|
@ -22,6 +21,7 @@ aur_db_socket = config.get('database', 'socket')
|
||||||
repo_path = config.get('serve', 'repo-path')
|
repo_path = config.get('serve', 'repo-path')
|
||||||
repo_regex = config.get('serve', 'repo-regex')
|
repo_regex = config.get('serve', 'repo-regex')
|
||||||
|
|
||||||
|
|
||||||
def extract_arch_fields(pkginfo, field):
|
def extract_arch_fields(pkginfo, field):
|
||||||
values = []
|
values = []
|
||||||
|
|
||||||
|
@ -36,6 +36,7 @@ def extract_arch_fields(pkginfo, field):
|
||||||
|
|
||||||
return values
|
return values
|
||||||
|
|
||||||
|
|
||||||
def parse_dep(depstring):
|
def parse_dep(depstring):
|
||||||
dep, _, desc = depstring.partition(': ')
|
dep, _, desc = depstring.partition(': ')
|
||||||
depname = re.sub(r'(<|=|>).*', '', dep)
|
depname = re.sub(r'(<|=|>).*', '', dep)
|
||||||
|
@ -46,6 +47,7 @@ def parse_dep(depstring):
|
||||||
else:
|
else:
|
||||||
return (depname, depcond)
|
return (depname, depcond)
|
||||||
|
|
||||||
|
|
||||||
def save_srcinfo(srcinfo, db, cur, user):
|
def save_srcinfo(srcinfo, db, cur, user):
|
||||||
# Obtain package base ID and previous maintainer.
|
# Obtain package base ID and previous maintainer.
|
||||||
pkgbase = srcinfo._pkgbase['pkgname']
|
pkgbase = srcinfo._pkgbase['pkgname']
|
||||||
|
@ -72,13 +74,14 @@ def save_srcinfo(srcinfo, db, cur, user):
|
||||||
pkginfo = srcinfo.GetMergedPackage(pkgname)
|
pkginfo = srcinfo.GetMergedPackage(pkgname)
|
||||||
|
|
||||||
if 'epoch' in pkginfo and int(pkginfo['epoch']) > 0:
|
if 'epoch' in pkginfo and int(pkginfo['epoch']) > 0:
|
||||||
ver = '{:d}:{:s}-{:s}'.format(int(pkginfo['epoch']), pkginfo['pkgver'],
|
ver = '{:d}:{:s}-{:s}'.format(int(pkginfo['epoch']),
|
||||||
|
pkginfo['pkgver'],
|
||||||
pkginfo['pkgrel'])
|
pkginfo['pkgrel'])
|
||||||
else:
|
else:
|
||||||
ver = '{:s}-{:s}'.format(pkginfo['pkgver'], pkginfo['pkgrel'])
|
ver = '{:s}-{:s}'.format(pkginfo['pkgver'], pkginfo['pkgrel'])
|
||||||
|
|
||||||
for field in ('pkgdesc', 'url'):
|
for field in ('pkgdesc', 'url'):
|
||||||
if not field in pkginfo:
|
if field not in pkginfo:
|
||||||
pkginfo[field] = None
|
pkginfo[field] = None
|
||||||
|
|
||||||
# Create a new package.
|
# Create a new package.
|
||||||
|
@ -165,13 +168,16 @@ def save_srcinfo(srcinfo, db, cur, user):
|
||||||
|
|
||||||
db.commit()
|
db.commit()
|
||||||
|
|
||||||
|
|
||||||
def die(msg):
|
def die(msg):
|
||||||
sys.stderr.write("error: {:s}\n".format(msg))
|
sys.stderr.write("error: {:s}\n".format(msg))
|
||||||
exit(1)
|
exit(1)
|
||||||
|
|
||||||
|
|
||||||
def warn(msg):
|
def warn(msg):
|
||||||
sys.stderr.write("warning: {:s}\n".format(msg))
|
sys.stderr.write("warning: {:s}\n".format(msg))
|
||||||
|
|
||||||
|
|
||||||
def die_commit(msg, commit):
|
def die_commit(msg, commit):
|
||||||
sys.stderr.write("error: The following error " +
|
sys.stderr.write("error: The following error " +
|
||||||
"occurred when parsing commit\n")
|
"occurred when parsing commit\n")
|
||||||
|
@ -179,6 +185,7 @@ def die_commit(msg, commit):
|
||||||
sys.stderr.write("error: {:s}\n".format(msg))
|
sys.stderr.write("error: {:s}\n".format(msg))
|
||||||
exit(1)
|
exit(1)
|
||||||
|
|
||||||
|
|
||||||
repo = pygit2.Repository(repo_path)
|
repo = pygit2.Repository(repo_path)
|
||||||
|
|
||||||
user = os.environ.get("AUR_USER")
|
user = os.environ.get("AUR_USER")
|
||||||
|
@ -207,7 +214,7 @@ cur = db.cursor()
|
||||||
if sha1_old != "0000000000000000000000000000000000000000":
|
if sha1_old != "0000000000000000000000000000000000000000":
|
||||||
walker = repo.walk(sha1_old, pygit2.GIT_SORT_TOPOLOGICAL)
|
walker = repo.walk(sha1_old, pygit2.GIT_SORT_TOPOLOGICAL)
|
||||||
walker.hide(sha1_new)
|
walker.hide(sha1_new)
|
||||||
if next(walker, None) != None:
|
if next(walker, None) is not None:
|
||||||
cur.execute("SELECT AccountTypeID FROM Users WHERE UserName = %s ",
|
cur.execute("SELECT AccountTypeID FROM Users WHERE UserName = %s ",
|
||||||
[user])
|
[user])
|
||||||
if cur.fetchone()[0] == 1:
|
if cur.fetchone()[0] == 1:
|
||||||
|
@ -221,7 +228,7 @@ if sha1_old != "0000000000000000000000000000000000000000":
|
||||||
# Validate all new commits.
|
# Validate all new commits.
|
||||||
for commit in walker:
|
for commit in walker:
|
||||||
for fname in ('.SRCINFO', 'PKGBUILD'):
|
for fname in ('.SRCINFO', 'PKGBUILD'):
|
||||||
if not fname in commit.tree:
|
if fname not in commit.tree:
|
||||||
die_commit("missing {:s}".format(fname), str(commit.id))
|
die_commit("missing {:s}".format(fname), str(commit.id))
|
||||||
|
|
||||||
for treeobj in commit.tree:
|
for treeobj in commit.tree:
|
||||||
|
@ -232,7 +239,8 @@ for commit in walker:
|
||||||
str(commit.id))
|
str(commit.id))
|
||||||
|
|
||||||
if not isinstance(blob, pygit2.Blob):
|
if not isinstance(blob, pygit2.Blob):
|
||||||
die_commit("not a blob object: {:s}".format(treeobj), str(commit.id))
|
die_commit("not a blob object: {:s}".format(treeobj),
|
||||||
|
str(commit.id))
|
||||||
|
|
||||||
if blob.size > 250000:
|
if blob.size > 250000:
|
||||||
die_commit("maximum blob size (250kB) exceeded", str(commit.id))
|
die_commit("maximum blob size (250kB) exceeded", str(commit.id))
|
||||||
|
@ -252,17 +260,20 @@ for commit in walker:
|
||||||
|
|
||||||
srcinfo_pkgbase = srcinfo._pkgbase['pkgname']
|
srcinfo_pkgbase = srcinfo._pkgbase['pkgname']
|
||||||
if not re.match(repo_regex, srcinfo_pkgbase):
|
if not re.match(repo_regex, srcinfo_pkgbase):
|
||||||
die_commit('invalid pkgbase: {:s}'.format(srcinfo_pkgbase), str(commit.id))
|
die_commit('invalid pkgbase: {:s}'.format(srcinfo_pkgbase),
|
||||||
|
str(commit.id))
|
||||||
|
|
||||||
for pkgname in srcinfo.GetPackageNames():
|
for pkgname in srcinfo.GetPackageNames():
|
||||||
pkginfo = srcinfo.GetMergedPackage(pkgname)
|
pkginfo = srcinfo.GetMergedPackage(pkgname)
|
||||||
|
|
||||||
for field in ('pkgver', 'pkgrel', 'pkgname'):
|
for field in ('pkgver', 'pkgrel', 'pkgname'):
|
||||||
if not field in pkginfo:
|
if field not in pkginfo:
|
||||||
die_commit('missing mandatory field: {:s}'.format(field), str(commit.id))
|
die_commit('missing mandatory field: {:s}'.format(field),
|
||||||
|
str(commit.id))
|
||||||
|
|
||||||
if 'epoch' in pkginfo and not pkginfo['epoch'].isdigit():
|
if 'epoch' in pkginfo and not pkginfo['epoch'].isdigit():
|
||||||
die_commit('invalid epoch: {:s}'.format(pkginfo['epoch']), str(commit.id))
|
die_commit('invalid epoch: {:s}'.format(pkginfo['epoch']),
|
||||||
|
str(commit.id))
|
||||||
|
|
||||||
if not re.match(r'[a-z0-9][a-z0-9\.+_-]*$', pkginfo['pkgname']):
|
if not re.match(r'[a-z0-9][a-z0-9\.+_-]*$', pkginfo['pkgname']):
|
||||||
die_commit('invalid package name: {:s}'.format(pkginfo['pkgname']),
|
die_commit('invalid package name: {:s}'.format(pkginfo['pkgname']),
|
||||||
|
@ -282,8 +293,10 @@ for commit in walker:
|
||||||
fname = field['value']
|
fname = field['value']
|
||||||
if "://" in fname or "lp:" in fname:
|
if "://" in fname or "lp:" in fname:
|
||||||
continue
|
continue
|
||||||
if not fname in commit.tree:
|
if fname not in commit.tree:
|
||||||
die_commit('missing source file: {:s}'.format(fname), str(commit.id))
|
die_commit('missing source file: {:s}'.format(fname),
|
||||||
|
str(commit.id))
|
||||||
|
|
||||||
|
|
||||||
# Display a warning if .SRCINFO is unchanged.
|
# Display a warning if .SRCINFO is unchanged.
|
||||||
if sha1_old not in ("0000000000000000000000000000000000000000", sha1_new):
|
if sha1_old not in ("0000000000000000000000000000000000000000", sha1_new):
|
||||||
|
|
|
@ -4,7 +4,6 @@ import configparser
|
||||||
import email.mime.text
|
import email.mime.text
|
||||||
import mysql.connector
|
import mysql.connector
|
||||||
import os
|
import os
|
||||||
import smtplib
|
|
||||||
import subprocess
|
import subprocess
|
||||||
import sys
|
import sys
|
||||||
import textwrap
|
import textwrap
|
||||||
|
@ -29,12 +28,15 @@ reply_to = config.get('notifications', 'reply-to')
|
||||||
def headers_cc(cclist):
|
def headers_cc(cclist):
|
||||||
return {'Cc': str.join(', ', cclist)}
|
return {'Cc': str.join(', ', cclist)}
|
||||||
|
|
||||||
|
|
||||||
def headers_msgid(thread_id):
|
def headers_msgid(thread_id):
|
||||||
return {'Message-ID': thread_id}
|
return {'Message-ID': thread_id}
|
||||||
|
|
||||||
|
|
||||||
def headers_reply(thread_id):
|
def headers_reply(thread_id):
|
||||||
return {'In-Reply-To': thread_id, 'References': thread_id}
|
return {'In-Reply-To': thread_id, 'References': thread_id}
|
||||||
|
|
||||||
|
|
||||||
def send_notification(to, subject, body, refs, headers={}):
|
def send_notification(to, subject, body, refs, headers={}):
|
||||||
wrapped = ''
|
wrapped = ''
|
||||||
for line in body.splitlines():
|
for line in body.splitlines():
|
||||||
|
@ -54,23 +56,28 @@ def send_notification(to, subject, body, refs, headers={}):
|
||||||
p = subprocess.Popen([sendmail, '-t', '-oi'], stdin=subprocess.PIPE)
|
p = subprocess.Popen([sendmail, '-t', '-oi'], stdin=subprocess.PIPE)
|
||||||
p.communicate(msg.as_bytes())
|
p.communicate(msg.as_bytes())
|
||||||
|
|
||||||
|
|
||||||
def username_from_id(cur, uid):
|
def username_from_id(cur, uid):
|
||||||
cur.execute('SELECT UserName FROM Users WHERE ID = %s', [uid])
|
cur.execute('SELECT UserName FROM Users WHERE ID = %s', [uid])
|
||||||
return cur.fetchone()[0]
|
return cur.fetchone()[0]
|
||||||
|
|
||||||
|
|
||||||
def pkgbase_from_id(cur, pkgbase_id):
|
def pkgbase_from_id(cur, pkgbase_id):
|
||||||
cur.execute('SELECT Name FROM PackageBases WHERE ID = %s', [pkgbase_id])
|
cur.execute('SELECT Name FROM PackageBases WHERE ID = %s', [pkgbase_id])
|
||||||
return cur.fetchone()[0]
|
return cur.fetchone()[0]
|
||||||
|
|
||||||
|
|
||||||
def pkgbase_from_pkgreq(cur, reqid):
|
def pkgbase_from_pkgreq(cur, reqid):
|
||||||
cur.execute('SELECT PackageBaseID FROM PackageRequests WHERE ID = %s',
|
cur.execute('SELECT PackageBaseID FROM PackageRequests WHERE ID = %s',
|
||||||
[reqid])
|
[reqid])
|
||||||
return cur.fetchone()[0]
|
return cur.fetchone()[0]
|
||||||
|
|
||||||
|
|
||||||
def get_user_email(cur, uid):
|
def get_user_email(cur, uid):
|
||||||
cur.execute('SELECT Email FROM Users WHERE ID = %s', [uid])
|
cur.execute('SELECT Email FROM Users WHERE ID = %s', [uid])
|
||||||
return cur.fetchone()[0]
|
return cur.fetchone()[0]
|
||||||
|
|
||||||
|
|
||||||
def get_maintainer_email(cur, pkgbase_id):
|
def get_maintainer_email(cur, pkgbase_id):
|
||||||
cur.execute('SELECT Users.Email FROM Users ' +
|
cur.execute('SELECT Users.Email FROM Users ' +
|
||||||
'INNER JOIN PackageBases ' +
|
'INNER JOIN PackageBases ' +
|
||||||
|
@ -78,6 +85,7 @@ def get_maintainer_email(cur, pkgbase_id):
|
||||||
'PackageBases.ID = %s', [pkgbase_id])
|
'PackageBases.ID = %s', [pkgbase_id])
|
||||||
return cur.fetchone()[0]
|
return cur.fetchone()[0]
|
||||||
|
|
||||||
|
|
||||||
def get_recipients(cur, pkgbase_id, uid):
|
def get_recipients(cur, pkgbase_id, uid):
|
||||||
cur.execute('SELECT DISTINCT Users.Email FROM Users ' +
|
cur.execute('SELECT DISTINCT Users.Email FROM Users ' +
|
||||||
'INNER JOIN CommentNotify ' +
|
'INNER JOIN CommentNotify ' +
|
||||||
|
@ -86,6 +94,7 @@ def get_recipients(cur, pkgbase_id, uid):
|
||||||
'CommentNotify.PackageBaseID = %s', [uid, pkgbase_id])
|
'CommentNotify.PackageBaseID = %s', [uid, pkgbase_id])
|
||||||
return [row[0] for row in cur.fetchall()]
|
return [row[0] for row in cur.fetchall()]
|
||||||
|
|
||||||
|
|
||||||
def get_request_recipients(cur, pkgbase_id, uid):
|
def get_request_recipients(cur, pkgbase_id, uid):
|
||||||
cur.execute('SELECT DISTINCT Users.Email FROM Users ' +
|
cur.execute('SELECT DISTINCT Users.Email FROM Users ' +
|
||||||
'INNER JOIN PackageBases ' +
|
'INNER JOIN PackageBases ' +
|
||||||
|
@ -93,25 +102,30 @@ def get_request_recipients(cur, pkgbase_id, uid):
|
||||||
'Users.ID = %s OR PackageBases.ID = %s', [uid, pkgbase_id])
|
'Users.ID = %s OR PackageBases.ID = %s', [uid, pkgbase_id])
|
||||||
return [row[0] for row in cur.fetchall()]
|
return [row[0] for row in cur.fetchall()]
|
||||||
|
|
||||||
|
|
||||||
def get_comment(cur, comment_id):
|
def get_comment(cur, comment_id):
|
||||||
cur.execute('SELECT Comments FROM PackageComments WHERE ID = %s',
|
cur.execute('SELECT Comments FROM PackageComments WHERE ID = %s',
|
||||||
[comment_id])
|
[comment_id])
|
||||||
return cur.fetchone()[0]
|
return cur.fetchone()[0]
|
||||||
|
|
||||||
|
|
||||||
def get_flagger_comment(cur, pkgbase_id):
|
def get_flagger_comment(cur, pkgbase_id):
|
||||||
cur.execute('SELECT FlaggerComment FROM PackageBases WHERE ID = %s',
|
cur.execute('SELECT FlaggerComment FROM PackageBases WHERE ID = %s',
|
||||||
[pkgbase_id])
|
[pkgbase_id])
|
||||||
return cur.fetchone()[0]
|
return cur.fetchone()[0]
|
||||||
|
|
||||||
|
|
||||||
def get_request_comment(cur, reqid):
|
def get_request_comment(cur, reqid):
|
||||||
cur.execute('SELECT Comments FROM PackageRequests WHERE ID = %s', [reqid])
|
cur.execute('SELECT Comments FROM PackageRequests WHERE ID = %s', [reqid])
|
||||||
return cur.fetchone()[0]
|
return cur.fetchone()[0]
|
||||||
|
|
||||||
|
|
||||||
def get_request_closure_comment(cur, reqid):
|
def get_request_closure_comment(cur, reqid):
|
||||||
cur.execute('SELECT ClosureComment FROM PackageRequests WHERE ID = %s',
|
cur.execute('SELECT ClosureComment FROM PackageRequests WHERE ID = %s',
|
||||||
[reqid])
|
[reqid])
|
||||||
return cur.fetchone()[0]
|
return cur.fetchone()[0]
|
||||||
|
|
||||||
|
|
||||||
def send_resetkey(cur, uid):
|
def send_resetkey(cur, uid):
|
||||||
cur.execute('SELECT UserName, Email, ResetKey FROM Users WHERE ID = %s',
|
cur.execute('SELECT UserName, Email, ResetKey FROM Users WHERE ID = %s',
|
||||||
[uid])
|
[uid])
|
||||||
|
@ -126,6 +140,7 @@ def send_resetkey(cur, uid):
|
||||||
|
|
||||||
send_notification([to], subject, body, refs)
|
send_notification([to], subject, body, refs)
|
||||||
|
|
||||||
|
|
||||||
def welcome(cur, uid):
|
def welcome(cur, uid):
|
||||||
cur.execute('SELECT UserName, Email, ResetKey FROM Users WHERE ID = %s',
|
cur.execute('SELECT UserName, Email, ResetKey FROM Users WHERE ID = %s',
|
||||||
[uid])
|
[uid])
|
||||||
|
@ -140,14 +155,13 @@ def welcome(cur, uid):
|
||||||
|
|
||||||
send_notification([to], subject, body, refs)
|
send_notification([to], subject, body, refs)
|
||||||
|
|
||||||
|
|
||||||
def comment(cur, uid, pkgbase_id, comment_id):
|
def comment(cur, uid, pkgbase_id, comment_id):
|
||||||
user = username_from_id(cur, uid)
|
user = username_from_id(cur, uid)
|
||||||
pkgbase = pkgbase_from_id(cur, pkgbase_id)
|
pkgbase = pkgbase_from_id(cur, pkgbase_id)
|
||||||
to = get_recipients(cur, pkgbase_id, uid)
|
to = get_recipients(cur, pkgbase_id, uid)
|
||||||
text = get_comment(cur, comment_id)
|
text = get_comment(cur, comment_id)
|
||||||
|
|
||||||
uri = aur_location + '/pkgbase/' + pkgbase + '/'
|
|
||||||
|
|
||||||
user_uri = aur_location + '/account/' + user + '/'
|
user_uri = aur_location + '/account/' + user + '/'
|
||||||
pkgbase_uri = aur_location + '/pkgbase/' + pkgbase + '/'
|
pkgbase_uri = aur_location + '/pkgbase/' + pkgbase + '/'
|
||||||
|
|
||||||
|
@ -164,6 +178,7 @@ def comment(cur, uid, pkgbase_id, comment_id):
|
||||||
|
|
||||||
send_notification(to, subject, body, refs, headers)
|
send_notification(to, subject, body, refs, headers)
|
||||||
|
|
||||||
|
|
||||||
def flag(cur, uid, pkgbase_id):
|
def flag(cur, uid, pkgbase_id):
|
||||||
user = username_from_id(cur, uid)
|
user = username_from_id(cur, uid)
|
||||||
pkgbase = pkgbase_from_id(cur, pkgbase_id)
|
pkgbase = pkgbase_from_id(cur, pkgbase_id)
|
||||||
|
@ -182,6 +197,7 @@ def flag(cur, uid, pkgbase_id):
|
||||||
|
|
||||||
send_notification(to, subject, body, refs)
|
send_notification(to, subject, body, refs)
|
||||||
|
|
||||||
|
|
||||||
def comaintainer_add(cur, pkgbase_id, uid):
|
def comaintainer_add(cur, pkgbase_id, uid):
|
||||||
pkgbase = pkgbase_from_id(cur, pkgbase_id)
|
pkgbase = pkgbase_from_id(cur, pkgbase_id)
|
||||||
to = [get_user_email(cur, uid)]
|
to = [get_user_email(cur, uid)]
|
||||||
|
@ -194,6 +210,7 @@ def comaintainer_add(cur, pkgbase_id, uid):
|
||||||
|
|
||||||
send_notification(to, subject, body, refs)
|
send_notification(to, subject, body, refs)
|
||||||
|
|
||||||
|
|
||||||
def comaintainer_remove(cur, pkgbase_id, uid):
|
def comaintainer_remove(cur, pkgbase_id, uid):
|
||||||
pkgbase = pkgbase_from_id(cur, pkgbase_id)
|
pkgbase = pkgbase_from_id(cur, pkgbase_id)
|
||||||
to = [get_user_email(cur, uid)]
|
to = [get_user_email(cur, uid)]
|
||||||
|
@ -201,12 +218,13 @@ def comaintainer_remove(cur, pkgbase_id, uid):
|
||||||
pkgbase_uri = aur_location + '/pkgbase/' + pkgbase + '/'
|
pkgbase_uri = aur_location + '/pkgbase/' + pkgbase + '/'
|
||||||
|
|
||||||
subject = 'AUR Co-Maintainer Notification for %s' % (pkgbase)
|
subject = 'AUR Co-Maintainer Notification for %s' % (pkgbase)
|
||||||
body = 'You were removed from the co-maintainer list of %s [1].' % \
|
body = ('You were removed from the co-maintainer list of %s [1].' %
|
||||||
(pkgbase)
|
(pkgbase))
|
||||||
refs = '[1] ' + pkgbase_uri + '\n'
|
refs = '[1] ' + pkgbase_uri + '\n'
|
||||||
|
|
||||||
send_notification(to, subject, body, refs)
|
send_notification(to, subject, body, refs)
|
||||||
|
|
||||||
|
|
||||||
def delete(cur, uid, old_pkgbase_id, new_pkgbase_id=None):
|
def delete(cur, uid, old_pkgbase_id, new_pkgbase_id=None):
|
||||||
user = username_from_id(cur, uid)
|
user = username_from_id(cur, uid)
|
||||||
old_pkgbase = pkgbase_from_id(cur, old_pkgbase_id)
|
old_pkgbase = pkgbase_from_id(cur, old_pkgbase_id)
|
||||||
|
@ -215,7 +233,7 @@ def delete(cur, uid, old_pkgbase_id, new_pkgbase_id=None):
|
||||||
to = get_recipients(cur, old_pkgbase_id, uid)
|
to = get_recipients(cur, old_pkgbase_id, uid)
|
||||||
|
|
||||||
user_uri = aur_location + '/account/' + user + '/'
|
user_uri = aur_location + '/account/' + user + '/'
|
||||||
pkgbase_uri = aur_location + '/pkgbase/' + pkgbase + '/'
|
pkgbase_uri = aur_location + '/pkgbase/' + old_pkgbase + '/'
|
||||||
|
|
||||||
subject = 'AUR Package deleted: %s' % (old_pkgbase)
|
subject = 'AUR Package deleted: %s' % (old_pkgbase)
|
||||||
if new_pkgbase_id:
|
if new_pkgbase_id:
|
||||||
|
@ -236,6 +254,7 @@ def delete(cur, uid, old_pkgbase_id, new_pkgbase_id=None):
|
||||||
|
|
||||||
send_notification(to, subject, body, refs)
|
send_notification(to, subject, body, refs)
|
||||||
|
|
||||||
|
|
||||||
def request_open(cur, uid, reqid, reqtype, pkgbase_id, merge_into=None):
|
def request_open(cur, uid, reqid, reqtype, pkgbase_id, merge_into=None):
|
||||||
user = username_from_id(cur, uid)
|
user = username_from_id(cur, uid)
|
||||||
pkgbase = pkgbase_from_id(cur, pkgbase_id)
|
pkgbase = pkgbase_from_id(cur, pkgbase_id)
|
||||||
|
@ -268,12 +287,13 @@ def request_open(cur, uid, reqid, reqtype, pkgbase_id, merge_into=None):
|
||||||
|
|
||||||
send_notification(to, subject, body, refs, headers)
|
send_notification(to, subject, body, refs, headers)
|
||||||
|
|
||||||
|
|
||||||
def request_close(cur, uid, reqid, reason):
|
def request_close(cur, uid, reqid, reason):
|
||||||
user = username_from_id(cur, uid)
|
user = username_from_id(cur, uid)
|
||||||
pkgbase_id = pkgbase_from_pkgreq(cur, reqid)
|
pkgbase_id = pkgbase_from_pkgreq(cur, reqid)
|
||||||
to = [aur_request_ml]
|
to = [aur_request_ml]
|
||||||
cc = get_request_recipients(cur, pkgbase_id, uid)
|
cc = get_request_recipients(cur, pkgbase_id, uid)
|
||||||
text = get_request_closure_comment(cur, reqid);
|
text = get_request_closure_comment(cur, reqid)
|
||||||
|
|
||||||
user_uri = aur_location + '/account/' + user + '/'
|
user_uri = aur_location + '/account/' + user + '/'
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue