Trenutno dejavna stran: start » sl » Interna dokumentacija » Razširitve DokuWikija (WvdS) » ADO-Git » Prvi prikaz repozitorija ADO v wikiju

Prvi prikaz repozitorija ADO v wikiju

Vodnik pelje en repozitorij Azure DevOps od nič do vidne datoteke na strani wikija. Sedem razdelkov sledi vrstnemu redu, po katerem delate; zadnji je neobvezen.

Vrednosti v primerih so iz te namestitve. Zamenjajte jih s svojimi.

Kaj Vrednost v tem primeru
ključ projekta DWDO dwplugins
imenski prostor projekta sl:projects:dwplugins
ključ povezave wvds
osnovni naslov strežnika ADO https://devops.wvds.it/Me
projekt v Azure DevOpsu DokuWiki-Plugins
repozitorij wkdoadogit
imenski prostor priklopa code:dokuwiki-plugins:wkdoadogit

Predpogoji

  • Za povezavo potrebujete vlogo manage v projektu DWDO. Seznam povezav sme videti tudi bralec, ustvariti pa je ne more.
  • Za priklop potrebujete pravice nadskrbnika, saj priklop zapiše pravice za celotno mesto.
  • Nameščeni in vklopljeni morajo biti vtičniki wkcore, wkdocore, wkdostorage, wkdoado in wkdoadogit. Brez wksourceview se datoteke ne odprejo v predalu.
  • Projekt DWDO mora obstajati dvakrat: kot imenski prostor pod korenom projektov (v tej namestitvi {lang}:projects:) in kot zapis v shrambi DWDO. Brez zapisa se povezava ne shrani.
  • V nastavitvah vtičnika wkdoado mora biti ime strežnika ADO vpisano v ado_host_allow. Prazen seznam zavrne vsak klic.
  • Skrivnost (PAT) mora ležati zunaj baze, kot sklic vault:, file:, env: ali enc:.
  • Na strežniku mora biti na voljo razširitev PHP curl. Brez nje se brskalnik ne naloži in posrednik git odpove.
Pred prvim priklopom naredite varnostno kopijo datoteke conf/acl.auth.php. Priklop vanjo piše.

Povezava z Azure DevOpsom

Povezava opisuje strežnik ADO in pripada enemu projektu DWDO. Ne nastavlja se v skrbništvu, ampak na strani projekta.

  1. Odprite poljubno stran projekta in ji dodajte dejanje do=wkdoado, na primer /doku.php?id=sl:projects:dwplugins:start&do=wkdoado. Isti zaslon odpre ukazna paleta z vnosom Upravljajte povezave ADO.
  2. Če je povezava že na seznamu, si zapišite njen ključ in nadaljujte z naslednjim razdelkom.
  3. Izpolnite obrazec za novo povezavo: Ključ (wvds; dovoljeni znaki [A-Za-z0-9_-], največ 64), Naslov, Namestitev (services za storitev dev.azure.com ali server za lastno namestitev), Osnovni URL, po potrebi Organizacija (services) in Collection (server) ter Različica API (privzeto 7.0).
  4. Izberite Dodaj.
  5. V vrstici povezave izberite način skrivnosti (vault:, file:, env: ali enc:), vnesite vrednost in shranite. Pri načinu vault: je vrednost oznaka vnosa v vtičniku wkvault, v tej namestitvi adogit-service-pat.
  6. Izberite Preizkusi in počakajte na izid. Preizkus loči štiri vzroke: prepovedan strežnik, nedosegljiv cilj, napako potrdila in napako prijave.

Nadaljujte šele, ko preizkus uspe.

Pri načinu server je zbirka že del osnovnega naslova (https://devops.wvds.it/Me). Če izpolnite še polje Collection (server), se zbirka pripne drugič in vsak klic REST se konča z napako HTTP 404. Zbirko navedite samo na enem mestu.

Priklop repozitorija

Priklop veže repozitorij na imenski prostor wikija in zanj zapiše pravice.

  1. Odprite Skrbništvo > Priklopi repozitorijev ADO-Git, neposredno /doku.php?do=admin&page=wkdoadogit_mounts.
  2. Razprite Registriraj priklop.
  3. Na zaslonu 1. Povezava izberite povezavo. Na seznamu je zapisana kot projekt / ključ, na primer dwplugins / wvds. Izberite Naprej.
  4. Na zaslonu 2. Projekt ADO izberite projekt, na primer DokuWiki-Plugins. Seznam prebere povezava; kadar strežnik ne odgovori, zaslon to pove in ponudi prosto polje.
  5. Na zaslonu 3. Repozitoriji označite enega ali več repozitorijev, na primer wkdoadogit. Po potrebi prilagodite polje Predloga imenskega prostora in izberite raven vidnosti, nato izberite Predogled.
  6. Preberite zaslon 4. Predogled. Pokaže, kaj raven podeli, kateri imenski prostor bo nastal in vsako vrstico pravic, ki bo zapisana. Opozori tudi, če imenski prostor že nosi strani wikija.
  7. Izberite Registriraj.

Najprej se zapiše priklop, nato pravice. Če zapis pravic ne uspe, vas zaslon o tem obvesti; tihega vmesnega stanja ni.

Predloga imenskega prostora je privzeto code:{project}:{repo}. Nadomestka {project} in {repo} se zamenjata z imenoma iz Azure DevOpsa, morebitni {lang} pa ostane in se razširi po jezikih šele ob zapisu pravic.

Raven vidnosti

Raven je edino mesto, kjer se ureja vidnost. Pravice se preberejo ob vsaki zahtevi, zato sprememba ravni učinkuje takoj.

Raven Kdo koliko dobi Kaj to pomeni
private @ALL 0, @wvdse 8 vidijo samo uredniki in skrbniki
readonly @ALL 0, @user 2, @wvds 2, @wvdse 8 prijavljeni berejo in klonirajo, anonimni ne vidijo ničesar
public @ALL 2, @wvdse 8 bere in klonira lahko vsakdo
team @ALL 0, skupine vlog projekta (readers 1, contributors 2, maintainers 8), @wvdse 8 vidi samo ekipa tega projekta

Kaj posamezna številka pomeni v wikiju in kaj v tem vtičniku, pojasnjuje tehnična referenca.

Raven public podeli skupini @ALL stopnjo 2. Isto številko DokuWiki bere kot pravico do urejanja obstoječe strani. Na praznem imenskem prostoru to ni pomembno, na imenskem prostoru s stranmi wikija pa odpre urejevalnik vsem obiskovalcem.

Pravice ležijo v upravljanem bloku datoteke conf/acl.auth.php, med vrsticama # BEGIN wkdoadogit-managed in # END wkdoadogit-managed. Tega bloka ne urejajte ročno – namesto tega nastavite raven priklopa.

Imenski prostor priklopa

Po registraciji je repozitorij na seznamu priklopov, skupaj s svojim imenskim prostorom:

code:dokuwiki-plugins:wkdoadogit

Stolpec Pravila pove, ali se zapisane pravice ujemajo z ravnjo (written), manjkajo (NOT written) ali se razhajajo. Pri ravni public nastanejo v datoteki conf/acl.auth.php štiri vrstice:

# mount: code:dokuwiki-plugins:wkdoadogit (public)
code:dokuwiki-plugins:wkdoadogit	@ALL	2
code:dokuwiki-plugins:wkdoadogit:*	@ALL	2
code:dokuwiki-plugins:wkdoadogit	@wvdse	8
code:dokuwiki-plugins:wkdoadogit:*	@wvdse	8
Imenski prostor priklopa je navidezen. Nosi pravice, ne pa strani, in priklop nobene strani ne ustvari. Če odprete /doku.php?id=code:dokuwiki-plugins:wkdoadogit, boste videli prazno stran. To ni napaka – repozitorij pokaže šele naslednji razdelek.

Stran z brskalnikom repozitorija

Repozitorij se izriše tam, kjer avtor postavi vgradno oznako. Ta deluje samo na strani znotraj projekta DWDO, ker brskalnik poišče povezavo prek projekta te strani.

  1. Odprite stran repos svojega projekta v urejevalniku: /doku.php?id=sl:projects:dwplugins:repos&do=edit.
  2. Vstavite oznako {{wk:adogit>wvds:DokuWiki-Plugins:wkdoadogit}}.
  3. Shranite stran.

Zdaj se izrišeta glava z imenom repozitorija, značko ravni in imenom veje ter drevo korenske mape.

Zapis oznake je {{wk:adogit>povezava:projekt:repozitorij[:veja[:pot]]}}:

Del Pomen Če ga izpustite
povezava ključ povezave (wvds), ne njena številka je obvezen
projekt ime projekta v Azure DevOpsu je obvezen
repozitorij ime repozitorija je obvezen
veja veja, oznaka tag ali commit velja privzeta veja repozitorija
pot mapa, iz katere izhaja drevo velja koren repozitorija

Če želite brskalnik postaviti v stransko območje lupine, oznaki dodajte region=toc: {{wk:adogit>wvds:DokuWiki-Plugins:wkdoadogit region=toc}}.

Zavihka Branches in Tags v glavi sta vidna, vendar nedejavna. Prikazano vejo izberete v oznaki, ne v vmesniku.

Pripravljeno oznako ponudi tudi seznam priklopov: v vrstici priklopa odprite meni in izberite Prikaz tega repozitorija na strani wikija. Tam sta obe oznaki z že vstavljenimi vrednostmi.

Odpiranje mape in datoteke

Mapo v drevesu odprite tako, da jo izberete. Vsebina se naloži šele ob odprtju in pravica se pri tem preveri znova, zato drevo nikoli ne pride iz skupnega predpomnilnika strani.

Mapo lahko določite tudi vnaprej, s petim delom oznake:

{{wk:adogit>wvds:DokuWiki-Plugins:wkdoadogit:main:/Domain}}

Datoteko odprite tako, da jo izberete. Odpre se predal vtičnika wksourceview in datoteka se izriše z barvno označeno sintakso. Brez tega vtičnika predala ni, drevo pa ostane.

Kdor ima pravico pisanja, ima ob vsaki datoteki še gumb za urejanje, v glavi pa gumb Nova veja/oznaka. Postopek opisuje urejanje datoteke in commit iz wikija.

Nad drevesom je zložljiva plošča Kako dobiti ta repozitorij z naslovom za clone, prenosom arhiva ZIP in povezavo do osebnih žetonov. Pokaže se samo tistim, ki imajo raven vsaj 2; glejte kloniranje repozitorija.

Vgradnja izvorne kode

Ta razdelek je neobvezen. Posamezno datoteko lahko izrišete tudi neposredno na strani, brez brskalnika:

{{source>ado:wvds:DokuWiki-Plugins:wkdoadogit:main:/Domain/MountAclGate.php#L141-L146}}

Razliko med obema oznakama, nastavitve izrisa in meje opisuje prikaz izvorne kode na strani wikija.

Pričakovani rezultat

  • Stran sl:projects:dwplugins:repos prikaže glavo repozitorija wkdoadogit z značko ravni in imenom veje.
  • Mape se odpirajo, datoteke se odprejo v predalu z izvorno kodo.
  • Bralec brez pravice branja na imenskem prostoru code:dokuwiki-plugins:wkdoadogit na isti strani ne vidi ne drevesa ne imena repozitorija, temveč samo kartico s stanjem.
  • V datoteki conf/acl.auth.php so znotraj upravljanega bloka štiri vrstice tega priklopa.

Kdaj osebni žeton ni potreben

Osebni žeton je namenjen odjemalcem git, ne wikiju. Znotraj wikija ni potreben nikoli.

Dejanje Osebni žeton Kaj velja namesto tega
brskanje po drevesu ne pravica branja (raven 1 ali več) na imenskem prostoru priklopa
odpiranje datoteke in vgradnja z {{source>ado:…}} ne ista pravica branja
urejanje in commit iz wikija ne pravica pisanja (raven 8) na imenskem prostoru priklopa
prenos arhiva ZIP ne raven 2 ali več
git clone ali git pull zunaj wikija da raven 2 ali več in veljaven žeton
git push zunaj wikija da raven 4 ali več in veljaven žeton

Pri Azure DevOpsu se v vseh primerih prijavi storitveni račun. Osebni žeton pove samo, kdo v wikiju sprašuje.

Kaj storiti, če kaj ne deluje

Kar vidite Najverjetnejši vzrok
»Ta repozitorij ni povezan s tem wikijem.« oznaka navaja napačen ključ povezave, napačno ime projekta ali repozitorija, ali pa priklop ni registriran
»Za ta repozitorij nimate pravice branja.« priklop obstaja, raven pa vas ne zajema
»Storitev virov ADO ni na voljo.« povezava, seznam dovoljenih strežnikov, skrivnost ali manjkajoča razširitev curl
»Repozitorija ni bilo mogoče naložiti.« oznake ni bilo mogoče razčleniti ali pa navedena veja ne obstaja
stran prikaže golo besedilo oznake stran leži zunaj korena projektov ali vtičnik ni vklopljen

Podrobna diagnostika s postopki je v diagnostiki.

Naslednji koraki

sl/wiki/dwe/wkdoadogit/tutorial.txt · Zadnja sprememba: uporabnika 0.0.0.0