apt-get update: Como verificar erros de GPG ao usar scripts?

1

Ao correr.

sudo apt-get update

Por exemplo, algo assim poderia acontecer.

W: GPG error: http://deb.torproject.org wheezy Release: The following signatures were invalid: KEYEXPIRED 1409325681 KEYEXPIRED 1409325681 KEYEXPIRED 1409325681 KEYEXPIRED 1409325681

(Esta questão não é sobre este exemplo de aviso específico. Ele já foi reportado .)

Código de saída.

echo $?
0

O código de saída 0 é problemático para uso automatizado em scripts, onde o sucesso é esperado.

Este é um bug no apt-get do Debian: apt: Fornece códigos de saída significativos para falhas de gpg

Como notar erros de GPG em scripts quando o código de saída não é confiável?

    
por adrelanos 31.08.2014 / 16:46

1 resposta

1

Crie um script de wrapper em torno de /usr/bin/gpgv . Forneça o nome do caminho ao script wrapper como o valor de Dir::Bin::gpg (usando apt-get --option ). Faça com que o script do wrapper examine o status de saída e saída de gpgv e comunique a falha de volta ao script de nível superior de alguma forma (sugiro usar kill para enviar um sinal).

    
por 31.08.2014 / 17:53