[spip-dev] [Spip-zone-commit] r119346 - in _core_/plugins/medias

Hop,

Author: brunob
Date: 2019-12-26 17:41:43 +0000 (Thu, 26 Dec 2019)
New Revision: 119346

Details: Connexion · GitLab

Pour info, j'ai reçu ce message d'erreur en poussant ce commit en git, et le commit ne semble pas être passé sur git cf spip / medias · GitLab

Décompte des objets: 12, fait.
Delta compression using up to 8 threads.
Compression des objets: 100% (12/12), fait.
Écriture des objets: 100% (12/12), 2.09 KiB | 0 bytes/s, fait.
Total 12 (delta 9), reused 0 (delta 0)
remote: Fetching revisions from SVN repository:
remote: up to date
remote: Sending commits to SVN repository:
remote: de8ad01 => r119346 plugins/medias
remote:
remote: SubGit ERROR REPORT (SubGit version 3.3.5 ('Bobique') build #4042):
remote:
remote: You've received this message because SubGit (http://subgit.com/) is installed in your repository
remote: and an error that needs to be dealt with has occurred in SubGit translation engine.
remote:
remote: TEMPORARY ERROR:
remote: Failed to push some refs to Subversion repository.
remote: Creating directories for /var/git/gitea/spip/repositories/spip/medias.git/refs/svn/root/plugins failed
remote:
remote: CURRENT STATE:
remote: Both Git and Subversion repository are open for pushes or commits.
remote: Your commit was not committed, but you may retry it.
remote:
remote: TO RECOVER:
remote: A) Address the problem if possible and then retry commit
remote: OR
remote: B) Run on the server
remote: $ subgit uninstall /var/git/gitea/spip/repositories/spip/medias.git/.
remote:
remote: IMPORTANT: As soon as SubGit is uninstalled, both Git and Subversion repositories
remote: will become open, but no synchronization will take place.
remote:
remote: TO REPORT:
remote: Report an issue at http://issues.tmatesoft.com/
remote: You may find logs on the server at '/var/git/gitea/spip/repositories/spip/medias.git/./subgit/logs'
remote:
remote: THANK YOU!
To git@git.spip.net:SPIP/medias.git
  ! [remote rejected] master -> master (pre-receive hook declined)
error: impossible de pousser des références vers 'git@git.spip.net:SPIP/medias.git'

Il me semble que tu as eu le même souci que moi.
A Camille de confirmer opu pas.
Mais le Grand Changement est en marche :stuck_out_tongue:

Un autre commit foiré, cette fois on dirait bien que je me suis fait jeter sur svn et git :\

Décompte des objets: 21, fait.
Delta compression using up to 8 threads.
Compression des objets: 100% (20/20), fait.
Écriture des objets: 100% (21/21), 27.91 KiB | 0 bytes/s, fait.
Total 21 (delta 10), reused 0 (delta 0)
remote: Fetching revisions from SVN repository:
remote: up to date
remote: Sending commits to SVN repository:
remote:
remote: SubGit ERROR REPORT (SubGit version 3.3.5 ('Bobique') build #4042):
remote:
remote: You've received this message because SubGit (http://subgit.com/) is installed in your repository
remote: and an error that needs to be dealt with has occurred in SubGit translation engine.
remote:
remote: TEMPORARY ERROR:
remote: Unable to parse packet status (error (427:Failed to push some refs to Subversion repository.
remote: svn: E204899: Cannot write to '/var/git/gitea/spip/repositories/spip/plan.git/objects/64/c8eebb87be51df85e7fe51d80c6a4918feccd0': /var/git/gitea/spip/repositories/spip/plan.git/objects/64/c8eebb87be51df85e7fe51d80c6a4918feccd0 (Permission non accordée)
remote: /var/git/gitea/spip/repositories/spip/plan.git/objects/64/c8eebb87be51df85e7fe51d80c6a4918feccd0 (Permission non accordée)
remote: 3762:org.tmatesoft.translator.util.f: Failed to push some refs to Subversion repository.
remote: at org.tmatesoft.translator.util.f.c(SourceFile:109)
remote: at org.tmatesoft.translator.daemon.E.a(SourceFile:88)
remote: at org.tmatesoft.translator.daemon.C.c(SourceFile:80)
remote: at org.tmatesoft.translator.daemon.g.a(SourceFile:336)
remote: at org.tmatesoft.translator.daemon.g.a(SourceFile:44)
remote: at org.tmatesoft.translator.daemon.g$1.run(SourceFile:307)
remote: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
remote: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
remote: at java.lang.Thread.run(Thread.java:748)
remote: Caused by: org.tmatesoft.translator.util.f: svn: E204899: Cannot write to '/var/git/gitea/spip/repositories/spip/plan.git/objects/64/c8eebb87be51df85e7fe51d80c6a4918feccd0': /var/git/gitea/spip/repositories/spip/plan.git/objects/64/c8eebb87be51df85e7fe51d80c6a4918feccd0 (Permission non accordée)
remote: at org.tmatesoft.translator.util.f.c(SourceFile:109)
remote: at org.tmatesoft.translator.util.f.b(SourceFile:75)
remote: at org.tmatesoft.translator.k.ad.a(SourceFile:2212)
remote: at org.tmatesoft.translator.k.ad.a(SourceFile:2101)
remote: at org.tmatesoft.translator.k.d.h.b(SourceFile:397)
remote: at org.tmatesoft.translator.k.d.h.a(SourceFile:173)
remote: at org.tmatesoft.translator.daemon.G.a(SourceFile:493)
remote: at org.tmatesoft.translator.daemon.G.call(SourceFile:475)
remote: at java.util.concurrent.FutureTask.run(FutureTask.java:266)
remote: at org.tmatesoft.translator.daemon.L.a(SourceFile:436)
remote: at org.tmatesoft.translator.daemon.E.run(SourceFile:261)
remote: Caused by: com.syntevo.svngitkit.core.b.i: svn: E204899: Cannot write to '/var/git/gitea/spip/repositories/spip/plan.git/objects/64/c8eebb87be51df85e7fe51d80c6a4918feccd0': /var/git/gitea/spip/repositories/spip/plan.git/objects/64/c8eebb87be51df85e7fe51d80c6a4918feccd0 (Permission non accordée)
remote: at com.syntevo.svngitkit.core.b.i.a(SourceFile:29)
remote: at com.syntevo.svngitkit.core.internal.am.a(SourceFile:476)
remote: at com.syntevo.svngitkit.core.internal.ae.a(SourceFile:395)
remote: at org.tmatesoft.translator.j.b.f.a(SourceFile:37)
remote: at org.tmatesoft.translator.j.b.b.a(SourceFile:167)
remote: at org.tmatesoft.translator.j.F.a(SourceFile:336)
remote: at com.syntevo.svngitkit.core.c.O.c(SourceFile:43)
remote: at com.syntevo.svngitkit.core.c.O.b(SourceFile:36)
remote: at org.tmatesoft.translator.k.ad.a(SourceFile:2196)
remote: ... 8 more
remote: Caused by: org.tmatesoft.svn.core.SVNException: svn: E204899: Cannot write to '/var/git/gitea/spip/repositories/spip/plan.git/objects/64/c8eebb87be51df85e7fe51d80c6a4918feccd0': /var/git/gitea/spip/repositories/spip/plan.git/objects/64/c8eebb87be51df85e7fe51d80c6a4918feccd0 (Permission non accordée)
remote: at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:91)
remote: at org.tmatesoft.svn.core.internal.wc.SVNFileUtil.openFileForWriting(SVNFileUtil.java:1649)
remote: at org.tmatesoft.svn.core.internal.wc.SVNFileUtil.openFileForWriting(SVNFileUtil.java:1622)
remote: at org.tmatesoft.svn.core.internal.wc.SVNFileUtil.copyFile(SVNFileUtil.java:1021)
remote: at org.tmatesoft.svn.core.internal.wc.SVNFileUtil.copyFile(SVNFileUtil.java:948)
remote: at org.tmatesoft.svn.core.internal.wc.SVNFileUtil.copy(SVNFileUtil.java:936)
remote: at com.syntevo.svngitkit.core.internal.am.a(SourceFile:474)
remote: ... 15 more
remote: Caused by: java.io.FileNotFoundException: /var/git/gitea/spip/repositories/spip/plan.git/objects/64/c8eebb87be51df85e7fe51d80c6a4918feccd0 (Permission non accordée)
remote: at java.io.FileOutputStream.open0(Native Method)
remote: at java.io.FileOutputStream.open(FileOutputStream.java:270)
remote: at java.io.FileOutputStream.<init>(FileOutputStream.java:213)
remote: at org.tmatesoft.svn.core.internal.wc.SVNFileUtil.createFileOutputStream(SVNFileUtil.java:1664)
remote: at org.tmatesoft.svn.core.internal.wc.SVNFileUtil.openFileForWriting(SVNFileUtil.java:1641)
remote: ... 20 more
remote: )
remote:
remote: CURRENT STATE:
remote: Both Git and Subversion repository are open for pushes or commits.
remote: Your commit was not committed, but you may retry it.
remote:
remote: TO RECOVER:
remote: A) Address the problem if possible and then retry commit
remote: OR
remote: B) Run on the server
remote: $ subgit uninstall /var/git/gitea/spip/repositories/spip/plan.git/.
remote:
remote: IMPORTANT: As soon as SubGit is uninstalled, both Git and Subversion repositories
remote: will become open, but no synchronization will take place.
remote:
remote: TO REPORT:
remote: Report an issue at http://issues.tmatesoft.com/
remote: You may find logs on the server at '/var/git/gitea/spip/repositories/spip/plan.git/./subgit/logs'
remote:
remote: THANK YOU!
To git@git.spip.net:SPIP/plan.git
  ! [remote rejected] master -> master (pre-receive hook declined)
error: impossible de pousser des références vers 'git@git.spip.net:SPIP/plan.git'

Salut

Je viens de regarder dans les différents cas remontés c'est un
problème de droits.
Je viens de trouver ma bétise j'ai lancé le demon qui met à jour les
dépôts en fond de tache avec le mauvais compte. Du coup on jongle avec
2 comptes pour écrire sur les dépôts.

Je viens de mettre à jours les droits sur l'ensemble des dépots. Pour
confirmer mon analyse j'ai coupé le démon (cela n'a pas d'impact pour
git/svn)
J'ai resyncrhonisé https://git.spip.net/SPIP/medias (et plan)

Un git pull --rebase est conseillé avant de retenter de pousser les commits.

Km

Salut,

c'est quand même inquiétant s'il faut que tu vérifies à chaque commit à quel endroit ça a cafouillé, et s'il faut dire à tout le monde de rebaser.
Inquiétant, mais surtout contre productif...

Hop,

Salut

> Je viens de regarder dans les différents cas remontés c'est un
> problème de droits.
> Je viens de trouver ma bétise j'ai lancé le demon qui met à jour les
> dépôts en fond de tache avec le mauvais compte. Du coup on jongle avec
> 2 comptes pour écrire sur les dépôts.

[...]

c'est quand même inquiétant s'il faut que tu vérifies à chaque commit à
quel endroit ça a cafouillé,

Comme je viens de dire j'ai merdé la configuration. C'est donc une
erreur humaine.
Sur le premier retour celui d'Eric comme c'était alors un incident
isolé je n'ai pas cherché outre mesure.
Sur le second retour, j'ai pensé que j'avais merdé sur ce cas précis,
car il y avait eu plusieurs échanges autour du plugin incriminé. Et je
pensais simplement avoir fait une fausse manipulation sur ce cas
précis. Sur le troisième retour, car jamais 2 sans 3, j'ai compris que
le problème devait être plus global. J'ai donc regardé plus
attentivement les différents retours et constaté que le problème était
toujours le même, un problème de droit sur certains fichiers git.
Dans le détail j'ai vu après coup que j'avais relancé un démon avec le
mauvais compte (en root). Les autres scripts sont lancés depuis root
mais avec bascule sur sur le bon compte. Pour le démon cette
correction d'utilisateur et j'ai oublié de faire ce contrôle en
voulant faire vite et bien (ce qui va rarement bien ensemble).
J'ai donc stoppé le démon incriminé, remis les droits sur l'ensemble
des dépôts et relancé le démon avec le bon compte.

Donc c'est un problème d'analyse du problème initial.

> Un git pull --rebase est conseillé avant de retenter de pousser les commits.
et s'il faut dire à tout le monde de rebaser.

En aucun cas cela a été demandé à tout le monde mais uniquement à une
personne en particulier dans un contexte particulier.

De plus je constate une mauvais compréhension de la commande. Avant de
commiter sur un projet git tu devrais *toujours* faire un git pull
--rebase (c'est l'équivalent du svn checkout).
A noter que --rebase est par défaut dans les version récente de git,
il est facultatif. Toutefois comme on peut personnaliser ce
comportement, je préfères indiquer la commande complète.

Git pull (--rebase est par défaut sur les versions récentes de git)
permet de resynchroniser sur la branche locale les commits présents
sur le dépôt distant. Du fait du cafouillage avec le démon, dans le
cas présent on peut considérer que l'utilisateur svn a commité et que
par conséquent la branche locale n'est pas à jour vis à vis du dépôt
distant.
Un git push avant aurait (probablement) simplement indiqué qu'il y a
des commits d'écarts et aurait invité à faire la commande indiquée
précédemment.

Inquiétant, mais surtout contre productif...

Contre productif non, car cette commande tu devrais la faire
systématiquement avant de commiter. Et comme là j'ai fait une erreur
de configuration c'était encore plus conseillé.

Km

Ok, merci pour les explications.