Sha256: 6c65443d322d7f1c4ed31e3f8ee9dd8f72ab8590c33d0fbc501a1e0066186b2c

Contents?: true

Size: 1.1 KB

Versions: 32

Compression:

Stored size: 1.1 KB

Contents

# frozen_string_literal: true

require 'eac_cli/config'
require 'eac_config/envvars_node'
require 'eac_config/yaml_file_node'
require 'eac_ruby_utils/core_ext'

module EacCli
  class OldConfigsBridge < ::EacCli::Config
    ENTRY_KEY = 'core.store_passwords'

    class << self
      def new_configs_path(configs_key, options)
        options[:storage_path] || ::File.join(ENV['HOME'], '.config', configs_key, 'settings.yml')
      end
    end

    def initialize(configs_key, options = {})
      options.assert_argument(::Hash, 'options')
      envvar_node = ::EacConfig::EnvvarsNode.new
      file_node = ::EacConfig::YamlFileNode.new(self.class.new_configs_path(configs_key, options))
      envvar_node.load_path.push(file_node.url)
      envvar_node.write_node = file_node
      super(envvar_node)
    end

    def read_entry(entry_key, options = {})
      entry(entry_key, options).value
    end

    def read_password(entry_key, options = {})
      entry(entry_key, options.merge(noecho: true, store: store_passwords?)).value
    end

    def store_passwords?
      read_entry(ENTRY_KEY, bool: true)
    end
  end
end

Version data entries

32 entries across 32 versions & 3 rubygems

Version Path
avm-tools-0.113.3 sub/eac_cli/lib/eac_cli/old_configs_bridge.rb
eac_cli-0.24.1 lib/eac_cli/old_configs_bridge.rb
avm-tools-0.113.2 sub/eac_cli/lib/eac_cli/old_configs_bridge.rb
eac_cli-0.24.0 lib/eac_cli/old_configs_bridge.rb
ehbrs-tools-0.28.3 vendor/eac_cli/lib/eac_cli/old_configs_bridge.rb
avm-tools-0.110.0 vendor/eac_cli/lib/eac_cli/old_configs_bridge.rb
avm-tools-0.109.1 vendor/eac_cli/lib/eac_cli/old_configs_bridge.rb
avm-tools-0.109.0 vendor/eac_cli/lib/eac_cli/old_configs_bridge.rb
ehbrs-tools-0.28.2 vendor/eac_cli/lib/eac_cli/old_configs_bridge.rb
eac_cli-0.23.1 lib/eac_cli/old_configs_bridge.rb
avm-tools-0.108.0 vendor/eac_cli/lib/eac_cli/old_configs_bridge.rb
ehbrs-tools-0.28.1 vendor/eac_cli/lib/eac_cli/old_configs_bridge.rb
avm-tools-0.107.0 vendor/eac_cli/lib/eac_cli/old_configs_bridge.rb
ehbrs-tools-0.28.0 vendor/eac_cli/lib/eac_cli/old_configs_bridge.rb
avm-tools-0.106.0 vendor/eac_cli/lib/eac_cli/old_configs_bridge.rb
eac_cli-0.23.0 lib/eac_cli/old_configs_bridge.rb
ehbrs-tools-0.27.0 vendor/eac_cli/lib/eac_cli/old_configs_bridge.rb
ehbrs-tools-0.26.0 vendor/eac_cli/lib/eac_cli/old_configs_bridge.rb
avm-tools-0.105.0 vendor/eac_cli/lib/eac_cli/old_configs_bridge.rb
ehbrs-tools-0.25.1 vendor/eac_cli/lib/eac_cli/old_configs_bridge.rb