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.



1641
1642
1643
# File 'lib/google/apis/workstations_v1/classes.rb', line 1641

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


1548
1549
1550
# File 'lib/google/apis/workstations_v1/classes.rb', line 1548

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



1554
1555
1556
# File 'lib/google/apis/workstations_v1/classes.rb', line 1554

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)


1562
1563
1564
# File 'lib/google/apis/workstations_v1/classes.rb', line 1562

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)


1567
1568
1569
# File 'lib/google/apis/workstations_v1/classes.rb', line 1567

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. Details can be found in conditions. Corresponds to the JSON property degraded

Returns:

  • (Boolean)


1574
1575
1576
# File 'lib/google/apis/workstations_v1/classes.rb', line 1574

def degraded
  @degraded
end

#delete_timeString

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

Returns:

  • (String)


1580
1581
1582
# File 'lib/google/apis/workstations_v1/classes.rb', line 1580

def delete_time
  @delete_time
end

#display_nameString

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

Returns:

  • (String)


1585
1586
1587
# File 'lib/google/apis/workstations_v1/classes.rb', line 1585

def display_name
  @display_name
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)


1592
1593
1594
# File 'lib/google/apis/workstations_v1/classes.rb', line 1592

def etag
  @etag
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>)


1599
1600
1601
# File 'lib/google/apis/workstations_v1/classes.rb', line 1599

def labels
  @labels
end

#nameString

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

Returns:

  • (String)


1604
1605
1606
# File 'lib/google/apis/workstations_v1/classes.rb', line 1604

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)


1610
1611
1612
# File 'lib/google/apis/workstations_v1/classes.rb', line 1610

def network
  @network
end

#private_cluster_configGoogle::Apis::WorkstationsV1::PrivateClusterConfig

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



1615
1616
1617
# File 'lib/google/apis/workstations_v1/classes.rb', line 1615

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)


1621
1622
1623
# File 'lib/google/apis/workstations_v1/classes.rb', line 1621

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)


1629
1630
1631
# File 'lib/google/apis/workstations_v1/classes.rb', line 1629

def subnetwork
  @subnetwork
end

#uidString

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

Returns:

  • (String)


1634
1635
1636
# File 'lib/google/apis/workstations_v1/classes.rb', line 1634

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)


1639
1640
1641
# File 'lib/google/apis/workstations_v1/classes.rb', line 1639

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
# File 'lib/google/apis/workstations_v1/classes.rb', line 1646

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)
  @etag = args[:etag] if args.key?(:etag)
  @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)
  @uid = args[:uid] if args.key?(:uid)
  @update_time = args[:update_time] if args.key?(:update_time)
end