From 50c0ee9ec45db7ceecaa333707873f45795fb38a Mon Sep 17 00:00:00 2001 From: Lukas Fleischer Date: Wed, 3 Jun 2015 12:12:13 +0200 Subject: git-update: Only check HEAD for matching pkgbase When renaming a package base, we want to keep commits of the former package. Move the check that compares the package base name with the repository name such that only HEAD is validated. Fixes FS#45065. Signed-off-by: Lukas Fleischer --- git-interface/git-update.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'git-interface') diff --git a/git-interface/git-update.py b/git-interface/git-update.py index b7eaa14..c4f9da7 100755 --- a/git-interface/git-update.py +++ b/git-interface/git-update.py @@ -20,6 +20,7 @@ aur_db_pass = config.get('database', 'password') aur_db_socket = config.get('database', 'socket') repo_path = config.get('serve', 'repo-path') +repo_regex = config.get('serve', 'repo-regex') def extract_arch_fields(pkginfo, field): values = [] @@ -207,7 +208,7 @@ for commit in walker: exit(1) srcinfo_pkgbase = srcinfo._pkgbase['pkgname'] - if srcinfo_pkgbase != pkgbase: + if not re.match(repo_regex, srcinfo_pkgbase): die_commit('invalid pkgbase: %s' % (srcinfo_pkgbase), commit.id) for pkgname in srcinfo.GetPackageNames(): @@ -251,6 +252,10 @@ srcinfo_raw = repo[repo[sha1_new].tree['.SRCINFO'].id].data.decode() srcinfo_raw = srcinfo_raw.split('\n') srcinfo = aurinfo.ParseAurinfoFromIterable(srcinfo_raw) +srcinfo_pkgbase = srcinfo._pkgbase['pkgname'] +if srcinfo_pkgbase != pkgbase: + die('invalid pkgbase: %s' % (srcinfo_pkgbase)) + save_srcinfo(srcinfo, db, cur, user) db.close() -- cgit v1.2.3-70-g09d2