class Construqt::Flavour::Ubuntu::EtcNetworkInterfaces::Entry::Lines

Public Class Methods

new(entry) click to toggle source
# File lib/construqt/flavour/ubuntu/flavour_ubuntu_result.rb, line 289
def initialize(entry)
  @entry = entry
  @lines = []
  @ups = []
  @downs = []
end

Public Instance Methods

add(block) click to toggle source
# File lib/construqt/flavour/ubuntu/flavour_ubuntu_result.rb, line 304
def add(block)
  @lines += block.each_line.map{|i| i.strip }.select{|i| !i.empty? }
end
commit() click to toggle source
# File lib/construqt/flavour/ubuntu/flavour_ubuntu_result.rb, line 318
def commit
  write_s(@entry.iface.class.name, "up", @ups)
  write_s(@entry.iface.class.name, "down", @downs)
  sections = @lines.inject({}) {|r, line| key = line.split(/\s+/).first; r[key] ||= []; r[key] << line; r }
  sections.keys.sort.map do |key|
    if sections[key]
      sections[key].map{|j| "  #{j}" }
    else
      nil
    end
  end.compact.flatten.join("\n")+"\n\n"
end
down(block) click to toggle source
# File lib/construqt/flavour/ubuntu/flavour_ubuntu_result.rb, line 300
def down(block)
  @downs += block.each_line.map{|i| i.strip }.select{|i| !i.empty? }
end
up(block) click to toggle source
# File lib/construqt/flavour/ubuntu/flavour_ubuntu_result.rb, line 296
def up(block)
  @ups += block.each_line.map{|i| i.strip }.select{|i| !i.empty? }
end
write_s(component, direction, blocks) click to toggle source
# File lib/construqt/flavour/ubuntu/flavour_ubuntu_result.rb, line 308
            def write_s(component, direction, blocks)
              @entry.result.add(self.class, <<BLOCK, Construqt::Resources::Rights.root_0755(component), "etc", "network", "#{@entry.header.get_interface_name}-#{direction}.iface")
#!/bin/bash
exec > >(logger -t "#{@entry.header.get_interface_name}-#{direction}") 2>&1
#{blocks.join("\n")}
BLOCK
#iptables-restore < /etc/network/iptables.cfg
#ip6tables-restore < /etc/network/ip6tables.cfg
            end