Visualizing Heat stacks

I spent some time today learning about Heat autoscaling groups,
which are incredibly nifty but a little opaque from the Heat command
line, since commands such as heat resource-list don’t recurse into
nested stacks. It is possible to introspect these resources (you can
pass the physical resource id of a nested stack to heat
resource-list, for example)…

…but I really like visualizing things, so I wrote a quick hack
called dotstack that will generate dot language output from a
Heat stack. You can process this with Graphviz to produce output
like this, in which graph nodes are automatically colorized by
resource type:

Or like this, in which each node contains information about its
resource type and physical resource id: