Sha256: 8994f2310f1fa9ce45d4968e0f368da7787db613c0125edfbbc9af0a38f0341f

Contents?: true

Size: 1.14 KB

Versions: 110

Compression:

Stored size: 1.14 KB

Contents

# frozen_string_literal: true

module Avm
  module Instances
    class Base
      module AutoValues
        module Access
          def auto_access
            read_entry_optional('ssh.url').present? ? 'ssh' : 'local'
          end

          def auto_ssh_hostname
            inherited_entry_value(::Avm::Instances::EntryKeys::HOST_ID, 'ssh.hostname')
          end

          def auto_ssh_port
            inherited_entry_value(::Avm::Instances::EntryKeys::HOST_ID, 'ssh.port') || 22
          end

          def auto_ssh_username
            inherited_entry_value(::Avm::Instances::EntryKeys::HOST_ID, 'ssh.username')
          end

          def auto_ssh_url
            inherited_entry_value(::Avm::Instances::EntryKeys::HOST_ID, 'ssh.url') ||
              auto_ssh_url_by_parts
          end

          def auto_ssh_url_by_parts
            read_entry_optional('ssh.hostname').if_present do |a|
              a = read_entry_optional('ssh.username').if_present(a) { |v| "#{v}@#{a}" }
              a = read_entry_optional('ssh.port').if_present(a) { |v| "#{a}:#{v}" }
              "ssh://#{a}"
            end
          end
        end
      end
    end
  end
end

Version data entries

110 entries across 110 versions & 3 rubygems

Version Path
avm-0.30.0 lib/avm/instances/base/auto_values/access.rb
eac_tools-0.12.0 sub/avm/lib/avm/instances/base/auto_values/access.rb
eac_tools-0.11.1 sub/avm/lib/avm/instances/base/auto_values/access.rb
avm-0.29.0 lib/avm/instances/base/auto_values/access.rb
eac_tools-0.11.0 sub/avm/lib/avm/instances/base/auto_values/access.rb
avm-0.28.0 lib/avm/instances/base/auto_values/access.rb
eac_tools-0.10.0 sub/avm/lib/avm/instances/base/auto_values/access.rb
avm-0.27.0 lib/avm/instances/base/auto_values/access.rb
eac_tools-0.9.0 sub/avm/lib/avm/instances/base/auto_values/access.rb
avm-0.26.0 lib/avm/instances/base/auto_values/access.rb
eac_tools-0.8.0 sub/avm/lib/avm/instances/base/auto_values/access.rb
eac_tools-0.7.0 sub/avm/lib/avm/instances/base/auto_values/access.rb
avm-0.25.0 lib/avm/instances/base/auto_values/access.rb
eac_tools-0.6.0 sub/avm/lib/avm/instances/base/auto_values/access.rb
eac_tools-0.5.0 sub/avm/lib/avm/instances/base/auto_values/access.rb
avm-0.24.0 lib/avm/instances/base/auto_values/access.rb
eac_tools-0.4.0 sub/avm/lib/avm/instances/base/auto_values/access.rb
eac_tools-0.3.0 sub/avm/lib/avm/instances/base/auto_values/access.rb
eac_tools-0.2.2 sub/avm/lib/avm/instances/base/auto_values/access.rb
avm-0.23.0 lib/avm/instances/base/auto_values/access.rb