Ti trovi qui: start » it » Documentazione interna » Estensioni DokuWiki (WvdS) » ADO-Git » Diagnostica

Diagnostica

Ogni sezione descrive un sintomo. Ovunque vale questa installazione di DokuWiki con il plugin wkdoadogit installato e attivo, salvo diversa indicazione. Il termine mount indica il legame fra un repository e uno spazio dei nomi del wiki, il termine livello il grado di visibilità di quel mount.

Le schede di stato nel browser sono volutamente laconiche. Un repository non montato, una connessione sconosciuta e un permesso mancante sono a stento distinguibili dall'esterno, perché la differenza rivelerebbe di per sé che cosa esiste. Nella ricerca della causa partite quindi dall'elenco dei mount e non dal testo della scheda.

La pagina mostra il testo della marcatura in chiaro

Ambiente. Sulla pagina si trova {{wk:adogit>…}} e viene reso come testo ordinario.

Causa. Il plugin non è attivo, oppure la marcatura è spezzata su più righe. Una marcatura deve stare su una sola riga di origine.

Rimedio. Verificate nel gestore delle estensioni che wkdoadogit sia attivo e portate la marcatura su una sola riga. Se la pagina era già stata resa, salvatela ancora una volta.

Compare «Questo repository non è collegato a questo wiki»

Ambiente. Al posto dell'albero viene resa una scheda con quel testo.

Causa. La ricerca non ha trovato né una connessione con la chiave indicata né un mount per la terna connessione, progetto e repository. Entrambi i casi producono lo stesso testo. Le due varianti più frequenti: nel primo campo della marcatura c'è il numero della connessione invece della sua chiave, oppure il nome del progetto o del repository differisce da quello registrato.

Rimedio. Aprite Amministrazione > Mount dei repository ADO-Git e leggete nella riga del mount la colonna Repository ADO. Lì compare progetto/repository esattamente come è registrato. La chiave della connessione la mostra la stessa schermata nella procedura, nella forma progetto / chiave. Il modo più rapido è copiare la marcatura dal menu di riga del mount, voce Mostra questo repository in una pagina wiki.

La scheda resta anche dopo aver corretto la marcatura

Ambiente. La marcatura è verificatamente corretta, ma la pagina si trova fuori dallo spazio dei nomi dei progetti.

Causa. Il browser cerca la connessione attraverso il progetto DWDO della pagina su cui si trova. Fuori dalla radice dei progetti (qui {lang}:projects:) il progetto non si risolve e nessuna connessione è reperibile.

Rimedio. Spostate la marcatura su una pagina interna al progetto, per esempio it:projects:<progetto>:repos. Per un singolo file vale un'eccezione: la marcatura {{source>ado:…}} funziona anche su una pagina dentro lo spazio dei nomi del mount.

Compare «Non avete il permesso di lettura su questo repository»

Ambiente. Il mount è registrato, il lettore è autenticato oppure anonimo.

Causa. Il livello del mount non comprende quel lettore. Il livello private esclude tutti tranne i redattori, readonly esclude gli anonimi, team tutti coloro che stanno fuori dai gruppi di ruolo del progetto.

Rimedio. Nel menu di riga del mount scegliete un altro livello e poi Salva. La modifica ha effetto immediato, perché i permessi si leggono a ogni richiesta. Non correggete i permessi a mano: il blocco gestito viene sovrascritto alla scrittura successiva.

La colonna «Regole» dice «NOT written» oppure mostra un altro livello

Ambiente. L'elenco dei mount nell'amministrazione.

Causa. Il mount è nell'archivio, ma i permessi corrispondenti in conf/acl.auth.php mancano o divergono. Ciò accade quando la scrittura dei permessi non è riuscita (permessi del file) oppure quando il blocco gestito è stato modificato all'insaputa di questa schermata.

Rimedio. Nel menu di riga del mount scegliete di nuovo il livello e poi Salva. Viene riscritto solo il blocco fra # BEGIN wkdoadogit-managed e # END wkdoadogit-managed; tutte le altre regole restano intatte. Se lo stato resta NOT written, verificate i permessi di scrittura sul file conf/acl.auth.php.

Un vecchio mount risulta «private» mentre le regole corrispondono a «team»

Ambiente. Un mount registrato con una versione più vecchia del plugin. Nell'elenco compare il livello private e la colonna Regole segnala una divergenza.

Causa. Lo strato di registrazione conosceva un tempo solo i livelli private, readonly e public e sostituiva in silenzio ogni altro valore con private. I permessi venivano comunque scritti secondo il livello team scelto, perciò archivio e file divergevano. La registrazione accetta ora ogni livello noto allo scrittore delle regole, quindi i mount nuovi non presentano questo difetto.

Rimedio. Nel menu di riga del mount scegliete il livello team e poi Salva. Il mount viene memorizzato con il livello scelto e le regole vengono rinnovate. Dopo di ciò la colonna Regole corrisponde.

Compare «Il servizio sorgente ADO non è disponibile»

Ambiente. Al posto dell'albero viene resa una scheda con quel testo, oppure il cassetto segnala che la sorgente non è raggiungibile.

Causa. Uno degli strati sotto il browser non risponde: manca l'estensione curl, l'impostazione ado_host_allow è vuota o errata, il segreto non è raggiungibile, oppure la connessione è caduta.

Rimedio.

  1. Aprite /doku.php?do=wkdoadogit_diag. La tabella mostra quale servizio si risolve e quale no.
  2. Su una pagina di progetto aprite do=wkdoado e scegliete Prova sulla connessione. La prova distingue server vietato, destinazione irraggiungibile, errore del certificato ed errore di autenticazione.
  3. Verificate che in ado_host_allow ci sia esattamente il nome del server. Quell'elenco non conosce caratteri jolly e un elenco vuoto rifiuta tutto.
  4. Verificate l'estensione curl. Senza di essa il connettore si dichiara inattivo.

Ogni chiamata REST termina con l'errore 404

Ambiente. Una connessione di tipo server verso un'installazione propria di Azure DevOps.

Causa. La collection è indicata due volte, nell'indirizzo base (https://devops.wvds.it/Me) e nel campo Collection (server). Il costruttore degli indirizzi la aggiunge una seconda volta.

Rimedio. Svuotate il campo Collection (server) oppure togliete la collection dall'indirizzo base, poi ripetete la prova.

git clone risponde 404 prima di chiedere l'autenticazione

Ambiente. Il proxy git su un server Apache.

Causa. Apache rifiuta per impostazione predefinita i percorsi nella forma …/git.php/code/progetto/repository/info/refs, perché AcceptPathInfo è disattivato. La richiesta termina prima che PHP si avvii.

Rimedio. Usate il file .htaccess fornito nella cartella del plugin, che attiva l'opzione solo per git.php. Il file web.config fornito vale esclusivamente per IIS e su Apache non produce alcun effetto.

git clone risponde 401 benché il token sia corretto

Ambiente. Il proxy git, autenticazione con il protocollo HTTP Basic.

Causa. Il token è stato revocato, è scaduto oppure è stato rilasciato prima della rinomina del prefisso. Ne è memorizzato solo il valore con hash, quindi un vecchio token non si può trasferire a un nuovo prefisso. L'altra possibilità: il livello del mount non consente a un lettore anonimo di eseguire clone e le credenziali non sono state inviate affatto.

Rimedio. Rilasciate un nuovo token all'indirizzo /doku.php?do=wkdoadogit_tokens e memorizzatelo nel client. Verificate inoltre che il token viaggi come password; il nome utente è il vostro nome di accesso al wiki.

git push risponde 403

Ambiente. Il comando clone funziona, push no.

Causa. Per push serve almeno il livello 4, mentre per clone basta già il 2. Se vi trovate fra 4 e 7, sono ammessi solo rami sotto il vostro prefisso.

Rimedio. Inviate verso refs/heads/users/<login>/ oppure chiedete un livello che conceda l'8. I dettagli sono in clonare un repository.

Il commit dal wiki segnala «conflict»

Ambiente. L'editor per singoli file nel browser.

Causa. Il file è cambiato dopo l'apertura dell'editor. Il commit si applica sempre alla revisione che l'autore ha visto; una base diversa viene rifiutata dal server anziché sovrascrivere la modifica altrui.

Rimedio. Chiudete l'editor, riaprite il file e ripetete la modifica sulla nuova base.

Lo spazio dei nomi del mount mostra una pagina vuota

Ambiente. Chiamata dell'indirizzo /doku.php?id=code:dokuwiki-plugins:wkdoadogit.

Causa. Lo spazio dei nomi del mount è virtuale. Porta permessi ma non pagine, e il mount non ne crea alcuna.

Rimedio. Non è un guasto. Il repository lo mostra una pagina con la marcatura {{wk:adogit>…}} interna al progetto; vedi la guida, la pagina con il browser.

Singole etichette dell'interfaccia compaiono in inglese

Ambiente. Interfaccia in italiano, una qualsiasi schermata del plugin.

Causa. DokuWiki carica prima i testi inglesi e vi sovrappone la lingua scelta. Una chiave che il file italiano non possiede resta perciò in inglese. È un comportamento voluto e non un difetto di installazione; è ciò che impedisce all'interfaccia di mostrare un'etichetta vuota.

Rimedio. In questa versione tutte le etichette di wkdoadogit e wkdoado sono tradotte, perciò un'etichetta inglese indica una versione installata più vecchia. Confrontate il file lib/plugins/wkdoadogit/lang/it/lang.php con quello inglese omonimo: una chiave che il file italiano non possiede è la traduzione mancante.

Argomenti correlati

it/wiki/dwe/wkdoadogit/troubleshooting.txt · Ultima modifica: da 0.0.0.0