scaffold/doc/scaffold_file_format.md

2.1 KiB

Format du fichier scaffold.yml

Le fichier scaffold.yml est au format YAML. C'est ce fichier qui permet de définir les données à injecter dans les modèles lors de la génération d'un nouveau projet avec la commande scaffold from ....

Schéma

# Version du format de fichier. Actuellement, la seule valeur possible est 1.
version: 1

# Liste des variables à injecter dans les modèles de fichier
vars:
    - <Var> 
#   - <Var>...

Types

<Var>

Définition d'une variable injectable dans les modèles de fichier.

Schéma

# Type de la variable. Actuellement, la seul valeur possible est "string"
type: "string"

# Nom de la variable. C'est le nom qui permettra d'accéder à la valeur de la variable dans les modèles de fichiers.
name: <string>

# Description de la variable. C'est le texte qui sera affiché dans l'invite de commande au moment de la génération de l'arborescence de fichiers.
description: <string>

# Liste des contraintes appliquées à la valeur de la variable. La valeur est considérée comme invalide tant que l'ensemble des contraintes ne sont pas remplies.
constraints: 
    - <Constraint>
#   - <Constraint>...

<Constraint>

Définition d'une contrainte appliquée à la valeur d'une variable.

# Règle de validation à appliquer à la valeur entrée par l'utilisateur.
rule: <Rule>

# Message à afficher à l'utilisateur si la règle de validation concorde avec la valeur entrée par celui ci.
message: <string>

Exemple

# Règle validant que la valeur est ne doit pas être vide.
- rule: Input == ""
  message: Cette valeur ne peut être vide.

<Rule>

Règle de validation d'une contrainte appliquée à une variable.

Ce n'est ni plus ni moins qu'une condition booléenne écrite avec la syntaxe proposée par la librairie github.com/antonmedv/expr.

Voici les variables globales disponibles aux règles:

Variable Description
Input Valeur entrée par l'utilisateur