Class: Google::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsV1beta1Workload

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

Overview

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudAssuredworkloadsV1beta1Workload

Returns a new instance of GoogleCloudAssuredworkloadsV1beta1Workload.



413
414
415
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 413

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

Instance Attribute Details

#billing_accountString

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 propertybillingAccount`

Returns:

  • (String)


329
330
331
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 329

def 
  @billing_account
end

#cjis_settingsGoogle::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsV1beta1WorkloadCjisSettings

Settings specific to resources needed for CJIS. Corresponds to the JSON property cjisSettings



334
335
336
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 334

def cjis_settings
  @cjis_settings
end

#compliance_regimeString

Required. Immutable. Compliance Regime associated with this workload. Corresponds to the JSON property complianceRegime

Returns:

  • (String)


339
340
341
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 339

def compliance_regime
  @compliance_regime
end

#create_timeString

Output only. Immutable. The Workload creation timestamp. Corresponds to the JSON property createTime

Returns:

  • (String)


344
345
346
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 344

def create_time
  @create_time
end

#display_nameString

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

Returns:

  • (String)


351
352
353
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 351

def display_name
  @display_name
end

#etagString

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

Returns:

  • (String)


357
358
359
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 357

def etag
  @etag
end

#fedramp_high_settingsGoogle::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsV1beta1WorkloadFedrampHighSettings

Settings specific to resources needed for FedRAMP High. Corresponds to the JSON property fedrampHighSettings



362
363
364
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 362

def fedramp_high_settings
  @fedramp_high_settings
end

#fedramp_moderate_settingsGoogle::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsV1beta1WorkloadFedrampModerateSettings

Settings specific to resources needed for FedRAMP Moderate. Corresponds to the JSON property fedrampModerateSettings



367
368
369
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 367

def fedramp_moderate_settings
  @fedramp_moderate_settings
end

#il4_settingsGoogle::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsV1beta1WorkloadIl4Settings

Settings specific to resources needed for IL4. Corresponds to the JSON property il4Settings



372
373
374
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 372

def il4_settings
  @il4_settings
end

#kms_settingsGoogle::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsV1beta1WorkloadKmsSettings

Settings specific to the Key Management Service. Corresponds to the JSON property kmsSettings



377
378
379
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 377

def kms_settings
  @kms_settings
end

#labelsHash<String,String>

Optional. Labels applied to the workload. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


382
383
384
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 382

def labels
  @labels
end

#nameString

Optional. The resource name of the workload. Format: organizations/ organization/locations/location/workloads/workload Read-only. Corresponds to the JSON property name

Returns:

  • (String)


388
389
390
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 388

def name
  @name
end

#provisioned_resources_parentString

Input only. The parent resource for the resources managed by this Assured Workload. May be either an organization or a folder. Must be the same or a child of the Workload parent. If not specified all resources are created under the Workload parent. Formats: folders/folder_id organizations/ organization_id Corresponds to the JSON property provisionedResourcesParent

Returns:

  • (String)


397
398
399
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 397

def provisioned_resources_parent
  @provisioned_resources_parent
end

#resource_settingsArray<Google::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsV1beta1WorkloadResourceSettings>

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



404
405
406
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 404

def resource_settings
  @resource_settings
end

#resourcesArray<Google::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsV1beta1WorkloadResourceInfo>

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



411
412
413
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 411

def resources
  @resources
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 418

def update!(**args)
  @billing_account = args[:billing_account] if args.key?(:billing_account)
  @cjis_settings = args[:cjis_settings] if args.key?(:cjis_settings)
  @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)
  @fedramp_high_settings = args[:fedramp_high_settings] if args.key?(:fedramp_high_settings)
  @fedramp_moderate_settings = args[:fedramp_moderate_settings] if args.key?(:fedramp_moderate_settings)
  @il4_settings = args[:il4_settings] if args.key?(:il4_settings)
  @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