Class: Google::Apis::WorkstationsV1::WorkstationCluster

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/workstations_v1/classes.rb,
lib/google/apis/workstations_v1/representations.rb,
lib/google/apis/workstations_v1/representations.rb

Overview

A workstation cluster resource in the Cloud Workstations API. Defines a group of workstations in a particular region and the VPC network they're attached to.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ WorkstationCluster

Returns a new instance of WorkstationCluster.



2169
2170
2171
# File 'lib/google/apis/workstations_v1/classes.rb', line 2169

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

Instance Attribute Details

#annotationsHash<String,String>

Optional. Client-specified annotations. Corresponds to the JSON property annotations

Returns:

  • (Hash<String,String>)


2038
2039
2040
# File 'lib/google/apis/workstations_v1/classes.rb', line 2038

def annotations
  @annotations
end

#conditionsArray<Google::Apis::WorkstationsV1::Status>

Output only. Status conditions describing the workstation cluster's current state. Corresponds to the JSON property conditions



2044
2045
2046
# File 'lib/google/apis/workstations_v1/classes.rb', line 2044

def conditions
  @conditions
end

#control_plane_ipString

Output only. The private IP address of the control plane for this workstation cluster. Workstation VMs need access to this IP address to work with the service, so make sure that your firewall rules allow egress from the workstation VMs to this address. Corresponds to the JSON property controlPlaneIp

Returns:

  • (String)


2052
2053
2054
# File 'lib/google/apis/workstations_v1/classes.rb', line 2052

def control_plane_ip
  @control_plane_ip
end

#create_timeString

Output only. Time when this workstation cluster was created. Corresponds to the JSON property createTime

Returns:

  • (String)


2057
2058
2059
# File 'lib/google/apis/workstations_v1/classes.rb', line 2057

def create_time
  @create_time
end

#degradedBoolean Also known as: degraded?

Output only. Whether this workstation cluster is in degraded mode, in which case it may require user action to restore full functionality. The conditions field contains detailed information about the status of the cluster. Corresponds to the JSON property degraded

Returns:

  • (Boolean)


2064
2065
2066
# File 'lib/google/apis/workstations_v1/classes.rb', line 2064

def degraded
  @degraded
end

#delete_timeString

Output only. Time when this workstation cluster was soft-deleted. Corresponds to the JSON property deleteTime

Returns:

  • (String)


2070
2071
2072
# File 'lib/google/apis/workstations_v1/classes.rb', line 2070

def delete_time
  @delete_time
end

#display_nameString

Optional. Human-readable name for this workstation cluster. Corresponds to the JSON property displayName

Returns:

  • (String)


2075
2076
2077
# File 'lib/google/apis/workstations_v1/classes.rb', line 2075

def display_name
  @display_name
end

#domain_configGoogle::Apis::WorkstationsV1::DomainConfig

Configuration options for a custom domain. Corresponds to the JSON property domainConfig



2080
2081
2082
# File 'lib/google/apis/workstations_v1/classes.rb', line 2080

def domain_config
  @domain_config
end

#etagString

Optional. Checksum computed by the server. May be sent on update and delete requests to make sure that the client has an up-to-date value before proceeding. Corresponds to the JSON property etag

Returns:

  • (String)


2087
2088
2089
# File 'lib/google/apis/workstations_v1/classes.rb', line 2087

def etag
  @etag
end

#gateway_configGoogle::Apis::WorkstationsV1::GatewayConfig

Configuration options for Cluster HTTP Gateway. Corresponds to the JSON property gatewayConfig



2092
2093
2094
# File 'lib/google/apis/workstations_v1/classes.rb', line 2092

def gateway_config
  @gateway_config
end

#labelsHash<String,String>

Optional. Labels that are applied to the workstation cluster and that are also propagated to the underlying Compute Engine resources. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


2099
2100
2101
# File 'lib/google/apis/workstations_v1/classes.rb', line 2099

def labels
  @labels
end

#nameString

Identifier. Full name of this workstation cluster. Corresponds to the JSON property name

Returns:

  • (String)


2104
2105
2106
# File 'lib/google/apis/workstations_v1/classes.rb', line 2104

def name
  @name
end

#networkString

Immutable. Name of the Compute Engine network in which instances associated with this workstation cluster will be created. Corresponds to the JSON property network

Returns:

  • (String)


2110
2111
2112
# File 'lib/google/apis/workstations_v1/classes.rb', line 2110

def network
  @network
end

#private_cluster_configGoogle::Apis::WorkstationsV1::PrivateClusterConfig

Configuration options for private workstation clusters. Corresponds to the JSON property privateClusterConfig



2115
2116
2117
# File 'lib/google/apis/workstations_v1/classes.rb', line 2115

def private_cluster_config
  @private_cluster_config
end

#reconcilingBoolean Also known as: reconciling?

Output only. Indicates whether this workstation cluster is currently being updated to match its intended state. Corresponds to the JSON property reconciling

Returns:

  • (Boolean)


2121
2122
2123
# File 'lib/google/apis/workstations_v1/classes.rb', line 2121

def reconciling
  @reconciling
end

#subnetworkString

Immutable. Name of the Compute Engine subnetwork in which instances associated with this workstation cluster will be created. Must be part of the subnetwork specified for this workstation cluster. Corresponds to the JSON property subnetwork

Returns:

  • (String)


2129
2130
2131
# File 'lib/google/apis/workstations_v1/classes.rb', line 2129

def subnetwork
  @subnetwork
end

#tagsHash<String,String>

Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: "123/environment": "production", "123/costCenter": " marketing" Corresponds to the JSON property tags

Returns:

  • (Hash<String,String>)


2136
2137
2138
# File 'lib/google/apis/workstations_v1/classes.rb', line 2136

def tags
  @tags
end

#uidString

Output only. A system-assigned unique identifier for this workstation cluster. Corresponds to the JSON property uid

Returns:

  • (String)


2141
2142
2143
# File 'lib/google/apis/workstations_v1/classes.rb', line 2141

def uid
  @uid
end

#update_timeString

Output only. Time when this workstation cluster was most recently updated. Corresponds to the JSON property updateTime

Returns:

  • (String)


2146
2147
2148
# File 'lib/google/apis/workstations_v1/classes.rb', line 2146

def update_time
  @update_time
end

#workstation_authorization_urlString

Optional. Specifies the redirect URL for unauthorized requests received by workstation VMs in this cluster. Redirects to this endpoint will send a base64 encoded state query param containing the target workstation name and original request hostname. The endpoint is responsible for retrieving a token using GenerateAccessToken and redirecting back to the original hostname with the token. Corresponds to the JSON property workstationAuthorizationUrl

Returns:

  • (String)


2156
2157
2158
# File 'lib/google/apis/workstations_v1/classes.rb', line 2156

def workstation_authorization_url
  @workstation_authorization_url
end

#workstation_launch_urlString

Optional. Specifies the launch URL for workstations in this cluster. Requests sent to unstarted workstations will be redirected to this URL. Requests redirected to the launch endpoint will be sent with a workstation and project query parameter containing the full workstation resource name and project ID, respectively. The launch endpoint is responsible for starting the workstation, polling it until it reaches STATE_RUNNING, and then issuing a redirect to the workstation's host URL. Corresponds to the JSON property workstationLaunchUrl

Returns:

  • (String)


2167
2168
2169
# File 'lib/google/apis/workstations_v1/classes.rb', line 2167

def workstation_launch_url
  @workstation_launch_url
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
# File 'lib/google/apis/workstations_v1/classes.rb', line 2174

def update!(**args)
  @annotations = args[:annotations] if args.key?(:annotations)
  @conditions = args[:conditions] if args.key?(:conditions)
  @control_plane_ip = args[:control_plane_ip] if args.key?(:control_plane_ip)
  @create_time = args[:create_time] if args.key?(:create_time)
  @degraded = args[:degraded] if args.key?(:degraded)
  @delete_time = args[:delete_time] if args.key?(:delete_time)
  @display_name = args[:display_name] if args.key?(:display_name)
  @domain_config = args[:domain_config] if args.key?(:domain_config)
  @etag = args[:etag] if args.key?(:etag)
  @gateway_config = args[:gateway_config] if args.key?(:gateway_config)
  @labels = args[:labels] if args.key?(:labels)
  @name = args[:name] if args.key?(:name)
  @network = args[:network] if args.key?(:network)
  @private_cluster_config = args[:private_cluster_config] if args.key?(:private_cluster_config)
  @reconciling = args[:reconciling] if args.key?(:reconciling)
  @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
  @tags = args[:tags] if args.key?(:tags)
  @uid = args[:uid] if args.key?(:uid)
  @update_time = args[:update_time] if args.key?(:update_time)
  @workstation_authorization_url = args[:workstation_authorization_url] if args.key?(:workstation_authorization_url)
  @workstation_launch_url = args[:workstation_launch_url] if args.key?(:workstation_launch_url)
end