WorkstationConfigArgs class

The set of arguments for WorkstationConfig. The set of arguments for WorkstationConfig.

Constructors

WorkstationConfigArgs({Input<List<WorkstationConfigAllowedPort>?>? allowedPorts, Input<Map<String, String>?>? annotations, Input<WorkstationConfigContainer?>? container, Input<String?>? deletionPolicy, Input<bool?>? disableTcpConnections, Input<String?>? displayName, Input<bool?>? enableAuditAgent, Input<WorkstationConfigEncryptionKey?>? encryptionKey, Input<List<WorkstationConfigEphemeralDirectory>?>? ephemeralDirectories, Input<WorkstationConfigHost?>? host, Input<String?>? idleAction, Input<String?>? idleTimeout, Input<Map<String, String>?>? labels, required Input<String> location, Input<int?>? maxUsableWorkstations, Input<List<WorkstationConfigPersistentDirectory>?>? persistentDirectories, Input<String?>? project, Input<List<WorkstationConfigReadinessCheck>?>? readinessChecks, Input<List<String>?>? replicaZones, Input<String?>? runningTimeout, required Input<String> workstationClusterId, required Input<String> workstationConfigId})
Creates a new WorkstationConfigArgs. allowedPorts A list of port ranges specifying single ports or ranges of ports that are externally accessible in the workstation. Allowed ports must be one of 22, 80, or within range 1024-65535. If not specified defaults to ports 22, 80, and ports 1024-65535. annotations Client-specified annotations. This is distinct from labels. container Container that will be run for each workstation using this configuration when that workstation is started. deletionPolicy Whether Terraform will be prevented from destroying the resource. Defaults to DELETE. disableTcpConnections Disables support for plain TCP connections in the workstation. By default the service supports TCP connections via a websocket relay. Setting this option to true disables that relay, which prevents the usage of services that require plain tcp connections, such as ssh. When enabled, all communication must occur over https or wss. displayName Human-readable name for this resource. enableAuditAgent 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. encryptionKey Encrypts resources of this workstation configuration using a customer-managed encryption key. ephemeralDirectories Ephemeral directories which won't persist across workstation sessions. host Runtime host for a workstation. idleAction (Optional, Beta) idleTimeout How long to wait before automatically stopping an instance that hasn't recently received any user traffic. A value of 0 indicates that this instance should never time out from idleness. Defaults to 20 minutes. labels Client-specified labels that are applied to the resource and that are also propagated to the underlying Compute Engine resources. location The location where the workstation cluster config should reside. maxUsableWorkstations Maximum number of workstations under this configuration a user can have workstations.workstation.use permission on. Only enforced on CreateWorkstation API calls on the user issuing the API request. persistentDirectories Directories to persist across workstation sessions. project The ID of the project in which the resource belongs. readinessChecks Readiness checks to be performed on a workstation. replicaZones Specifies the zones used to replicate the VM and disk resources within the region. If set, exactly two zones within the workstation cluster's region must be specified—for example, ['us-central1-a', 'us-central1-f']. runningTimeout How long to wait before automatically stopping a workstation after it was started. A value of 0 indicates that workstations using this configuration should never time out from running duration. Must be greater than 0 and less than 24 hours if encryptionKey is set. Defaults to 12 hours. workstationClusterId The ID of the parent workstation cluster. workstationConfigId The ID to be assigned to the workstation cluster config.
const
WorkstationConfigArgs.fromMap(Map<String, dynamic> map)
factory

Properties

allowedPorts → Input<List<WorkstationConfigAllowedPort>?>?
A list of port ranges specifying single ports or ranges of ports that are externally accessible in the workstation. Allowed ports must be one of 22, 80, or within range 1024-65535. If not specified defaults to ports 22, 80, and ports 1024-65535. Structure is documented below.
final
annotations → Input<Map<String, String>?>?
Client-specified annotations. This is distinct from labels. Note: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field effectiveAnnotations for all of the annotations present on the resource.
final
container → Input<WorkstationConfigContainer?>?
Container that will be run for each workstation using this configuration when that workstation is started. Structure is documented below.
final
deletionPolicy → Input<String?>?
Whether Terraform will be prevented from destroying the resource. Defaults to DELETE. When a 'terraform destroy' or 'pulumi up' would delete the resource, the command will fail if this field is set to "PREVENT" in Terraform state. When set to "ABANDON", the command will remove the resource from Terraform management without updating or deleting the resource in the API. When set to "DELETE", deleting the resource is allowed.
final
disableTcpConnections → Input<bool?>?
Disables support for plain TCP connections in the workstation. By default the service supports TCP connections via a websocket relay. Setting this option to true disables that relay, which prevents the usage of services that require plain tcp connections, such as ssh. When enabled, all communication must occur over https or wss.
final
displayName → Input<String?>?
Human-readable name for this resource.
final
enableAuditAgent → Input<bool?>?
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.
final
encryptionKey → Input<WorkstationConfigEncryptionKey?>?
Encrypts resources of this workstation configuration using a customer-managed encryption key. If specified, the boot disk of the Compute Engine instance and the persistent disk are encrypted using this encryption key. If this field is not set, the disks are encrypted using a generated key. Customer-managed encryption keys do not protect disk metadata. If the customer-managed encryption key is rotated, when the workstation instance is stopped, the system attempts to recreate the persistent disk with the new version of the key. Be sure to keep older versions of the key until the persistent disk is recreated. Otherwise, data on the persistent disk will be lost. If the encryption key is revoked, the workstation session will automatically be stopped within 7 hours. Structure is documented below.
final
ephemeralDirectories → Input<List<WorkstationConfigEphemeralDirectory>?>?
Ephemeral directories which won't persist across workstation sessions. Structure is documented below.
final
hashCode → int
The hash code for this object.
no setterinherited
host → Input<WorkstationConfigHost?>?
Runtime host for a workstation. Structure is documented below.
final
idleAction → Input<String?>?
(Optional, Beta) The action to take when the workstation has been idle for the duration specified in idle_timeout. Defaults to STOP. Default value is STOP. Possible values are: STOP, SUSPEND.
final
idleTimeout → Input<String?>?
How long to wait before automatically stopping an instance that hasn't recently received any user traffic. A value of 0 indicates that this instance should never time out from idleness. Defaults to 20 minutes. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
final
labels → Input<Map<String, String>?>?
Client-specified labels that are applied to the resource and that are also propagated to the underlying Compute Engine resources. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effectiveLabels for all of the labels present on the resource.
final
location → Input<String>
The location where the workstation cluster config should reside.
final
maxUsableWorkstations → Input<int?>?
Maximum number of workstations under this configuration a user can have workstations.workstation.use permission on. Only enforced on CreateWorkstation API calls on the user issuing the API request.
final
persistentDirectories → Input<List<WorkstationConfigPersistentDirectory>?>?
Directories to persist across workstation sessions. Structure is documented below.
final
project → Input<String?>?
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
final
readinessChecks → Input<List<WorkstationConfigReadinessCheck>?>?
Readiness checks to be performed on a workstation. Structure is documented below.
final
replicaZones → Input<List<String>?>?
Specifies the zones used to replicate the VM and disk resources within the region. If set, exactly two zones within the workstation cluster's region must be specified—for example, ['us-central1-a', 'us-central1-f']. If this field is empty, two default zones within the region are used. Immutable after the workstation configuration is created.
final
runningTimeout → Input<String?>?
How long to wait before automatically stopping a workstation after it was started. A value of 0 indicates that workstations using this configuration should never time out from running duration. Must be greater than 0 and less than 24 hours if encryptionKey is set. Defaults to 12 hours. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
workstationClusterId → Input<String>
The ID of the parent workstation cluster.
final
workstationConfigId → Input<String>
The ID to be assigned to the workstation cluster config.
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toMap() → Map<String, dynamic>
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited