Bug 38332

Summary: girar-task rebuild: fails on gpg signature checks when signatures are no longer valid
Product: Infrastructure Reporter: viy <viy>
Component: girarAssignee: Gleb F-Malinovskiy <glebfm>
Status: CLOSED FIXED QA Contact: Andrey Cherepanov <cas>
Severity: major    
Priority: P5 CC: glebfm, lav, ldv
Version: unspecified   
Hardware: x86_64   
OS: Linux   

Description viy 2020-04-06 20:16:56 MSK
если пакет в Сизифе, то task rebuild должен для него выполняться всегда.

примеры пакетов, для которых не удается выполнить task rebuild:

pcp
----------------------------------
gpg: WARNING: unsafe ownership on homedir `/usr/lib/alt-gpgkeys'
gpg: Signature made Tue Dec 24 13:27:46 2019 UTC
gpg:                using RSA key 0x8899161E4DE2462A
gpg: Can't check signature: public key not found
task add: 5.0.2-alt1: tag signature verification failure

perl-Net-Pcap
----------------------------------
/var/lib/girar/repo/sisyphus/release/latest/files/SRPMS/perl-Net-Pcap-0.18-alt2.src.rpm: rpmsign failed
sisyphus_check: check-gpg ERROR: package signatures violation
task add: /var/lib/girar/repo/sisyphus/release/latest/files/SRPMS/perl-Net-Pcap-0.18-alt2.src.rpm: sisyphus_check failed
Comment 1 Dmitry V. Levin 2020-04-06 20:39:00 MSK
Это спорное предложение, обсуждалось в devel, к консенсусу не пришли.
К тому же его сложно реализовать.
Comment 2 viy 2020-04-06 20:46:02 MSK
(Ответ для Dmitry V. Levin на комментарий #1)
> Это спорное предложение, обсуждалось в devel, к консенсусу не пришли.

гм. для одного пакета аварийный останов не играет особой роли.
но если имен сотни?
Но как тогда на rebuild с большими списками имен переходить?
как в примере с транзакцией perl?

> К тому же его сложно реализовать.
а если просто отключить проверку? если пакет в Сизифе?
Comment 3 viy 2020-04-09 16:01:30 MSK
perl-Net-Pcap я принудительно пересобрал с увеличением релиза, уже не годится как пример.
Comment 4 Dmitry V. Levin 2020-04-09 16:27:33 MSK
(In reply to viy from comment #2)
> (Ответ для Dmitry V. Levin на комментарий #1)
> > Это спорное предложение, обсуждалось в devel, к консенсусу не пришли.
> 
> гм. для одного пакета аварийный останов не играет особой роли.
> но если имен сотни?
> Но как тогда на rebuild с большими списками имен переходить?
> как в примере с транзакцией perl?

Для каждого пакета, для которого task add rebuild не прошёл, сделать по-старинке с увеличением релиза?

> > К тому же его сложно реализовать.
> а если просто отключить проверку? если пакет в Сизифе?

Это сложно, на неё всякое заваязано.
Это же не просто проверка, из подписи вынимается информация об авторе, которая используется дальше.
Comment 5 viy 2020-04-09 16:33:11 MSK
(Ответ для Dmitry V. Levin на комментарий #4)
> (In reply to viy from comment #2)
> > (Ответ для Dmitry V. Levin на комментарий #1)
> > > Это спорное предложение, обсуждалось в devel, к консенсусу не пришли.
> > 
> > гм. для одного пакета аварийный останов не играет особой роли.
> > но если имен сотни?
> > Но как тогда на rebuild с большими списками имен переходить?
> > как в примере с транзакцией perl?
> 
> Для каждого пакета, для которого task add rebuild не прошёл, сделать
> по-старинке с увеличением релиза?

ломает старую автоматизацию :(
нужно скриптовать дополнительный объезд глюков в girar.
я уже в принципе сделал, жить теперь можно. Но более неудобно, чем раньше.
Comment 6 viy 2021-05-27 17:29:05 MSK
свежий пример

fetching tag "5.12-alt2" from /gears/l/linux-tools.git... done
generating pkg.tar for linux-tools.git tag "5.12-alt2"... done
task #272665: added #16300: build tag "5.12-alt2" from /gears/l/linux-tools.git
gpg: Signature made Wed Jan 27 13:30:38 2021 UTC
gpg:                using RSA key 0xBD6F569AA321B068
gpg: Can't check signature: public key not found
task add: v3.0.6-alt15: tag signature verification failure
Comment 7 viy 2021-05-27 17:49:54 MSK
nagios

ssh girar task new      
272682
new task #272682: owner=viy repo=sisyphus
igor@ohmu ~ $ ssh girar task add rebuild nagios
gpg: Signature made Wed Jan 27 13:30:38 2021 UTC
gpg:                using RSA key 0xBD6F569AA321B068
gpg: Can't check signature: public key not found
task add: v3.0.6-alt15: tag signature verification failure
Comment 8 Gleb F-Malinovskiy 2021-05-27 18:07:14 MSK
(Ответ для viy на комментарий #6)
> свежий пример
> 
> fetching tag "5.12-alt2" from /gears/l/linux-tools.git... done
> generating pkg.tar for linux-tools.git tag "5.12-alt2"... done
> task #272665: added #16300: build tag "5.12-alt2" from
> /gears/l/linux-tools.git
> gpg: Signature made Wed Jan 27 13:30:38 2021 UTC
> gpg:                using RSA key 0xBD6F569AA321B068
> gpg: Can't check signature: public key not found
> task add: v3.0.6-alt15: tag signature verification failure

Этот вывод составлен в результате исполнения двух разных команд, не делайте так, пожалуйста.

(Ответ для viy на комментарий #7)
> nagios
> 
> ssh girar task new      
> 272682
> new task #272682: owner=viy repo=sisyphus
> igor@ohmu ~ $ ssh girar task add rebuild nagios

А так сейчас уже работает.
Comment 9 viy 2021-05-27 18:49:00 MSK
(Ответ для Gleb F-Malinovskiy на комментарий #8)
> Этот вывод составлен в результате исполнения двух разных команд, не делайте
> так, пожалуйста.

да, я потом заметил и прислал уже выхлоп с nagios.

> (Ответ для viy на комментарий #7)
> > nagios
[...]
> А так сейчас уже работает.

Да, ведь я только что пересобрал nagios, подписав alt16 своим ключом, поэтому больше на nagios выбивать не будет (что мне нужно, если потребуется перезалить транзакцию).
К сожалению, выбьет теперь на каком-то другом пакете в Сизифе.
Всего то нужно отключить gpg check при task add rebuild.
Comment 10 viy 2021-05-27 20:15:26 MSK
Закрываю, так как исправлено Глебом.
Глеб мне написал:
Я исправил и проверил, alt15 тоже можно пересобрать, так что это была
лишняя пересборка.

$ ssh gyle.alt task add 272690 repo /gears/n/nagios.git v3.0.6-alt15
fetching tag "v3.0.6-alt15" from /gears/n/nagios.git... done
generating pkg.tar for nagios.git tag "v3.0.6-alt15"... done
task #272690: added #100: build tag "v3.0.6-alt15" from /gears/n/nagios.git
Comment 11 Gleb F-Malinovskiy 2021-05-27 20:53:20 MSK
Исправлена была только проблема с тем ключом, которым был подписан nagios.
Comment 12 Dmitry V. Levin 2021-06-21 01:40:02 MSK
Proposed workaround: allow rebuilds from the latest sid regardless of the gpg signature.

This blocks mass rebuilds.
Comment 13 Dmitry V. Levin 2021-07-07 17:59:28 MSK
Мне кажется, что это уже реализовано.
Comment 14 Gleb F-Malinovskiy 2021-07-08 13:09:37 MSK
Исправлено в f31d08098d1c815943eb9d10d029fde297589b6e.