This repository is intended as a place to collect architectural / technical decisions.
Those may be in the form of "Any Decision Records" (ADR), protocols or images. Images must be accompanied by a text file with a matching name that explains its context, references etc.
Please be aware that the information here is public and that this repository may be synchronized to Github.
For records about internal decisions see the private repository univention/internal/decision-records.
To do a full-text search in this repository, open the left menu panel and click on the magnifying glass icon 🔎 , type slash (Shift-7: /
) or by clicking on this link: https://git.knut.univention.de/search?search=&nav_source=navbar&project_id=856&group_id=3&search_code=true&repository_ref=main
- Top level directories should be products or concerns, not teams.
- Cross-cutting concerns (e.g. logging, security, deployment) may be found at higher levels than affected software.
- Please do not add more than one level of subdirectories.
- Here is an example directory structure. It's just an example - you and your team know best.
- For new ADRs, please use
adr-template.md
as basis. - We are implementing ADR in the form of Markdown Any Decision Records (MADR).
- Please use Markdown files and a format that renders well in Gitlab: CommonMark or GitLab Flavored Markdown.
- A well established process for adding an ADR is:
- Create a branch.
- Copy the template.
- Adapt the contents. In the metadata at the top set
status: proposed
. - Create a merge request (MR) and invite your team via email and in the daily to comment on the MR.
- When all discussion threads are resolved (or nobody has commented for a week), send an email with a deadline.
- When the deadline expires without a veto the ADR is
status: accepted
and you can merge the branch intomain
.
Please install pre-commit
before committing to this repository:
pip install pre-commit
pre-commit install --install-hooks
pre-commit run -a