From f247b93212da4d6b0da25153f2b7accc30b1a44c Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Fri, 9 May 2014 17:13:01 -0400 Subject: [PATCH] Add the start of a graphviz doc to illustrate variable precedence graphically. --- docsite/Makefile | 4 ++++ docsite/variables.dot | 38 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 docsite/variables.dot diff --git a/docsite/Makefile b/docsite/Makefile index be17ba83bc..f5d1b10c12 100644 --- a/docsite/Makefile +++ b/docsite/Makefile @@ -10,6 +10,10 @@ docs: clean modules staticmin -(cp *.jpg htmlout/) -(cp *.png htmlout/) +variables: + (mkdir -p htmlout/) + dot variables.dot -Tpng -o htmlout/variables.png + viewdocs: clean staticmin ./build-site.py view diff --git a/docsite/variables.dot b/docsite/variables.dot new file mode 100644 index 0000000000..f5860dcbf8 --- /dev/null +++ b/docsite/variables.dot @@ -0,0 +1,38 @@ +digraph G { + + subgraph cluster_0 { + "command line variables" -> "--extra-args" + } + + subgraph cluster_1 { + "role variables" -> "roles/rolename/vars.yml" -> "parameters passed to role" -> "parameters from dependent roles" + } + + subgraph cluster_2 { + "top-level playbook variables" -> "vars: directives" -> "vars_files: directives"; + } + + subgraph cluster_3 { + "inventory variables" -> "group_vars/all" -> "group_vars/grandparent1" -> "group_vars/parent1" -> "host_vars/myhostname"; + "group_vars/all" -> "group_vars/grandparent2"; + "group_vars/grandparent1" -> "group_vars/parent2" + "group_vars/grandparent2" -> "host_vars/myhostname"; + "group_vars/parent2" -> "host_vars/myhostname" + } + + subgraph cluster_4 { + "facts" -> "gathered host facts" + "facts" -> "host facts from /etc/ansible/facts.d" + "facts" -> "set_fact" + "facts" -> "include_vars" + } + + subgraph cluster_5 { + "role defaults" -> "roles/rolename/defaults.yml" + } + + "command line variables" -> "role variables" -> "top-level playbook variables" -> "inventory variables" -> "role defaults" -> "facts" + + + +}