[elbe-devel] [PATCH v2] rfs: add key for local repository

Manuel Traut manut at linutronix.de
Thu Apr 4 16:16:49 CEST 2019


there's still a bug in..

On 10:09 Thu 04 Apr     , Torben Hohn wrote:
> On Thu, Apr 04, 2019 at 09:33:49AM +0200, Manuel Traut wrote:
> > newer apt versions (like in stretch) verify the signature of copy
> > repositories.
> > 
> > Error Updating rpcaptcache: W:GPG error: copy:/repo stretch InRelease: The
> > following signatures couldn't be verified because the public key is not
> > available: NO_PUBKEY DCE4316BFFF45EAD, E:The repository 'copy:/repo stretch
> > InRelease' is not signed.
> > 
> > Therefore add the key while entering the chroot and remove it on exit.
> > 
> > Signed-off-by: Manuel Traut <manut at linutronix.de>
> 
> Reviewed-by: Torben Hohn <torben.hohn at linutronix.de>
> 
> > ---
> >  elbepack/rfs.py | 6 ++++++
> >  1 file changed, 6 insertions(+)
> > 
> > diff --git a/elbepack/rfs.py b/elbepack/rfs.py
> > index cb72aba0..cbe43c01 100644
> > --- a/elbepack/rfs.py
> > +++ b/elbepack/rfs.py
> > @@ -78,6 +78,10 @@ class BuildEnv (object):
> >                              self.xml.text("project/suite"), self.path))
> >          self.cdrom_mount()
> >          self.rfs.__enter__()

the repo is only moved if the pool directory exists. this only exists if there
are packages in the repo. so the following fails sometimes.

This should work

+        if os.path.exists(self.path + '/../repo/pool'):
+            self.log.chroot(self.rfs.path,
+                            'apt-key '
+                            '--keyring /etc/apt/trusted.gpg.d/elbe-localrepo.gpg '
+                            'add /repo/repo.pub')

can i keep your reviewed-by?

> > +        self.log.chroot(self.rfs.path,
> > +                        'apt-key '
> > +                        '--keyring /etc/apt/trusted.gpg.d/elbe-localrepo.gpg '
> > +                        'add /repo/repo.pub')
> >          return self
> >  
> >      def __exit__(self, typ, value, traceback):
> > @@ -86,6 +90,8 @@ class BuildEnv (object):
> >          if os.path.exists(self.path + '/repo'):
> >              self.log.do("mv %s/repo %s/../" % (self.path, self.path))
> >              self.log.do("rm %s/etc/apt/sources.list.d/local.list" % self.path)
> > +        self.log.do("rm %s/etc/apt/trusted.gpg.d/elbe-localrepo.gpg" %
> > +                    self.path)
> >  
> >      def debootstrap(self):
> >  
> > -- 
> > 2.20.1
> > 
> 
> -- 
> Torben Hohn
> Linutronix GmbH | Bahnhofstrasse 3 | D-88690 Uhldingen-Mühlhofen
> Phone: +49 7556 25 999 18; Fax.: +49 7556 25 999 99
> 
> Hinweise zum Datenschutz finden Sie hier (Informations on data privacy 
> can be found here): https://linutronix.de/kontakt/Datenschutz.php
> 
> Linutronix GmbH | Firmensitz (Registered Office): Uhldingen-Mühlhofen | 
> Registergericht (Registration Court): Amtsgericht Freiburg i.Br., HRB700 
> 806 | Geschäftsführer (Managing Directors): Heinz Egger, Thomas Gleixner





More information about the elbe-devel mailing list