Skip to content

Workspace file

reqseq-workspace.yaml in the root of the main repository (D-041, SR-004). Names the repositories that belong together. Everyone has locally only those they may access; missing ones are shown as not available (N-041, SR-004 AK3). A single-repository workspace lists only itself (SR-004 AK2).

Field Type Required Description
reqseq-workspace 1 yes
name string yes
repositories array of repository yes The entry with main: true is the repository that holds this file. With two or more repositories exactly one has main: true; a single repository is the main one even without it. Names are unique (checked by ReqSeq; JSON Schema cannot express it).
metamodel location yes Where the metamodel lies: a folder in one of the repositories, the main one or its own (D-021, SR-011, SR-018).
evidence array of location no Folders with evidence records (Markdown) and JUnit XML files (SR-028 AK1). They may be in repositories of other tools.
baselines location no Where new baseline files are written. Default: folder baselines in the main repository.
filters location no Where saved filters are written (SR-070). Default: folder filters in the main repository.
mappings location no Where ReqIF mapping files are written (SR-054). Default: folder reqif in the main repository.
ignore array of string no Glob patterns of paths that are never read as elements, relative to each repository and anchored at its root, with / as separator (no \, no //). * matches any characters within one name, ? one character, ** as a whole name any number of names, including none; every other character is literal (no [...], no {a,b}). Case-sensitive on every OS; wildcards match names starting with .. A leading / or ./ and a trailing / are dropped; x/** matches folder x itself, so it is skipped as a whole. Example: website/**, **/*.draft.md. .git and node_modules are always ignored.

Type: object.

Field Type Required Description
name string yes
url string yes Address of the repository on the Git server. Informational: ReqSeq never clones or fetches (D-036).
path string no Expected local location relative to the main repository, with / as separator. Default ../<name>; always . for the main repository. Absolute paths and \ are warned about (an absolute path is ignored); there is no ~ expansion. A person can override it in the untracked file .reqseq/local.yaml.
main boolean no Default: false.

Type: object.

Field Type Required Description
main true yes

Type: object.

Field Type Required Description
repository string yes
path relativePath yes Path relative to the repository or file it appears in, forward slashes, no .. segments.
reqseq-workspace: 1
name: Weather station
repositories:
- { name: system, url: "git@git.example.com:ws/system.git", path: ".", main: true }
- { name: metamodel, url: "git@git.example.com:ws/metamodel.git" }
- { name: subsystem-sensor, url: "git@git.example.com:ws/subsystem-sensor.git" }
- { name: confidential, url: "git@git.example.com:ws/confidential.git" }
metamodel: { repository: metamodel, path: model }
evidence:
- { repository: system, path: evidence }
- { repository: subsystem-sensor, path: test-results }
baselines: { repository: system, path: baselines }
filters: { repository: system, path: filters }
mappings: { repository: system, path: reqif }
ignore: ["docs/**"]