Class: Google::Apis::WorkstationsV1beta::WorkstationConfig

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

Overview

A set of configuration options describing how a workstation will be run. Workstation configurations are intended to be shared across multiple workstations.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ WorkstationConfig

Returns a new instance of WorkstationConfig.



1649
1650
1651
# File 'lib/google/apis/workstations_v1beta/classes.rb', line 1649

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

Instance Attribute Details

#annotationsHash<String,String>

Client-specified annotations. Corresponds to the JSON property annotations

Returns:

  • (Hash<String,String>)


1533
1534
1535
# File 'lib/google/apis/workstations_v1beta/classes.rb', line 1533

def annotations
  @annotations
end

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

Output only. Status conditions describing the current resource state. Corresponds to the JSON property conditions



1538
1539
1540
# File 'lib/google/apis/workstations_v1beta/classes.rb', line 1538

def conditions
  @conditions
end

#containerGoogle::Apis::WorkstationsV1beta::Container

A Docker container. Corresponds to the JSON property container



1543
1544
1545
# File 'lib/google/apis/workstations_v1beta/classes.rb', line 1543

def container
  @container
end

#create_timeString

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

Returns:

  • (String)


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

def create_time
  @create_time
end

#degradedBoolean Also known as: degraded?

Output only. Whether this resource is in degraded mode, in which case it may require user action to restore full functionality. Details can be found in the conditions field. Corresponds to the JSON property degraded

Returns:

  • (Boolean)


1555
1556
1557
# File 'lib/google/apis/workstations_v1beta/classes.rb', line 1555

def degraded
  @degraded
end

#delete_timeString

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

Returns:

  • (String)


1561
1562
1563
# File 'lib/google/apis/workstations_v1beta/classes.rb', line 1561

def delete_time
  @delete_time
end

#display_nameString

Human-readable name for this resource. Corresponds to the JSON property displayName

Returns:

  • (String)


1566
1567
1568
# File 'lib/google/apis/workstations_v1beta/classes.rb', line 1566

def display_name
  @display_name
end

#enable_audit_agentBoolean Also known as: enable_audit_agent?

Whether to enable linux auditd logging on the workstation. When enabled, a service account must also be specified that has logging.buckets.write permission on the project. Operating system audit logging is distinct from Cloud Audit Logs. Corresponds to the JSON property enableAuditAgent

Returns:

  • (Boolean)


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

def enable_audit_agent
  @enable_audit_agent
end

#encryption_keyGoogle::Apis::WorkstationsV1beta::CustomerEncryptionKey

A customer-managed encryption key for the Compute Engine resources of this workstation configuration. Corresponds to the JSON property encryptionKey



1581
1582
1583
# File 'lib/google/apis/workstations_v1beta/classes.rb', line 1581

def encryption_key
  @encryption_key
end

#etagString

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)


1587
1588
1589
# File 'lib/google/apis/workstations_v1beta/classes.rb', line 1587

def etag
  @etag
end

#hostGoogle::Apis::WorkstationsV1beta::Host

Runtime host for a workstation. Corresponds to the JSON property host



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

def host
  @host
end

#idle_timeoutString

How long to wait before automatically stopping an instance that hasn't received any user traffic. A value of 0 indicates that this instance should never time out due to idleness. Defaults to 20 minutes. Corresponds to the JSON property idleTimeout

Returns:

  • (String)


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

def idle_timeout
  @idle_timeout
end

#labelsHash<String,String>

Client-specified labels that are applied to the resource and that are also propagated to the underlying Compute Engine resources. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


1605
1606
1607
# File 'lib/google/apis/workstations_v1beta/classes.rb', line 1605

def labels
  @labels
end

#nameString

Full name of this resource. Corresponds to the JSON property name

Returns:

  • (String)


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

def name
  @name
end

#persistent_directoriesArray<Google::Apis::WorkstationsV1beta::PersistentDirectory>

Directories to persist across workstation sessions. Corresponds to the JSON property persistentDirectories



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

def persistent_directories
  @persistent_directories
end

#readiness_checksArray<Google::Apis::WorkstationsV1beta::ReadinessCheck>

Readiness checks to perform when starting a workstation using this workstation configuration. Mark a workstation as running only after all specified readiness checks return 200 status codes. Corresponds to the JSON property readinessChecks



1622
1623
1624
# File 'lib/google/apis/workstations_v1beta/classes.rb', line 1622

def readiness_checks
  @readiness_checks
end

#reconcilingBoolean Also known as: reconciling?

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

Returns:

  • (Boolean)


1628
1629
1630
# File 'lib/google/apis/workstations_v1beta/classes.rb', line 1628

def reconciling
  @reconciling
end

#running_timeoutString

How long to wait before automatically stopping a workstation after it started. A value of 0 indicates that workstations using this configuration should never time out. Must be greater than 0 and less than 24 hours if encryption_key is set. Defaults to 12 hours. Corresponds to the JSON property runningTimeout

Returns:

  • (String)


1637
1638
1639
# File 'lib/google/apis/workstations_v1beta/classes.rb', line 1637

def running_timeout
  @running_timeout
end

#uidString

Output only. A system-assigned unique identified for this resource. Corresponds to the JSON property uid

Returns:

  • (String)


1642
1643
1644
# File 'lib/google/apis/workstations_v1beta/classes.rb', line 1642

def uid
  @uid
end

#update_timeString

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

Returns:

  • (String)


1647
1648
1649
# File 'lib/google/apis/workstations_v1beta/classes.rb', line 1647

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
# File 'lib/google/apis/workstations_v1beta/classes.rb', line 1654

def update!(**args)
  @annotations = args[:annotations] if args.key?(:annotations)
  @conditions = args[:conditions] if args.key?(:conditions)
  @container = args[:container] if args.key?(:container)
  @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)
  @enable_audit_agent = args[:enable_audit_agent] if args.key?(:enable_audit_agent)
  @encryption_key = args[:encryption_key] if args.key?(:encryption_key)
  @etag = args[:etag] if args.key?(:etag)
  @host = args[:host] if args.key?(:host)
  @idle_timeout = args[:idle_timeout] if args.key?(:idle_timeout)
  @labels = args[:labels] if args.key?(:labels)
  @name = args[:name] if args.key?(:name)
  @persistent_directories = args[:persistent_directories] if args.key?(:persistent_directories)
  @readiness_checks = args[:readiness_checks] if args.key?(:readiness_checks)
  @reconciling = args[:reconciling] if args.key?(:reconciling)
  @running_timeout = args[:running_timeout] if args.key?(:running_timeout)
  @uid = args[:uid] if args.key?(:uid)
  @update_time = args[:update_time] if args.key?(:update_time)
end