ansible-structure.fbl
fbl0.70.7ansible-structure.fbl
Example document ansible-structure.fbl
Views generated from the file
This view is drawn by this site from ansible-structure.fbl itself. It shows the data in the document, not the notation the diagram draws.
ansible-structure.fbl at eb8f668Diagram as text (Mermaid)
flowchart LR
accTitle: Bindings of ansible-structure.fbl
accDescr: Flowchart of the bindings in ansible-structure.fbl: 1 binding(s) (ansible) as boxes with the files they claim and their body's format family, and 0 element rule(s) and 0 relation rule(s) as rounded boxes with the type each produces.
b_ansible["Ansible project folder<br/>ansible"]The file
Download ansible-structure.fbl (2,293 bytes, unchanged from the source).
{
"$schema": "https://etalii.net/adp/fbl/schema/0.1/fbl.schema.json#/$defs/Document",
"fbl": "0.2",
"doc": "An Ansible project folder (definitions/diagrams/ansible-structure.dis, ansible-structure.md): a folder subject (section 10) read by a persistence plugin and never written. Every folder qualifies, because a registration and never the content says a folder is an Ansible project. The file rules select the files the plugin parses: playbooks at the root and under playbooks/, a role's task files and its meta/main, and the inventory files. The plugin passes over a selected file it does not read, such as a note under inventories/. What the plugin also needs and no file rule can say, that a folder exists and how many files a folder holds, is not here: the plugin learns it from the folder itself (ansible-structure.md, gaps 1 and 2). No rule names a family, so the plugin parses every file, and an inventory that is not YAML is read as INI.",
"bindings": {
"ansible": {
"title": "Ansible project folder",
"claims": {
"origins": ["ansible/structure"],
"registrationOnly": true
},
"body": {
"kind": "folder",
"recognise": {},
"files": [
{ "name": "rootInventory", "glob": "inventory" },
{ "name": "rootHosts", "glob": "hosts" },
{ "name": "rootYml", "glob": "*.yml" },
{ "name": "rootYaml", "glob": "*.yaml" },
{ "name": "playbooksYml", "glob": "playbooks/*.yml" },
{ "name": "playbooksYaml", "glob": "playbooks/*.yaml" },
{ "name": "roleTasksYml", "glob": "roles/*/tasks/*.yml" },
{ "name": "roleTasksYaml", "glob": "roles/*/tasks/*.yaml" },
{ "name": "roleMetaYml", "glob": "roles/*/meta/main.yml" },
{ "name": "roleMetaYaml", "glob": "roles/*/meta/main.yaml" },
{ "name": "inventories", "glob": "inventories/*/*" }
],
"ignore": [".git/**"],
"settle": 400
},
"reader": { "plugin": "net.etalii.adp.ansible.folder", "version": "^0.1.0" },
"readOnly": "An Ansible structure diagram shows the folder as it is and changes nothing in it. Edit the file this value comes from in a text editor.",
"registration": { "createOnFirstPlacement": false }
}
}
}In an IDE
No IDE host runs this example yet.