Technical reference
Reference for wkdoadogit: mount management, the markup, every action with its address, the personal access tokens, and every setting. Why things are built this way is in Concepts; what you want to do is on ADO-Git.
Package: wkdoadogit · Location: lib/plugins/wkdoadogit/
Author: Wolfgang van der Stille Wolfgang.van.der.Stille@gmail.com (The White Knight Labs) · Licence: GPL 2.0-only
Managing mounts
The screen is at /doku.php?do=admin&page=wkdoadogit_mounts, in the menu under Admin > ADO-Git Repo Mounts. It is reserved for administrators, because site-wide permissions are written here.
- Registration runs through a wizard of four screens: connection, project, repositories (with the namespace template and the tier) and preview. The connection supplies the project and repository lists; a free-text field appears only when the server does not answer.
- Preview is the only screen that writes. It shows every permission line that will be created and warns when the namespace already holds wiki pages.
- Change the tier or the namespace: in the mount's row menu, adjust the namespace field and the tier selector, then choose Save. Both change in one step, and the old rules are dropped only after the move succeeds.
- Removal: choose Remove in the row menu.
- The row menu also carries the clone address per language and the ready-made markup for showing the repository on a wiki page.
Every action writes the mount first and the permissions second.
Syntax
| Markup | Grammar | What it renders | Where it works |
|---|---|---|---|
{{wk:adogit>…}} | connection:project:repo[:ref[:path]], optional suffix region=<name> | a tree of folders and files | only on a page below the project root |
{{source>ado:…}} | connection:project:repo:ref:path, optional suffix #L10-L40 | the content of a single file | on a page below the project root, or inside the mount namespace |
The first field is the connection key, not its number; it is looked up inside the DWDO project the page belongs to. With {{wk:adogit>…}} an omitted ref means the default branch and an omitted path means the root. With {{source>ado:…}} all five fields are mandatory.
The {{source>ado:…}} markup needs wksourceview. Without it the ado scheme is not registered and the rendering reports that the source is unavailable. Details and display options are in Show source code on a wiki page.
Actions and entry points
| Address | Who | Purpose |
|---|---|---|
do=admin&page=wkdoadogit_mounts | administrator | mounts and their tiers |
do=admin&page=wkdoadogit_svn | administrator | Subversion connections; no ADO organisation required |
do=admin&page=wkdoadogit | manager | access tokens of all users |
do=wkdoadogit_tokens | any signed-in user | one's own access tokens |
do=wkdoadogit_archive&ns=…&ref=… | level 2 or more | download a snapshot as a ZIP archive |
do=wkdoadogit_diag | – | table of resolved services |
do=wkdoadogit_stepup | – | bridge for proving a second factor |
lib/plugins/wkdoadogit/git.php/<mount-path> | git client | proxy for clone, pull and push |
Connections are not maintained here but in wkdoado, on a project page with the action do=wkdoado.
Personal access tokens
External git clients authenticate at the proxy as a wiki user, using a personal token; the wiki password does not belong in a git client. Every signed-in user manages their own tokens at /doku.php?do=wkdoadogit_tokens, administrators additionally in the ADO-Git access tokens menu. Only a hashed value is stored; the plaintext appears exactly once, at issue time. Every token begins with the prefix wkg_.
clone needs level 2 and push needs level 4. At levels 4 to 7 only branches below refs/heads/users/<login>/ are permitted. The procedure is in Clone a mounted repository.
Configuration
| Key | Default | Effect |
|---|---|---|
mount_languages | de,en,hr,it,sl | the language segments a mount carrying the {lang} placeholder expands into |
The package deliberately has no other settings: the connection comes from wkdoado, the permissions from DokuWiki, the mounts from storage.
Engineering notes (for operators and developers): Commissioning the git proxy on the portable stack · Where the mount registration gets its tier vocabulary.
Further reading: the README file in the wkdoadogit repository; the package overview is in the DWE overview.
Builds on: wkcore (service registry) · wkdocore (project and roles) · wkdostorage (mounts and tokens) · wkdoado (the Azure DevOps connection) · wksourceview (source and drawer) · wkfluentui (components and document header).
Not to be confused with wkdogit, which serves local repositories through a git binary, strictly read-only.
wkcore, wkdocore, wkdostorage, wkdoado, wksourceview, wkfluentui and wkdogit currently exist in German only, so those links lead there.
Related topics
- ADO-Git — entry point and common tasks
- Concepts — mounts, visibility tier, second factor, limits
- Tutorial — from the connection to a visible file
- wkdoado (de) — the connection this package builds on
- Clone a repository — the same endpoint from the user's side