Class: Guard::Bosh::NetworkGenerator

Inherits:
Object
  • Object
show all
Defined in:
lib/guard/bosh/network_generator.rb

Overview

Generates a simulated network section for the apply spec

Instance Method Summary collapse

Instance Method Details

#generate(deployment_manifest:, job_name:) ⇒ Object

rubocop:disable Metrics/MethodLength



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/guard/bosh/network_generator.rb', line 8

def generate(deployment_manifest:, job_name:)
  job_network, network_definition =
    manifest_sections(deployment_manifest, job_name)
  {
    job_network['name'] => {
      'cloud_properties' => network_definition['subnets'].first[
        'cloud_properties'],
      'dns_record_name' => dns_record_name(
        job_name, job_network['name'], deployment_manifest['name']),
      'ip' => ip_address(job_network, network_definition),
      'netmask' => netmask(network_definition['subnets'].first['range']),
      'default' => %w(dns gateway)
    }
  }
end