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.



2193
2194
2195
# File 'lib/google/apis/workstations_v1/classes.rb', line 2193

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>)


2062
2063
2064
# File 'lib/google/apis/workstations_v1/classes.rb', line 2062

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



2068
2069
2070
# File 'lib/google/apis/workstations_v1/classes.rb', line 2068

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)


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

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)


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

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)


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

def degraded
  @degraded
end

#delete_timeString

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

Returns:

  • (String)


2094
2095
2096
# File 'lib/google/apis/workstations_v1/classes.rb', line 2094

def delete_time
  @delete_time
end

#display_nameString

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

Returns:

  • (String)


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

def display_name
  @display_name
end

#domain_configGoogle::Apis::WorkstationsV1::DomainConfig

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



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

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)


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

def etag
  @etag
end

#gateway_configGoogle::Apis::WorkstationsV1::GatewayConfig

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



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

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>)


2123
2124
2125
# File 'lib/google/apis/workstations_v1/classes.rb', line 2123

def labels
  @labels
end

#nameString

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

Returns:

  • (String)


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

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)


2134
2135
2136
# File 'lib/google/apis/workstations_v1/classes.rb', line 2134

def network
  @network
end

#private_cluster_configGoogle::Apis::WorkstationsV1::PrivateClusterConfig

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



2139
2140
2141
# File 'lib/google/apis/workstations_v1/classes.rb', line 2139

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)


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

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)


2153
2154
2155
# File 'lib/google/apis/workstations_v1/classes.rb', line 2153

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>)


2160
2161
2162
# File 'lib/google/apis/workstations_v1/classes.rb', line 2160

def tags
  @tags
end

#uidString

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

Returns:

  • (String)


2165
2166
2167
# File 'lib/google/apis/workstations_v1/classes.rb', line 2165

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)


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

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)


2180
2181
2182
# File 'lib/google/apis/workstations_v1/classes.rb', line 2180

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)


2191
2192
2193
# File 'lib/google/apis/workstations_v1/classes.rb', line 2191

def workstation_launch_url
  @workstation_launch_url
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
# File 'lib/google/apis/workstations_v1/classes.rb', line 2198

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