Le SSO ne fonctionne pas pour pousser mon projet sur Forgejo

What app is this about, and its version: Forgejo 16.0.1
What YunoHost version are you running: 12.1.40.1
What type of hardware are you using: Old laptop or computer

Describe your issue

J’ai installé l’application Forgejo sur mon serveur, je peux y accéder via le portail.
Quand j’essaie de pousser mon projet dessus avec git push -u origin master, mon navigateur s’ouvre bien sur la page de connexion du portail de mon serveur, voir directement sur celui-ci si je me suis déjà connecté récemment… Mais ma commande git ne semble pas recevoir de feedback lorsque je valide ma connexion, elle attend éternellement, sans même afficher de message d’erreur.

Mes excuses en avance si c’est quelque chose de tout bête, c’est la 1e application utilisant le SSO que j’installe.

Infos supplémentaires:

Paramètres de Forgejo

Fonctionnalité miroir désactivée.
Autorisé aux visiteurs et à tous les utilisateurs
Autorisation admin aux admins
Autorisation api aux visiteurs
Autorisation container_registry aux visiteurs

Informations sur le client

Le code est poussé depuis un système Windows 11, dans le même sous-réseau que le serveur, avec l’utilitaire Git pour Windows.
J’ai utilisé les commandes conseillées par Forgejo à savoir
git remote add origin https://[mon url]
Puis git push -u origin master

Share relevant logs or error messages

J’ai essayé de vous mettre le lien YunoPaste mais je ne pouvais alors pas poster ce message car:
Une erreur est survenue : Nous sommes désolés, les nouveaux utilisateurs ne peuvent pas insérer de liens dans leurs messages.

Bienvenue !

Il semble bien y avoir une incompatibilité entre le SSO de YunoHost et ForgeJo. En attendant une analyse plus approfondie, sache que j’ai réussi à pousser du code en passant par SSH et l’URI proposée dans l’interface de ForgeJo commençant par ssh://. Il faut ajouter ta clé publique SSH dans ton profil au préalable.

git remote set-url origin ssh://forgejo@DOMAINE/USER/REPO.git
git push origin master

C’est ce que je fais tout en ayant forgejo non disponible pour les visiteurs.
J’ai par contre dû changer manuellement le port ssh dans le fichier de configuration de forgejo après avoir changé le port ssh yunohost. Je sais pas s’il y a un hook post ssh_port_change qui peut être utilisé pour mettre à jour automatiquement dans forgejo

Dommage, je comptais garder fermé le port SSH de mon serveur encore quelques temps, par prudence.

Dois-je remonter le bug sur le repo du projet ?

Au début je n’avais pas autorisé l’application aux visiteurs, mais j’avais une autre erreur:

fatal: unable to update url base from redirection:
  asked for: https://[nom de domaine]/forgejo/[utilisateur du compte]/[projet]/info/refs?service=git-receive-pack
   redirect: https://[nom de domaine]/yunohost/sso/?r=[...]

J’ai trouvé une erreur similaire pour Gogs (désolé, je n’ai pas l’autorisation pour mettre le lien dans le message), et la solution semblait être de “rendre l’application publique”, ce que j’ai interprété comme le fait d’ouvrir aux visiteurs, et je n’ai plus eu l’erreur.

Tu peux choisir la méthode https ou SSH. Tu ne peux pas fermer les deux portes et vouloir entrer :grin:.