Module: RubyTodo::ConfigurationManagement

Defined in:
lib/ruby_todo/ai_assistant/configuration_management.rb

Instance Method Summary collapse

Instance Method Details

#config_fileObject



23
24
25
# File 'lib/ruby_todo/ai_assistant/configuration_management.rb', line 23

def config_file
  File.join(Dir.home, ".config", "ruby_todo", "config.yml")
end

#load_api_key_from_configObject



5
6
7
8
# File 'lib/ruby_todo/ai_assistant/configuration_management.rb', line 5

def load_api_key_from_config
  config = load_config
  config["openai"]
end

#load_configObject



10
11
12
13
14
# File 'lib/ruby_todo/ai_assistant/configuration_management.rb', line 10

def load_config
  return {} unless File.exist?(config_file)

  YAML.load_file(config_file) || {}
end

#save_config(key, value) ⇒ Object



16
17
18
19
20
21
# File 'lib/ruby_todo/ai_assistant/configuration_management.rb', line 16

def save_config(key, value)
  config = load_config
  config[key] = value
  FileUtils.mkdir_p(File.dirname(config_file))
  File.write(config_file, config.to_yaml)
end