| Age | Commit message (Collapse) | Author | 
 | 
 | 
 | 
 | 
 | 
- now default type is 'nil', which is collapsed to flat config via
  Outputs#to_cfg
- if type is not 'nil' then name is automatically set if not set by
  model
- if name and type is set, separate file is created
- if name is not set, but type is set, outputs from type are collapsed
  as with 'nil' types
This model:
  cmd 'show ip cef' do |out|
    out.type = 'poop'
    out.name = false
    out
  end
  cmd 'show process cpu' do |out|
    out.type = 'poop'
    out.name = 'my_cpu'
    out
  end
  cmd 'show memory statistics' do |out|
    out.type = 'poop'
    out.name = false
    out
  end
  cmd 'show ip bgp summary' do |out|
    out.type = 'poop'
  end
Would produce git output:
[ytti@ytti.fi ~/.config/oxidized]% ls poop
bu.ip.fi  bu.ip.fi--cpu  bu.ip.fi--show_ip_bgp_summary
[ytti@ytti.fi ~/.config/oxidized]%
bu.ip.fi contains the collapsed stuff
bu.ip.fi--cpu is manually named
bu.ip.fi--show_ip_bgp_summary is automatically named
 | 
 | 
The model will look like this:
  cmd 'show ip cef' do |out|
    out.type = 'poop'
    out
  end
  cmd 'show process cpu' do |out|
    out.type = 'poop'
    out
  end
  cmd 'show memory statistics' do |out|
    out.type = 'poop'
    out
  end
I think it's cleaner.
 | 
 | 
 | 
 | 
It is now separately in oxidized-web package
 | 
 | 
Will allow convenience methods such as
cmd :all do |cfg|
  cfg.pop.shift
end
instead of:
cmd :all do |cfg|
  cfg.each_line.to_a[1..-2].join
end
And what ever convenience configs we come up with
 |