Module: CobraCommander::Output::GraphViz

Defined in:
lib/cobra_commander/output/graph_viz.rb

Overview

Generates graphs of components

Class Method Summary collapse

Class Method Details

.generate(component, output) ⇒ Object



9
10
11
12
13
14
15
16
17
# File 'lib/cobra_commander/output/graph_viz.rb', line 9

def self.generate(component, output)
  g = ::GraphViz.new(:G, type: :digraph, concentrate: true)
  ([component] + component.deep_dependencies).each do |comp|
    g.add_nodes comp.name
    g.add_edges comp.name, comp.dependencies.map(&:name)
  end

  g.output(extract_format(output) => output)
end