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.



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

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


2028
2029
2030
# File 'lib/google/apis/workstations_v1/classes.rb', line 2028

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



2034
2035
2036
# File 'lib/google/apis/workstations_v1/classes.rb', line 2034

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)


2042
2043
2044
# File 'lib/google/apis/workstations_v1/classes.rb', line 2042

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)


2047
2048
2049
# File 'lib/google/apis/workstations_v1/classes.rb', line 2047

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)


2054
2055
2056
# File 'lib/google/apis/workstations_v1/classes.rb', line 2054

def degraded
  @degraded
end

#delete_timeString

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

Returns:

  • (String)


2060
2061
2062
# File 'lib/google/apis/workstations_v1/classes.rb', line 2060

def delete_time
  @delete_time
end

#display_nameString

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

Returns:

  • (String)


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

def display_name
  @display_name
end

#domain_configGoogle::Apis::WorkstationsV1::DomainConfig

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



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

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)


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

def etag
  @etag
end

#gateway_configGoogle::Apis::WorkstationsV1::GatewayConfig

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



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

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


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

def labels
  @labels
end

#nameString

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

Returns:

  • (String)


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

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)


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

def network
  @network
end

#private_cluster_configGoogle::Apis::WorkstationsV1::PrivateClusterConfig

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



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

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)


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

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)


2119
2120
2121
# File 'lib/google/apis/workstations_v1/classes.rb', line 2119

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


2126
2127
2128
# File 'lib/google/apis/workstations_v1/classes.rb', line 2126

def tags
  @tags
end

#uidString

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

Returns:

  • (String)


2131
2132
2133
# File 'lib/google/apis/workstations_v1/classes.rb', line 2131

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)


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

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)


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

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)


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

def workstation_launch_url
  @workstation_launch_url
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
# File 'lib/google/apis/workstations_v1/classes.rb', line 2164

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