Class: Services::Settings

Inherits:
Object
  • Object
show all
Defined in:
lib/busbar_cli/services/settings.rb

Class Method Summary collapse

Class Method Details

.by_environment(environment) ⇒ Object



29
30
31
32
33
# File 'lib/busbar_cli/services/settings.rb', line 29

def self.by_environment(environment)
  SettingsRepository.by_environment(environment: environment).each do |setting|
    puts "#{setting.key}=#{setting.value}"
  end
end

.get(environment, setting_key) ⇒ Object



3
4
5
6
7
# File 'lib/busbar_cli/services/settings.rb', line 3

def self.get(environment, setting_key)
  Printer.print_resource(
    SettingsRepository.get(environment: environment, setting_key: setting_key)
  )
end

.set(environment, settings_list, deploy) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/busbar_cli/services/settings.rb', line 9

def self.set(environment, settings_list, deploy)
  settings = settings_list.each_with_object({}) do |setting, result|
    key = setting.partition('=').first.upcase
    value = setting.partition('=').last

    result[key] = value if setting.include?('=')
  end

  Printer.print_result(
    result: SettingsRepository.set(
      environment: environment,
      settings: settings,
      deploy: deploy
    ),
    success_message: 'Settings updated with success',
    failure_message: 'Error while updating the settings. ' \
                     'Please check its existence (and of its app)'
  )
end

.unset(setting) ⇒ Object



35
36
37
38
39
40
41
42
43
44
# File 'lib/busbar_cli/services/settings.rb', line 35

def self.unset(setting)
  Printer.print_result(
    result: SettingsRepository.destroy(setting: setting),
    success_message: "Setting \"#{setting.key.upcase}\" was deleted "\
                    "from #{setting.app_id}'s #{setting.environment_name} environment",
    failure_message: 'Error while destroying setting ' \
                     "#{setting.app_id}'s #{setting.environment_name} environment. " \
                     'Please check your input'
  )
end