Class: Construqt::Flavour::Mikrotik::Bridge

Inherits:
OpenStruct
  • Object
show all
Defined in:
lib/construqt/flavour/mikrotik/flavour_mikrotik.rb

Instance Method Summary collapse

Constructor Details

#initialize(cfg) ⇒ Bridge

Returns a new instance of Bridge.



169
170
171
# File 'lib/construqt/flavour/mikrotik/flavour_mikrotik.rb', line 169

def initialize(cfg)
  super(cfg)
end

Instance Method Details

#build_config(host, iface) ⇒ Object



173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
# File 'lib/construqt/flavour/mikrotik/flavour_mikrotik.rb', line 173

def build_config(host, iface)
  iface = iface.delegate
  default = {
    "auto-mac" => Schema.boolean.default(true),
    "mtu" => Schema.int.required,
    "priority" => Schema.int.default(57344),
    "name" => Schema.identifier.required.key
  }
  host.result.render_mikrotik(default, {
    "mtu" => iface.mtu,
    "name" => iface.name,
    "priority" => iface.priority
  }, "interface", "bridge")
  iface.interfaces.each do |port|
    host.result.render_mikrotik({
      "bridge" => Schema.identifier.required.key,
      "interface" => Schema.identifier.required.key
    }, {
      "interface" => port.name,
      "bridge" => iface.name,
    }, "interface", "bridge", "port")
  end
  Interface.build_config(host, iface)
end