yaml_servers 0.2.9 → 0.4.0
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 +4 -4
- data/lib/yaml_servers.rb +1 -2
- data/lib/yaml_servers/read_yaml.rb +8 -7
- data/lib/yaml_servers/version.rb +1 -1
- data/yaml_servers.gemspec +1 -1
- metadata +7 -7
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 8b52e3f69cbe0d8037f8b8af2167b112aa9c8311
         | 
| 4 | 
            +
              data.tar.gz: 42fd2a712e5bded522a4876500074db465e296c9
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 839fb34748406b3182f49f3ff74a90252c6104225125b0cfd9dd83f097347c0ae595374f7ae456d8c9bdba13dbb0539f8c149a1fc5e3f2efb1f72bee6fdafc7c
         | 
| 7 | 
            +
              data.tar.gz: b5631a18ae13a57c16af543cc7bb394a4dd2e918bce60efbc20d1608571e66dd03ac5c217735c8ae406fdb2030c8b6f87e1de1bf6b3c9ad6a82783532c609da0
         | 
    
        data/lib/yaml_servers.rb
    CHANGED
    
    
| @@ -6,12 +6,12 @@ module YamlServers | |
| 6 6 |  | 
| 7 7 | 
             
                def self.apply_defaults(config, defaults)
         | 
| 8 8 | 
             
                  # merge defaults
         | 
| 9 | 
            -
                  config = defaults.deep_merge(config)
         | 
| 9 | 
            +
                  config = defaults.deep_merge!(config)
         | 
| 10 10 |  | 
| 11 11 | 
             
                  # apply defaults to each server
         | 
| 12 12 | 
             
                  servers = {}
         | 
| 13 13 | 
             
                  config["servers"].each { |hostname, server|
         | 
| 14 | 
            -
                    servers[hostname] = config["default"].deep_merge(server.is_a?(Hash) ? server : { })
         | 
| 14 | 
            +
                    servers[hostname] = config["default"].dup.deep_merge!(server.is_a?(Hash) ? server : { })
         | 
| 15 15 | 
             
                    servers[hostname]["is_primary"] = (hostname == config["primary"])
         | 
| 16 16 | 
             
                    if servers[hostname].key?("ip") then
         | 
| 17 17 | 
             
                      begin
         | 
| @@ -75,20 +75,21 @@ module YamlServers | |
| 75 75 | 
             
                  config = {}
         | 
| 76 76 | 
             
                  missing_ok = false
         | 
| 77 77 | 
             
                  yaml_configs.each do |yaml|
         | 
| 78 | 
            -
                     | 
| 78 | 
            +
                    file = Pathname.new(yaml).relative? ? File.join(path, yaml) : yaml
         | 
| 79 | 
            +
                    config = get_yaml(file, missing_ok)
         | 
| 79 80 | 
             
                    missing_ok = true
         | 
| 80 81 |  | 
| 81 82 | 
             
                    # merge localconf defaults over top of lower precedence defaults
         | 
| 82 | 
            -
                    config | 
| 83 | 
            +
                    config.deep_merge!(local_config.reject { |key| key == "servers"} )
         | 
| 83 84 |  | 
| 84 85 | 
             
                    # get servers from config
         | 
| 85 | 
            -
                    servers | 
| 86 | 
            +
                    servers.deep_merge!(apply_defaults(config, defaults))
         | 
| 86 87 | 
             
                  end
         | 
| 87 88 |  | 
| 88 89 | 
             
                  # build new config hash with servers collected above and local config applied
         | 
| 89 90 | 
             
                  config = { "servers" => servers, "primary" => config["primary"] }
         | 
| 90 | 
            -
                  config = defaults.deep_merge(config)
         | 
| 91 | 
            -
                  config | 
| 91 | 
            +
                  config = defaults.dup.deep_merge!(config)
         | 
| 92 | 
            +
                  config.deep_merge!(local_config)
         | 
| 92 93 |  | 
| 93 94 | 
             
                  # we need at least one server
         | 
| 94 95 | 
             
                  config["servers"] = { "default" => nil }  unless config.key?("servers")
         | 
    
        data/lib/yaml_servers/version.rb
    CHANGED
    
    
    
        data/yaml_servers.gemspec
    CHANGED
    
    | @@ -17,7 +17,7 @@ Gem::Specification.new do |spec| | |
| 17 17 | 
             
              spec.executables   = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
         | 
| 18 18 | 
             
              spec.require_paths = ["lib"]
         | 
| 19 19 |  | 
| 20 | 
            -
              spec.add_runtime_dependency ' | 
| 20 | 
            +
              spec.add_runtime_dependency 'deep_merge', '~> 1.2', '>= 1.2.1'
         | 
| 21 21 |  | 
| 22 22 | 
             
              spec.add_development_dependency "bundler", "~> 1.10"
         | 
| 23 23 | 
             
              spec.add_development_dependency "rake", "~> 10.0"
         | 
    
        metadata
    CHANGED
    
    | @@ -1,35 +1,35 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: yaml_servers
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0. | 
| 4 | 
            +
              version: 0.4.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Robert Brooks
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: exe
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2018- | 
| 11 | 
            +
            date: 2018-04-07 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 | 
            -
              name:  | 
| 14 | 
            +
              name: deep_merge
         | 
| 15 15 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 16 16 | 
             
                requirements:
         | 
| 17 17 | 
             
                - - "~>"
         | 
| 18 18 | 
             
                  - !ruby/object:Gem::Version
         | 
| 19 | 
            -
                    version: ' | 
| 19 | 
            +
                    version: '1.2'
         | 
| 20 20 | 
             
                - - ">="
         | 
| 21 21 | 
             
                  - !ruby/object:Gem::Version
         | 
| 22 | 
            -
                    version:  | 
| 22 | 
            +
                    version: 1.2.1
         | 
| 23 23 | 
             
              type: :runtime
         | 
| 24 24 | 
             
              prerelease: false
         | 
| 25 25 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 26 26 | 
             
                requirements:
         | 
| 27 27 | 
             
                - - "~>"
         | 
| 28 28 | 
             
                  - !ruby/object:Gem::Version
         | 
| 29 | 
            -
                    version: ' | 
| 29 | 
            +
                    version: '1.2'
         | 
| 30 30 | 
             
                - - ">="
         | 
| 31 31 | 
             
                  - !ruby/object:Gem::Version
         | 
| 32 | 
            -
                    version:  | 
| 32 | 
            +
                    version: 1.2.1
         | 
| 33 33 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 34 34 | 
             
              name: bundler
         | 
| 35 35 | 
             
              requirement: !ruby/object:Gem::Requirement
         |