DevOps Storage Plugin
DevOps Storage is the domain storage of the DWDO layer: a versioned SQLite schema for projects, work items, relations, settings and the audit trail, plus export and recovery as JSONL. Page content deliberately stays in DokuWiki. The package is meant for plugin developers of the suite and for operators who need to back up or restore data.
Getting started
Quickstart: your first export and its restore plan — the shortest path to a first result, in three steps.
Inspect the schema → Settle the boundary to the pages → Set up the export
Common tasks
| What you want | For whom | Where you do it | Instructions |
|---|---|---|---|
| see which tables exist | developers | – | The schema |
| decide whether data belongs here | developers | – | Boundary between database and pages |
| export data | operators | – | Export and recovery |
| restore data | operators | – | Export and recovery |
| change a setting | operators | configuration manager | Configuration |
| find the general SQLite service | developers | – | wkstorage |
Purpose
The domain storage of the DWDO layer: the versioned schema, a repository layer over prepared statements with unified errors, plus export and recovery as JSONL. The technical access comes from Storage; this plugin owns the tables.
Registered services (see Core): dwdo.storage, dwdo.repos, dwdo.export.
The schema
Version 013, 22 tables. Grouped by purpose:
| Area | Tables |
|---|---|
| Projects and domain data | dwdo_projects, dwdo_workitems, dwdo_relations, dwdo_risks, dwdo_queries, dwdo_settings |
| Audit trail | dwdo_audit |
| Pipelines | dwdo_pipelines, dwdo_pipeline_runs |
| Local Git repos (Git) | dwdo_git_repos, dwdo_git_repo_links, dwdo_source_links |
| ADO connection (Azure DevOps Connector) | dwdo_ado_connections, dwdo_ado_repo_map, dwdo_ado_workitem_map |
| ADO sync (prepared, no active plugin) | dwdo_ado_sync_state, dwdo_ado_sync_inbox, dwdo_ado_sync_outbox, dwdo_ado_sync_conflicts |
| ADO Git proxy (wkdoadogit) | dwdo_adogit_mounts, dwdo_adogit_user_tokens |
| Administration | schema_migrations |
Where the line between database and pages runs
Structured data into the database, content into pages. A work item has a state, relations and an audit trail — a table is right for that. Its description is text and belongs on a wiki page, where versioning, search, diff and export work without any extra effort.
See also the corresponding note in Storage.
Export and recovery
The dwdo.export service writes the data as JSONL — one line per record. The format is
line-based on purpose: it can be appended to, filtered with ordinary tools and read back in part,
and a damaged line costs one record instead of the whole file.
The recovery procedure is described in the plugin under RECOVERY.md.
Configuration
None. The storage location comes from Storage, the domain layout from the schema.
Package details
Plugin: wkdostorage
Namespace: lib/plugins/wkdostorage/
Author: Wolfgang van der Stille Wolfgang.van.der.Stille@gmail.com (The White Knight Labs)
License: GPL 2