Project

General

Profile

Demande #5627

forge.april.org: erreur 500 lors de l'ajout de ma clef GPG

Added by Pierre-Louis Bonicoli about 1 year ago. Updated 3 days ago.

Status:
Nouveau
Priority:
Normale
Category:
-
Target version:
Start date:
10/20/2021
Due date:
% Done:

0%

Estimated time:
Difficulté:
3 Moyen

Description

Lorsque j'essaie d'ajouter ma clef GPG sur l'instance Gitea forge.april.org, une erreur 500 est retournée sans information permettant de comprendre le problème. Je n'ai pas cette erreur sur l'instance Gitea forge.chapril.org. Les deux instances sont en version 1.15.4. J'ai essayé d'ajouter la clef GPG quand aucune des adresses emails des uid de la clef n'étaient connues de Gitea et quand au moins une l'était: cela est sans effet et l'erreur est présente dans les deux cas.

J'ai notamment essayer cet ajout de clef aujourd'hui (mercredi 20 octobre) à 06:00:17 PM CEST. Est ce que les logs de Gitea (journalctl -u gitea -S "2021-10-20 16:00:00 UTC" et /var/log/gitea/gitea.log contiennent des informations supplémentaires ?

History

#1

Updated by Quentin Gibeaux 9 months ago

  • Assignee set to Pierre-Louis Bonicoli
  • Target version changed from Backlog to Mars 2022
#2

Updated by Pierre-Louis Bonicoli 9 months ago

Dans les logs gitea, l'erreur semble se produire avec MySQL uniquement.

2022/03/19 02:45:26 ...user/setting/keys.go:113:KeysPost() [E] AddPublicKey: Error 1406: Data too long for column 'content' at row 1

#3

Updated by Quentin Gibeaux 8 months ago

  • Target version changed from Mars 2022 to Avril 2022
#4

Updated by Quentin Gibeaux 7 months ago

  • Target version changed from Avril 2022 to Mai 2022
#5

Updated by Pierre-Louis Bonicoli 7 months ago

L'erreur se produit quand Gitea utilise une base MariaDB et que la clef utilisée est trop grosse. Un contournement peut être d'exporter la clef en limitant les données exportées:
  • gpg --export pilou@example.com | (export GNUPGHOME="$(mktemp -d)"; gpg --import-filter drop-sig='uid -f' --import; gpg --export -a pilou@example.com)
    ou
  • gpg -a --export-filter keep-uid='uid -t' --export pilou@example.com

Gitea essaie d'insérer la clef GPG de manière inconditionnelle vis à vis de sa taille et de la taille de la colonne; cela ne pose pas de problème avec PostgreSQL (la taille des colonnes text n'est pas limitée) mais échoue avec MariaDB (la taille d'un champs texte est de 65535 caractères (encodage ascii)). La taille de la colonne n'était pas remontée par xorm (l'ORM utilisé par Gitea), récupérer la taille de la colonne depuis Gitea n'était pas possible avec les versions de xorm antérieures à 1.3.1 (non encore publiée à la date de rédaction de ce message). Il faut donc attendre que Gitea dépende d'une version de xorm >= 1.3.1 pour rajouter la comparaison et suggérer l'import d'une clef exportée via l'une des méthodes ci-dessus.

#6

Updated by Quentin Gibeaux 6 months ago

  • Target version changed from Mai 2022 to Juin 2022
#7

Updated by Quentin Gibeaux 5 months ago

  • Target version changed from Juin 2022 to Été 2022
#8

Updated by Quentin Gibeaux 3 months ago

  • Target version changed from Été 2022 to Septembre 2022
#9

Updated by Quentin Gibeaux 2 months ago

  • Target version changed from Septembre 2022 to Octobre 2022
#10

Updated by Quentin Gibeaux about 1 month ago

  • Target version changed from Octobre 2022 to Novembre 2022
#11

Updated by Quentin Gibeaux 3 days ago

  • Target version changed from Novembre 2022 to Décembre 2022

Also available in: Atom PDF