haproxy_parser 0.1.1 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 21df2cb022a83a269336d4a89bab93531a252cfd
         | 
| 4 | 
            +
              data.tar.gz: cd278c84cb1fc62634117e65539339f6af63a46c
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: bc537129dc7e3c0294a3938838e8c9ebd897be8bc193c5328834d5fbf05b03f2ebf7c140af9b827ce3ef001bb1c6a2ef1b794c6040500e0380d4bdfb9c9e489c
         | 
| 7 | 
            +
              data.tar.gz: 7c13c6a4c64a5b0810d8149abf4985da50e52020c41dcb9c9080208175b0baa4ac2ca515cf2752038fa2f00e698add47fdc696f3ea0e98dbed46c460cbc05d65
         | 
| @@ -4,12 +4,6 @@ require "haproxy_parser/builders/server_parser" | |
| 4 4 | 
             
            module HaproxyParser
         | 
| 5 5 | 
             
              module Builders
         | 
| 6 6 | 
             
                class Backend < Base
         | 
| 7 | 
            -
                  attr_accessor :frontend
         | 
| 8 | 
            -
                  def initialize(section:, default: nil, frontend:)
         | 
| 9 | 
            -
                    super(section: section, default: default)
         | 
| 10 | 
            -
                    @frontend = frontend
         | 
| 11 | 
            -
                  end
         | 
| 12 | 
            -
             | 
| 13 7 | 
             
                  def mode
         | 
| 14 8 | 
             
                    @mode ||= dig_data("mode")
         | 
| 15 9 | 
             
                  end
         | 
| @@ -23,14 +17,12 @@ module HaproxyParser | |
| 23 17 | 
             
                      if line_servers[0].is_a?(Array)
         | 
| 24 18 | 
             
                        line_servers.each do |line_server|
         | 
| 25 19 | 
             
                          arr << ServerParser.new(
         | 
| 26 | 
            -
                            line: line_server | 
| 27 | 
            -
                            frontend_port: frontend.port
         | 
| 20 | 
            +
                            line: line_server
         | 
| 28 21 | 
             
                          )
         | 
| 29 22 | 
             
                        end
         | 
| 30 23 | 
             
                      else
         | 
| 31 24 | 
             
                        arr << ServerParser.new(
         | 
| 32 | 
            -
                          line: line_servers | 
| 33 | 
            -
                          frontend_port: frontend.port
         | 
| 25 | 
            +
                          line: line_servers
         | 
| 34 26 | 
             
                        )
         | 
| 35 27 | 
             
                      end
         | 
| 36 28 | 
             
                    end
         | 
| @@ -4,10 +4,9 @@ require "haproxy_parser/line_parser" | |
| 4 4 | 
             
            module HaproxyParser
         | 
| 5 5 | 
             
              module Builders
         | 
| 6 6 | 
             
                class ServerParser
         | 
| 7 | 
            -
                  attr_reader :line | 
| 8 | 
            -
                  def initialize(line | 
| 7 | 
            +
                  attr_reader :line
         | 
| 8 | 
            +
                  def initialize(line:)
         | 
| 9 9 | 
             
                    @line = line
         | 
| 10 | 
            -
                    @frontend_port = frontend_port
         | 
| 11 10 | 
             
                  end
         | 
| 12 11 |  | 
| 13 12 | 
             
                  def name
         | 
| @@ -19,12 +18,7 @@ module HaproxyParser | |
| 19 18 | 
             
                  end
         | 
| 20 19 |  | 
| 21 20 | 
             
                  def port
         | 
| 22 | 
            -
                    @port ||=
         | 
| 23 | 
            -
                      if line[1].split(":")[1]
         | 
| 24 | 
            -
                        line[1].split(":")[1]
         | 
| 25 | 
            -
                      else
         | 
| 26 | 
            -
                        frontend_port
         | 
| 27 | 
            -
                      end
         | 
| 21 | 
            +
                    @port ||= line[1].split(":")[1]
         | 
| 28 22 | 
             
                  end
         | 
| 29 23 |  | 
| 30 24 | 
             
                  %w(inter rise fall).each do |attr|
         | 
| @@ -6,7 +6,7 @@ require "haproxy_parser/builders" | |
| 6 6 | 
             
            module HaproxyParser
         | 
| 7 7 | 
             
              class Config
         | 
| 8 8 | 
             
                SECTIONS = %w(global defaults frontend backend)
         | 
| 9 | 
            -
                attr_reader :path
         | 
| 9 | 
            +
                attr_reader :path, :servers
         | 
| 10 10 | 
             
                def initialize(path)
         | 
| 11 11 | 
             
                  @path = path
         | 
| 12 12 | 
             
                end
         | 
| @@ -40,6 +40,7 @@ module HaproxyParser | |
| 40 40 | 
             
                def build
         | 
| 41 41 | 
             
                  build_global
         | 
| 42 42 | 
             
                  build_frontend_backend
         | 
| 43 | 
            +
                  build_servers
         | 
| 43 44 | 
             
                end
         | 
| 44 45 |  | 
| 45 46 | 
             
                def build_global
         | 
| @@ -60,13 +61,21 @@ module HaproxyParser | |
| 60 61 | 
             
                  end
         | 
| 61 62 | 
             
                end
         | 
| 62 63 |  | 
| 64 | 
            +
                def build_servers
         | 
| 65 | 
            +
                  @servers = [].tap do |arr|
         | 
| 66 | 
            +
                    backends.each do |backend|
         | 
| 67 | 
            +
                      arr += backend.servers
         | 
| 68 | 
            +
                    end
         | 
| 69 | 
            +
                    break arr
         | 
| 70 | 
            +
                  end
         | 
| 71 | 
            +
                end
         | 
| 72 | 
            +
             | 
| 63 73 | 
             
                def build_backend(frontend)
         | 
| 64 74 | 
             
                  name = frontend.backend_name
         | 
| 65 75 | 
             
                  return find_backend(name) if find_backend(name).present?
         | 
| 66 76 | 
             
                  built_backend = HaproxyParser::Builders::Backend.new(
         | 
| 67 77 | 
             
                    section: backend_section(name).items,
         | 
| 68 | 
            -
                    default: default_section_items | 
| 69 | 
            -
                    frontend: frontend
         | 
| 78 | 
            +
                    default: default_section_items
         | 
| 70 79 | 
             
                  ).tap do |backend|
         | 
| 71 80 | 
             
                    backends << backend
         | 
| 72 81 | 
             
                  end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: haproxy_parser
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.1. | 
| 4 | 
            +
              version: 0.1.2
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Akito Ueno
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: exe
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2016-10- | 
| 11 | 
            +
            date: 2016-10-24 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: bundler
         |