Class: Google::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsV1Workload

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

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudAssuredworkloadsV1Workload

Returns a new instance of GoogleCloudAssuredworkloadsV1Workload.



1312
1313
1314
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1312

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

Instance Attribute Details

#billing_accountString

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


1172
1173
1174
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1172

def 
  @billing_account
end

#compliance_regimeString

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

Returns:

  • (String)


1177
1178
1179
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1177

def compliance_regime
  @compliance_regime
end

#compliance_statusGoogle::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsV1WorkloadComplianceStatus

Represents the Compliance Status of this workload Corresponds to the JSON property complianceStatus



1182
1183
1184
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1182

def compliance_status
  @compliance_status
end

#compliant_but_disallowed_servicesArray<String>

Output only. Urls for services which are compliant for this Assured Workload, but which are currently disallowed by the ResourceUsageRestriction org policy. Invoke RestrictAllowedResources endpoint to allow your project developers to use these services in their environment. Corresponds to the JSON property compliantButDisallowedServices

Returns:

  • (Array<String>)


1190
1191
1192
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1190

def compliant_but_disallowed_services
  @compliant_but_disallowed_services
end

#create_timeString

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

Returns:

  • (String)


1195
1196
1197
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1195

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)


1202
1203
1204
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1202

def display_name
  @display_name
end

#ekm_provisioning_responseGoogle::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsV1WorkloadEkmProvisioningResponse

External key management systems(EKM) Provisioning response Corresponds to the JSON property ekmProvisioningResponse



1207
1208
1209
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1207

def ekm_provisioning_response
  @ekm_provisioning_response
end

#enable_sovereign_controlsBoolean Also known as: enable_sovereign_controls?

Optional. Indicates the sovereignty status of the given workload. Currently meant to be used by Europe/Canada customers. Corresponds to the JSON property enableSovereignControls

Returns:

  • (Boolean)


1213
1214
1215
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1213

def enable_sovereign_controls
  @enable_sovereign_controls
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)


1220
1221
1222
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1220

def etag
  @etag
end

#kaj_enrollment_stateString

Output only. Represents the KAJ enrollment state of the given workload. Corresponds to the JSON property kajEnrollmentState

Returns:

  • (String)


1225
1226
1227
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1225

def kaj_enrollment_state
  @kaj_enrollment_state
end

#kms_settingsGoogle::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsV1WorkloadKmsSettings

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



1230
1231
1232
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1230

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


1235
1236
1237
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1235

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)


1241
1242
1243
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1241

def name
  @name
end

#partnerString

Optional. Partner regime associated with this workload. Corresponds to the JSON property partner

Returns:

  • (String)


1246
1247
1248
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1246

def partner
  @partner
end

#partner_permissionsGoogle::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsV1WorkloadPartnerPermissions

Permissions granted to the AW Partner SA account for the customer workload Corresponds to the JSON property partnerPermissions



1251
1252
1253
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1251

def partner_permissions
  @partner_permissions
end

#partner_services_billing_accountString

Optional. Billing account necessary for purchasing services from Sovereign Partners. This field is required for creating SIA/PSN/CNTXT/Telefonica partner workloads. The caller should have 'billing.resourceAssociations.create' IAM permission on this billing-account. The format of this string is billingAccounts/AAAAAA-BBBBBB-CCCCCC Corresponds to the JSON property partnerServicesBillingAccount

Returns:

  • (String)


1260
1261
1262
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1260

def 
  @partner_services_billing_account
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)


1268
1269
1270
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1268

def provisioned_resources_parent
  @provisioned_resources_parent
end

#resource_monitoring_enabledBoolean Also known as: resource_monitoring_enabled?

Output only. Indicates whether resource monitoring is enabled for workload or not. It is true when Resource feed is subscribed to AWM topic and AWM Service Agent Role is binded to AW Service Account for resource Assured workload. Corresponds to the JSON property resourceMonitoringEnabled

Returns:

  • (Boolean)


1275
1276
1277
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1275

def resource_monitoring_enabled
  @resource_monitoring_enabled
end

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

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



1283
1284
1285
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1283

def resource_settings
  @resource_settings
end

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

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



1290
1291
1292
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1290

def resources
  @resources
end

#saa_enrollment_responseGoogle::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsV1WorkloadSaaEnrollmentResponse

Signed Access Approvals (SAA) enrollment response. Corresponds to the JSON property saaEnrollmentResponse



1295
1296
1297
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1295

def saa_enrollment_response
  @saa_enrollment_response
end

#violation_notifications_enabledBoolean Also known as: violation_notifications_enabled?

Optional. Indicates whether the e-mail notification for a violation is enabled for a workload. This value will be by default True, and if not present will be considered as true. This should only be updated via updateWorkload call. Any Changes to this field during the createWorkload call will not be honored. This will always be true while creating the workload. Corresponds to the JSON property violationNotificationsEnabled

Returns:

  • (Boolean)


1304
1305
1306
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1304

def violation_notifications_enabled
  @violation_notifications_enabled
end

#workload_optionsGoogle::Apis::AssuredworkloadsV1::GoogleCloudAssuredworkloadsV1WorkloadWorkloadOptions

Options to be set for the given created workload. Corresponds to the JSON property workloadOptions



1310
1311
1312
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1310

def workload_options
  @workload_options
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
# File 'lib/google/apis/assuredworkloads_v1/classes.rb', line 1317

def update!(**args)
  @billing_account = args[:billing_account] if args.key?(:billing_account)
  @compliance_regime = args[:compliance_regime] if args.key?(:compliance_regime)
  @compliance_status = args[:compliance_status] if args.key?(:compliance_status)
  @compliant_but_disallowed_services = args[:compliant_but_disallowed_services] if args.key?(:compliant_but_disallowed_services)
  @create_time = args[:create_time] if args.key?(:create_time)
  @display_name = args[:display_name] if args.key?(:display_name)
  @ekm_provisioning_response = args[:ekm_provisioning_response] if args.key?(:ekm_provisioning_response)
  @enable_sovereign_controls = args[:enable_sovereign_controls] if args.key?(:enable_sovereign_controls)
  @etag = args[:etag] if args.key?(:etag)
  @kaj_enrollment_state = args[:kaj_enrollment_state] if args.key?(:kaj_enrollment_state)
  @kms_settings = args[:kms_settings] if args.key?(:kms_settings)
  @labels = args[:labels] if args.key?(:labels)
  @name = args[:name] if args.key?(:name)
  @partner = args[:partner] if args.key?(:partner)
  @partner_permissions = args[:partner_permissions] if args.key?(:partner_permissions)
  @partner_services_billing_account = args[:partner_services_billing_account] if args.key?(:partner_services_billing_account)
  @provisioned_resources_parent = args[:provisioned_resources_parent] if args.key?(:provisioned_resources_parent)
  @resource_monitoring_enabled = args[:resource_monitoring_enabled] if args.key?(:resource_monitoring_enabled)
  @resource_settings = args[:resource_settings] if args.key?(:resource_settings)
  @resources = args[:resources] if args.key?(:resources)
  @saa_enrollment_response = args[:saa_enrollment_response] if args.key?(:saa_enrollment_response)
  @violation_notifications_enabled = args[:violation_notifications_enabled] if args.key?(:violation_notifications_enabled)
  @workload_options = args[:workload_options] if args.key?(:workload_options)
end