My user
🛈 Informations
Describe an user with a list of informations.
Path: user
Variable |
Description |
user.surname |
The user’s surname. |
user.firstname |
The user’s first names. |
user.secret |
The secret of the user. |
Rougail is a robust and powerful, free/open-source configuration manager. In this context, "configuration" must be understood as a set of variables whose values are of high quality, consistent, and subject to access control. This configuration will then be used by other tools.
Rougail the single source of truth for your variables
Rougail is a library written in Python but is generally used directly from the command line.
Rougail is also a format — a Domain-Specific Language for describing variables that uses pure YAML and Jinja templates.
The variable itself becomes a software artifact; variables are described in the Rougail format language — the structured data; which is written in source code file — the structured file.
The variable is defined at compile time — structural data; the value is loaded and validated at runtime — user data.
The variables are centralized and can then be used in specialized applications — output.
Rougail allows variables to be marked as "secrets" so they are not unnecessarily exposed.
The structured data are written in Rougail format. This format is a variable-first DSL (Domain-Specific Language) designed for describing variables, consistency and describe the relationships between variables in a declarative style.
| Variable lifecycle | Mutability | Value |
|---|---|---|
Creation Initialize |
Mutable | Mutable default value |
We refer to "user data" for modified values, as opposed to default values. While "structural data" is defined in a unique way, "user data" can originate from various sources.
| Variable lifecycle | Mutability | Value |
|---|---|---|
Reading Assignment Access control |
Immutable | Read write |
We now have variables and values assigned to them. We need to use them. There are two types of outputs: outputs specific to Rougail and data exports.
| Variable lifecycle | Mutability | Value |
|---|---|---|
Reading Access control |
Immutable | Read only |
Outputs specific to Rougail
Outputs format
Describe an user with a list of informations.
Path: user
| Variable | Description |
|---|---|
| user.surname string mandatory | The user's surname. |
| user.firstname string multiple mandatory unique | The user's first names. |
| user.secret secret mandatory | The secret of the user. Validator: "The user's surname" (user.surname) must not part of the secret |
🛈 Informations
Describe an user with a list of informations.
Path: user
Variable |
Description |
user.surname |
The user’s surname. |
user.firstname |
The user’s first names. |
user.secret |
The secret of the user. |
🛈 Informations
Describe an user with a list of informations.
Path: user
| Variable | Description |
|---|---|
user.surnamestring mandatory | The user's surname. |
user.firstnamestring multiple mandatory unique | The user's first names. |
user.secretsecret mandatory | The secret of the user. Validator: "The user's surname" must not part of the secret |
Outputs data exports
Rougail is an open-source project made with ❤️.