Class: Google::Apis::CloudshellV1::Environment

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
generated/google/apis/cloudshell_v1/classes.rb,
generated/google/apis/cloudshell_v1/representations.rb,
generated/google/apis/cloudshell_v1/representations.rb

Overview

A Cloud Shell environment, which is defined as the combination of a Docker image specifying what is installed on the environment and a home directory containing the user's data that will remain across sessions. Each user has a single environment with the ID "default".

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Google::Apis::Core::JsonObjectSupport

#to_json

Methods included from Google::Apis::Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ Environment

Returns a new instance of Environment.



142
143
144
# File 'generated/google/apis/cloudshell_v1/classes.rb', line 142

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#docker_imageString

Required. Full path to the Docker image used to run this environment, e.g. "gcr.io/dev-con/cloud-devshell:latest". Corresponds to the JSON property dockerImage

Returns:

  • (String)


68
69
70
# File 'generated/google/apis/cloudshell_v1/classes.rb', line 68

def docker_image
  @docker_image
end

#idString

Output only. The environment's identifier, unique among the user's environments. Corresponds to the JSON property id

Returns:

  • (String)


74
75
76
# File 'generated/google/apis/cloudshell_v1/classes.rb', line 74

def id
  @id
end

#nameString

Output only. Full name of this resource, in the format users/owner_email/environments/environment_id.owner_emailis the email address of the user to whom this environment belongs, and environment_id`is the identifier of this environment. For example, users/someone@example.com/environments/default. Corresponds to the JSON propertyname`

Returns:

  • (String)


83
84
85
# File 'generated/google/apis/cloudshell_v1/classes.rb', line 83

def name
  @name
end

#public_keysArray<Google::Apis::CloudshellV1::PublicKey>

Output only. Public keys associated with the environment. Clients can connect to this environment via SSH only if they possess a private key corresponding to at least one of these public keys. Keys can be added to or removed from the environment using the CreatePublicKey and DeletePublicKey methods. Corresponds to the JSON property publicKeys



92
93
94
# File 'generated/google/apis/cloudshell_v1/classes.rb', line 92

def public_keys
  @public_keys
end

#sizeString

Indicates the size of the backing VM running the environment. If set to something other than DEFAULT, it will be reverted to the default VM size after vm_size_expire_time. Corresponds to the JSON property size

Returns:

  • (String)


99
100
101
# File 'generated/google/apis/cloudshell_v1/classes.rb', line 99

def size
  @size
end

#ssh_hostString

Output only. Host to which clients can connect to initiate SSH sessions with the environment. Corresponds to the JSON property sshHost

Returns:

  • (String)


105
106
107
# File 'generated/google/apis/cloudshell_v1/classes.rb', line 105

def ssh_host
  @ssh_host
end

#ssh_portFixnum

Output only. Port to which clients can connect to initiate SSH sessions with the environment. Corresponds to the JSON property sshPort

Returns:

  • (Fixnum)


111
112
113
# File 'generated/google/apis/cloudshell_v1/classes.rb', line 111

def ssh_port
  @ssh_port
end

#ssh_usernameString

Output only. Username that clients should use when initiating SSH sessions with the environment. Corresponds to the JSON property sshUsername

Returns:

  • (String)


117
118
119
# File 'generated/google/apis/cloudshell_v1/classes.rb', line 117

def ssh_username
  @ssh_username
end

#stateString

Output only. Current execution state of this environment. Corresponds to the JSON property state

Returns:

  • (String)


122
123
124
# File 'generated/google/apis/cloudshell_v1/classes.rb', line 122

def state
  @state
end

#vm_size_expire_timeString

Output only. The time when the Environment will expire back to the default VM size. Corresponds to the JSON property vmSizeExpireTime

Returns:

  • (String)


128
129
130
# File 'generated/google/apis/cloudshell_v1/classes.rb', line 128

def vm_size_expire_time
  @vm_size_expire_time
end

#web_hostString

Output only. Host to which clients can connect to initiate HTTPS or WSS connections with the environment. Corresponds to the JSON property webHost

Returns:

  • (String)


134
135
136
# File 'generated/google/apis/cloudshell_v1/classes.rb', line 134

def web_host
  @web_host
end

#web_portsArray<Fixnum>

Output only. Ports to which clients can connect to initiate HTTPS or WSS connections with the environment. Corresponds to the JSON property webPorts

Returns:

  • (Array<Fixnum>)


140
141
142
# File 'generated/google/apis/cloudshell_v1/classes.rb', line 140

def web_ports
  @web_ports
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



147
148
149
150
151
152
153
154
155
156
157
158
159
160
# File 'generated/google/apis/cloudshell_v1/classes.rb', line 147

def update!(**args)
  @docker_image = args[:docker_image] if args.key?(:docker_image)
  @id = args[:id] if args.key?(:id)
  @name = args[:name] if args.key?(:name)
  @public_keys = args[:public_keys] if args.key?(:public_keys)
  @size = args[:size] if args.key?(:size)
  @ssh_host = args[:ssh_host] if args.key?(:ssh_host)
  @ssh_port = args[:ssh_port] if args.key?(:ssh_port)
  @ssh_username = args[:ssh_username] if args.key?(:ssh_username)
  @state = args[:state] if args.key?(:state)
  @vm_size_expire_time = args[:vm_size_expire_time] if args.key?(:vm_size_expire_time)
  @web_host = args[:web_host] if args.key?(:web_host)
  @web_ports = args[:web_ports] if args.key?(:web_ports)
end