class Seira::Settings

Constants

DEFAULT_CONFIG_PATH

Attributes

config_path[R]

Public Class Methods

new(config_path: DEFAULT_CONFIG_PATH) click to toggle source
# File lib/seira/settings.rb, line 10
def initialize(config_path: DEFAULT_CONFIG_PATH)
  @config_path = config_path
end

Public Instance Methods

applications() click to toggle source
# File lib/seira/settings.rb, line 23
def applications
  settings['seira']['applications'].map { |app| app['name'] }
end
clusters() click to toggle source
# File lib/seira/settings.rb, line 35
def clusters
  settings['seira']['clusters']
end
config_for_app(app_name) click to toggle source
# File lib/seira/settings.rb, line 27
def config_for_app(app_name)
  settings['seira']['applications'].find { |app| app['name'] == app_name }
end
expected_environment_variable_during_deploys() click to toggle source
# File lib/seira/settings.rb, line 67
def expected_environment_variable_during_deploys
  settings['seira']['expected_environment_variable_during_deploys']
end
full_cluster_name_for_shorthand(shorthand) click to toggle source
# File lib/seira/settings.rb, line 43
def full_cluster_name_for_shorthand(shorthand)
  return shorthand if valid_cluster_names.include?(shorthand)

  # Try iterating through each cluster to find the relevant alias
  clusters.each do |cluster_name, cluster_metadata|
    next if cluster_metadata['aliases'].nil? || cluster_metadata['aliases'].empty?
    return cluster_name if cluster_metadata['aliases'].include?(shorthand)
  end

  nil
end
organization_id() click to toggle source
# File lib/seira/settings.rb, line 19
def organization_id
  settings['seira']['organization_id']
end
project_for_cluster(cluster) click to toggle source
# File lib/seira/settings.rb, line 55
def project_for_cluster(cluster)
  settings['seira']['clusters'][cluster]['project']
end
region_for_cluster(cluster) click to toggle source
# File lib/seira/settings.rb, line 59
def region_for_cluster(cluster)
  settings['seira']['clusters'][cluster]['region']
end
settings() click to toggle source
# File lib/seira/settings.rb, line 14
def settings
  return @_settings if defined?(@_settings)
  @_settings = parse_settings
end
valid_cluster_names() click to toggle source
# File lib/seira/settings.rb, line 31
def valid_cluster_names
  settings['seira']['clusters'].keys
end
zone_for_cluster(cluster) click to toggle source
# File lib/seira/settings.rb, line 63
def zone_for_cluster(cluster)
  settings['seira']['clusters'][cluster]['zone']
end

Private Instance Methods

parse_settings() click to toggle source
# File lib/seira/settings.rb, line 73
def parse_settings
  YAML.load_file(config_path)
end