class Google::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsV1Workload

An Workload object for managing highly regulated workloads of cloud customers.

Attributes

billing_account[RW]

Required. Input only. The billing account used for the resources which are direct children of workload. This billing account is initially associated with the resources created as part of Workload creation. After the initial creation of these resources, the customer can change the assigned billing account. The resource name has the form `billingAccounts/`billing_account_id“. For example, `billingAccounts/012345-567890-ABCDEF`. Corresponds to the JSON property `billingAccount` @return [String]

compliance_regime[RW]

Required. Immutable. Compliance Regime associated with this workload. Corresponds to the JSON property `complianceRegime` @return [String]

create_time[RW]

Output only. Immutable. The Workload creation timestamp. Corresponds to the JSON property `createTime` @return [String]

display_name[RW]

Required. The user-assigned display name of the Workload. When present it must be between 4 to 30 characters. Allowed characters are: lowercase and uppercase letters, numbers, hyphen, and spaces. Example: My Workload Corresponds to the JSON property `displayName` @return [String]

etag[RW]

Optional. ETag of the workload, it is calculated on the basis of the Workload contents. It will be used in Update & Delete operations. Corresponds to the JSON property `etag` @return [String]

kms_settings[RW]

Settings specific to the Key Management Service. Corresponds to the JSON property `kmsSettings` @return [Google::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsV1WorkloadKmsSettings]

labels[RW]

Optional. Labels applied to the workload. Corresponds to the JSON property `labels` @return [Hash<String,String>]

name[RW]

Optional. The resource name of the workload. Format: organizations/` organization`/locations/`location`/workloads/`workload` Read-only. Corresponds to the JSON property `name` @return [String]

provisioned_resources_parent[RW]

Input only. The parent resource for the resources managed by this Assured Workload. May be either empty or a folder resource which is a child of the Workload parent. If not specified all resources are created under the parent organization. Format: folders/`folder_id` Corresponds to the JSON property `provisionedResourcesParent` @return [String]

resource_settings[RW]

Input only. Resource properties that are used to customize workload resources. These properties (such as custom project id) will be used to create workload resources if possible. This field is optional. Corresponds to the JSON property `resourceSettings` @return [Array<Google::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsV1WorkloadResourceSettings>]

resources[RW]

Output only. The resources associated with this workload. These resources will be created when creating the workload. If any of the projects already exist, the workload creation will fail. Always read only. Corresponds to the JSON property `resources` @return [Array<Google::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsV1WorkloadResourceInfo>]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/assuredworkloads_v1/classes.rb, line 163
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/assuredworkloads_v1/classes.rb, line 168
def update!(**args)
  @billing_account = args[:billing_account] if args.key?(:billing_account)
  @compliance_regime = args[:compliance_regime] if args.key?(:compliance_regime)
  @create_time = args[:create_time] if args.key?(:create_time)
  @display_name = args[:display_name] if args.key?(:display_name)
  @etag = args[:etag] if args.key?(:etag)
  @kms_settings = args[:kms_settings] if args.key?(:kms_settings)
  @labels = args[:labels] if args.key?(:labels)
  @name = args[:name] if args.key?(:name)
  @provisioned_resources_parent = args[:provisioned_resources_parent] if args.key?(:provisioned_resources_parent)
  @resource_settings = args[:resource_settings] if args.key?(:resource_settings)
  @resources = args[:resources] if args.key?(:resources)
end