Text-based requirements management using version control.
Project description
Introduction
Doorstop is a tool to manage the storage of textual requirements alongside source code in version control.
Each requirement item is stored as a YAML file in a designated directory. The items in each designated directory form a document. Document items can be linked to one another to form a document hierarchy. Doorstop provides mechanisms for modifying this hierarchy, checking the tree for consistency, and publishing documents in several formats.
Getting Started
Requirements
Python 3
Git or Veracity (for requirements storage)
Installation
Doorstop can be installed with pip or easy_install:
$ pip install Doorstop
After installation, Doorstop is available on the command-line:
$ doorstop --help
And the package is available under the name doorstop:
$ python >>> import doorstop >>> doorstop.__version__
Document Creation
Parent Document
After configuring version control, a new parent document can be created:
$ doorstop new REQ ./reqs created document: REQ (@/reqs)
Items can be added to the document and edited:
$ doorstop add REQ added item: REQ001 (@/reqs/REQ001.yml) $ doorstop edit REQ1 opened item: REQ001 (@/reqs/REQ001.yml)
Child Documents
Additional documents can be created that link to other documents:
$ doorstop new TST ./reqs/tests --parent REQ created document: TST (@/reqs/tests)
Items can be added and linked to parent items:
$ doorstop add TST added item: TST001 (@/reqs/tests/TST001.yml) $ doorstop link TST1 REQ1 linked item: TST001 (@/reqs/tests/TST001.yml) -> REQ001 (@/reqs/REQ001.yml)
Document Validation
To check a document hierarchy for consistency, run the main command:
$ doorstop valid tree: REQ <- [ TST ]
Document Publishing
A text report of a document can be displayed:
$ doorstop publish TST 1 TST001 Verify the foobar will foo and bar. Links: REQ001
Other formats are also supported:
$ doorstop publish TST --html <!DOCTYPE html> ... <body> <h1>1 (TST001)</h1> <p>Verify the foobar will foo and bar.</p> <p><em>Links: REQ001</em></p> </body> </html>
Or a file can be created using one of the supported extensions:
$ doorstop publish TST path/to/tst.md publishing TST to path/to/tst.md...
Supported formats:
Text: .txt
Markdown: .md
HTML: .html
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for Doorstop-0.0.11-py33-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a84b36f0925e999341884dada0f7c859888d339bd23bbbb28f3e5bfee55007f2 |
|
MD5 | 8da7285d63d7dfc1e574ad0b6378285f |
|
BLAKE2b-256 | 190afa9bf10dde7b858f331b7dec5629bfb09905d8e360c7ebe57ffda57a2f29 |