From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from <gentoo-commits+bounces-435299-garchives=archives.gentoo.org@lists.gentoo.org>) id 1S4MCx-0005df-IJ for garchives@archives.gentoo.org; Mon, 05 Mar 2012 00:55:23 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id C3D6FE07F0; Mon, 5 Mar 2012 00:55:08 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) by pigeon.gentoo.org (Postfix) with ESMTP id 94E32E07F0 for <gentoo-commits@lists.gentoo.org>; Mon, 5 Mar 2012 00:55:08 +0000 (UTC) Received: from hornbill.gentoo.org (hornbill.gentoo.org [94.100.119.163]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id EC5E31B400E for <gentoo-commits@lists.gentoo.org>; Mon, 5 Mar 2012 00:55:07 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by hornbill.gentoo.org (Postfix) with ESMTP id 8ECD5E5401 for <gentoo-commits@lists.gentoo.org>; Mon, 5 Mar 2012 00:55:05 +0000 (UTC) From: "Zac Medico" <zmedico@gentoo.org> To: gentoo-commits@lists.gentoo.org Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Zac Medico" <zmedico@gentoo.org> Message-ID: <1330908879.43593de8225589fcd5c0d07ce70f45dfbe11bba9.zmedico@gentoo> Subject: [gentoo-commits] proj/portage:master commit in: bin/ X-VCS-Repository: proj/portage X-VCS-Files: bin/repoman X-VCS-Directories: bin/ X-VCS-Committer: zmedico X-VCS-Committer-Name: Zac Medico X-VCS-Revision: 43593de8225589fcd5c0d07ce70f45dfbe11bba9 X-VCS-Branch: master Date: Mon, 5 Mar 2012 00:55:05 +0000 (UTC) Precedence: bulk List-Post: <mailto:gentoo-commits@lists.gentoo.org> List-Help: <mailto:gentoo-commits+help@lists.gentoo.org> List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org> List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org> List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org> X-BeenThere: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: quoted-printable X-Archives-Salt: db3622d3-8b23-420f-846a-e9c0271c750e X-Archives-Hash: 44fd66a8cf149e9a43844cc870c648f8 commit: 43593de8225589fcd5c0d07ce70f45dfbe11bba9 Author: Zac Medico <zmedico <AT> gentoo <DOT> org> AuthorDate: Mon Mar 5 00:48:41 2012 +0000 Commit: Zac Medico <zmedico <AT> gentoo <DOT> org> CommitDate: Mon Mar 5 00:54:39 2012 +0000 URL: http://git.overlays.gentoo.org/gitweb/?p=3Dproj/portage.git;a= =3Dcommit;h=3D43593de8 repoman: say Git >=3D1.7.9 needed for signed commit --- bin/repoman | 23 ++++++++++++++++++++++- 1 files changed, 22 insertions(+), 1 deletions(-) diff --git a/bin/repoman b/bin/repoman index bcb48e4..3f16603 100755 --- a/bin/repoman +++ b/bin/repoman @@ -1,5 +1,5 @@ #!/usr/bin/python -O -# Copyright 1999-2011 Gentoo Foundation +# Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 =20 # Next to do: dep syntax checking in mask files @@ -936,6 +936,20 @@ def vcs_files_to_cps(vcs_file_iter): =20 return frozenset(modified_cps) =20 +def git_supports_gpg_sign(): + status, cmd_output =3D \ + subprocess_getstatusoutput("git --version") + cmd_output =3D cmd_output.split() + if cmd_output: + version =3D re.match(r'^(\d+)\.(\d+)\.(\d+)', cmd_output[-1]) + if version is not None: + version =3D [int(x) for x in version.groups()[1:]] + if version[0] > 1 or \ + (version[0] =3D=3D 1 and version[1] > 7) or \ + (version[0] =3D=3D 1 and version[1] =3D=3D 7 and version[2] >=3D 9): + return True + return False + def dev_keywords(profiles): """ Create a set of KEYWORDS values that exist in 'dev' @@ -2772,6 +2786,13 @@ else: else: retval =3D spawn(commit_cmd, env=3Dos.environ) if retval !=3D os.EX_OK: + + if repo_config.sign_commit and vcs =3D=3D 'git' and \ + not git_supports_gpg_sign(): + # Inform user that newer git is needed (bug #403323). + logging.error( + "Git >=3D1.7.9 is required for signed commits!") + writemsg_level(("!!! Exiting on %s (shell) " + \ "error code: %s\n") % (vcs, retval), level=3Dlogging.ERROR, noiselevel=3D-1)