From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 1270C138247 for ; Thu, 16 Jan 2014 00:08:49 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id E197CE0AA1; Thu, 16 Jan 2014 00:08:28 +0000 (UTC) Received: from michel.telenet-ops.be (michel.telenet-ops.be [195.130.137.88]) by pigeon.gentoo.org (Postfix) with ESMTP id B27E9E09B6 for ; Thu, 16 Jan 2014 00:08:27 +0000 (UTC) Received: from localhost.localdomain ([94.226.55.127]) by michel.telenet-ops.be with bizsmtp id EQ8S1n02b2khLEN06Q8TYV; Thu, 16 Jan 2014 01:08:27 +0100 From: Tom Wijsman To: gentoo-portage-dev@lists.gentoo.org Subject: [gentoo-portage-dev] [PATCH 2/3] Have repoman check that a package directory contains at least one ebuild (bug #245305). Date: Thu, 16 Jan 2014 01:07:19 +0100 Message-Id: <1389830840-25848-3-git-send-email-tomwij@gentoo.org> X-Mailer: git-send-email 1.8.5.2 In-Reply-To: <1389830840-25848-1-git-send-email-tomwij@gentoo.org> References: <1389830840-25848-1-git-send-email-tomwij@gentoo.org> Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-portage-dev@lists.gentoo.org Reply-to: gentoo-portage-dev@lists.gentoo.org X-Archives-Salt: 56640782-f9d2-4ae8-924f-8a5121b46ecd X-Archives-Hash: cbb5cb6526d3f5867cbfd89aa9cfee34 --- bin/repoman | 8 ++++++++ man/repoman.1 | 3 +++ 2 files changed, 11 insertions(+) diff --git a/bin/repoman b/bin/repoman index 9b703dc..3263ceb 100755 --- a/bin/repoman +++ b/bin/repoman @@ -330,6 +330,7 @@ qahelp = { "SRC_URI.mirror": "A uri listed in profiles/thirdpartymirrors is found in SRC_URI", "ebuild.syntax": "Error generating cache entry for ebuild; typically caused by ebuild syntax error or digest verification failure", "ebuild.output": "A simple sourcing of the ebuild produces output; this breaks ebuild policy.", + "ebuild.missing": "A package directory must at least contain one ebuild or be treecleaned.", "ebuild.nesteddie": "Placing 'die' inside ( ) prints an error, but doesn't stop the ebuild.", "variable.invalidchar": "A variable contains an invalid character that is not part of the ASCII character set", "variable.readonly": "Assigning a readonly variable", @@ -1466,6 +1467,13 @@ for x in effective_scanlist: can_force = False continue + if len(ebuildlist) == 0: + stats["ebuild.missing"] += 1 + fails["ebuild.missing"].append("%s must at least contain one " % x + \ + "ebuild or be treecleaned.") + can_force = False + continue + # Sort ebuilds in ascending order for the KEYWORDS.dropped check. ebuildlist = sorted(pkgs.values()) ebuildlist = [pkg.pf for pkg in ebuildlist] diff --git a/man/repoman.1 b/man/repoman.1 index e739d56..2bf3765 100644 --- a/man/repoman.1 +++ b/man/repoman.1 @@ -301,6 +301,9 @@ Ebuilds that exist but have not been added to cvs .B ebuild.output A simple sourcing of the ebuild produces output; this breaks ebuild policy. .TP +.B ebuild.missing +A package directory must at least contain one ebuild or be treecleaned. +.TP .B ebuild.patches PATCHES variable should be a bash array to ensure white space safety .TP -- 1.8.5.2