Class: Google::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsVersioningV1mainWorkload

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

Returns a new instance of GoogleCloudAssuredworkloadsVersioningV1mainWorkload.



739
740
741
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 739

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

Instance Attribute Details

#billing_accountString

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)


656
657
658
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 656

def 
  @billing_account
end

#cjis_settingsGoogle::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsVersioningV1mainWorkloadCjisSettings

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



661
662
663
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 661

def cjis_settings
  @cjis_settings
end

#compliance_regimeString

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

Returns:

  • (String)


666
667
668
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 666

def compliance_regime
  @compliance_regime
end

#create_timeString

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

Returns:

  • (String)


671
672
673
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 671

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)


678
679
680
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 678

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)


684
685
686
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 684

def etag
  @etag
end

#fedramp_high_settingsGoogle::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsVersioningV1mainWorkloadFedrampHighSettings

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



689
690
691
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 689

def fedramp_high_settings
  @fedramp_high_settings
end

#fedramp_moderate_settingsGoogle::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsVersioningV1mainWorkloadFedrampModerateSettings

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



694
695
696
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 694

def fedramp_moderate_settings
  @fedramp_moderate_settings
end

#il4_settingsGoogle::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsVersioningV1mainWorkloadIl4Settings

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



699
700
701
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 699

def il4_settings
  @il4_settings
end

#kms_settingsGoogle::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsVersioningV1mainWorkloadKmsSettings

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



704
705
706
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 704

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


709
710
711
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 709

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)


715
716
717
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 715

def name
  @name
end

#provisioned_resources_parentString

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

Returns:

  • (String)


723
724
725
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 723

def provisioned_resources_parent
  @provisioned_resources_parent
end

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

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



730
731
732
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 730

def resource_settings
  @resource_settings
end

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

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



737
738
739
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 737

def resources
  @resources
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 744

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