Sha256: 083001b5f0f93d159434ddf2ea08fd5e21f06ac6d83141c9523d39960955a9e5

Contents?: true

Size: 1020 Bytes

Versions: 73

Compression:

Stored size: 1020 Bytes

Contents

class TestLab
  class Container

    module SSH

      # ZTK:SSH object
      #
      # Returns a *ZTK:SSH* class instance configured for this container.
      #
      # @return [ZTK::SSH] An instance of ZTK::SSH configured for this
      #   container.
      def ssh(options={})
        self.node.container_ssh(self, options)
      end

      # Returns text suitable for use in an SSH configuration file
      #
      # @return [String] SSH configuration text blob.
      def ssh_config
        identities = [self.users.map(&:identity), self.node.identity].flatten.compact.uniq

        output = <<-EOF
#{ZTK::Template.do_not_edit_notice(:message => %(TestLab "#{self.id}" SSH Configuration))}
Host #{self.id}
  HostName #{self.ip}
  Port 22
  UserKnownHostsFile /dev/null
  StrictHostKeyChecking no
  PasswordAuthentication no
  ForwardAgent no
  IdentitiesOnly yes
EOF

        identities.each do |identity|
          output += "  IdentityFile #{identity}\n"
        end

        output
      end

    end

  end
end

Version data entries

73 entries across 73 versions & 1 rubygems

Version Path
testlab-1.22.4 lib/testlab/container/ssh.rb
testlab-1.22.3 lib/testlab/container/ssh.rb
testlab-1.22.2 lib/testlab/container/ssh.rb
testlab-1.22.1 lib/testlab/container/ssh.rb
testlab-1.22.0 lib/testlab/container/ssh.rb
testlab-1.21.1 lib/testlab/container/ssh.rb
testlab-1.21.0 lib/testlab/container/ssh.rb
testlab-1.20.6 lib/testlab/container/ssh.rb
testlab-1.20.5 lib/testlab/container/ssh.rb
testlab-1.20.4 lib/testlab/container/ssh.rb
testlab-1.20.3 lib/testlab/container/ssh.rb
testlab-1.20.2 lib/testlab/container/ssh.rb
testlab-1.20.1 lib/testlab/container/ssh.rb
testlab-1.20.0 lib/testlab/container/ssh.rb
testlab-1.19.0 lib/testlab/container/ssh.rb
testlab-1.18.1 lib/testlab/container/ssh.rb
testlab-1.18.0 lib/testlab/container/ssh.rb
testlab-1.17.0 lib/testlab/container/ssh.rb
testlab-1.16.1 lib/testlab/container/ssh.rb
testlab-1.16.0 lib/testlab/container/ssh.rb