[elbe-devel] [PATCH v2 1/1] repomanager: add fallback, when reprepro fails to add dsc
Holger Dengler
dengler at linutronix.de
Wed Nov 28 16:34:27 CET 2018
There is a typo in the comment (see below). Can you also log an additional warning- or info-message? Something like "Unable to verify package %s (unsupported signature algo)"?
On 11/28/18 4:10 PM, Torben Hohn wrote:
> When a dsc is inserted into a repository the signature is verified.
> The recently added gnupg2_2.1.18-8~deb9u3.dsc has a signature made
> with EdDSA instead of RSA. This Algorithm is not supported by the
> gnupg version used in jessie. This yields an error.
>
> running cmd +reprepro --keepunreferencedfiles --export=never --basedir "/var/cache/elbe/7591259d-7f60-4318-867f-12cd4a6d164f/srcrepo" -C main -P normal -S misc includedsc stretch /var/cache/elbe/7591259d-7f60-4318-867f-12cd4a6d164f/chroot/var/cache/elbe/sources/gnupg2_2.1.18-8~deb9u3.dsc+
> ------------------------------------------------------------------------------
> gpgme returned an general error verifing signature with '6C1F1EDECC50FA53' in '/var/cache/elbe/7591259d-7f60-4318-867f-12cd4a6d164f/chroot/var/cache/elbe/sources/gnupg2_2.1.18-8~deb9u3.dsc'!
> Try running gpg --verify '/var/cache/elbe/7591259d-7f60-4318-867f-12cd4a6d164f/chroot/var/cache/elbe/sources/gnupg2_2.1.18-8~deb9u3.dsc' manually for hints what is happening.
> If this does not print any errors, retry the command causing this message.
> There have been errors!
> ------------------------------------------------------------------------------
>
> Command failed with errorcode 251
> Build failed
> Traceback (most recent call last):
> File "/var/cache/elbe/devel/elbepack/asyncworker.py", line 158, in execute
> skip_pbuild=self.skip_pbuilder)
> File "/var/cache/elbe/devel/elbepack/elbeproject.py", line 572, in build
> self.build_cdroms(build_bin, build_sources, cdrom_size)
> File "/var/cache/elbe/devel/elbepack/elbeproject.py", line 406, in build_cdroms
> xml=self.xml)
> File "/var/cache/elbe/devel/elbepack/cdroms.py", line 72, in mk_source_cdrom
> repo.includedsc(dsc, force=True)
> File "/var/cache/elbe/devel/elbepack/repomanager.py", line 282, in includedsc
> self._includedsc(path, self.repo_attr.codename, component)
> File "/var/cache/elbe/devel/elbepack/repomanager.py", line 269, in _includedsc
> path)
> File "/var/cache/elbe/devel/elbepack/asciidoclog.py", line 62, in do
> raise CommandError(cmd, ret)
> CommandError
>
> This error results in a failure to build src-cdrom.iso.
>
> Add fallback code, that at least copies the dsc file onto the cdrom.
> Note that we check for the returncode 251 which is RET_ERROR_GPGME
> in reprepro source.
>
> This patch needs to be dropped again, once the initvm is upgraded
> to stretch (or buster).
>
> Signed-off-by: Torben Hohn <torben.hohn at linutronix.de>
Acked-by: Holger Dengler <dengler at linutronix.de>
> ---
> elbepack/repomanager.py | 12 +++++++++++-
> 1 file changed, 11 insertions(+), 1 deletion(-)
>
> diff --git a/elbepack/repomanager.py b/elbepack/repomanager.py
> index 635d23a7..e061c2e0 100644
> --- a/elbepack/repomanager.py
> +++ b/elbepack/repomanager.py
> @@ -224,7 +224,17 @@ class RepoBase(object):
> try:
> self._includedsc (path, self.repo_attr.codename, component)
> except CommandError as ce:
> - if force:
> + if ce.returncode == 251:
> + # 251 is -5 (RET_ERROR_GPGME in reprepro source)
> + #
> + # gnupg2_2.1.18-8~deb9u3.dsc is signed using EdDSA
> + # jessies gpg version does not support this.
> + # expect more packages signed with EdDSA soon.
> + #
> + # copy the dsc onto the into the cdrom root,
typo: "copy the dsc into the cdrom root,..."
> + # when reprepro fails to insert it.
> + self.log.do('cp -av "%s" "%s"' % (path, self.fs.path))
> + elif force:
> # Including dsc did not work.
> # Maybe we have the same Version with a
> # different md5 already.
>
--
Gruß,
Holger Dengler
--
phone: +49 7556 25 999 14; fax: +49 7556 25 999 99
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://lists.linutronix.de/pipermail/elbe-devel/attachments/20181128/d794c331/attachment-0001.sig>
More information about the elbe-devel
mailing list