import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../../types/input"; import * as outputs from "../../types/output"; import * as enums from "../../types/enums"; /** * Creates Assured Workload. */ export declare class Workload extends pulumi.CustomResource { /** * Get an existing Workload resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): Workload; /** * Returns true if the given object is an instance of Workload. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is Workload; /** * 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`. */ readonly billingAccount: pulumi.Output; /** * Input only. Immutable. Settings specific to resources needed for CJIS. */ readonly cjisSettings: pulumi.Output; /** * Immutable. Compliance Regime associated with this workload. */ readonly complianceRegime: pulumi.Output; /** * Count of active Violations in the Workload. */ readonly complianceStatus: pulumi.Output; /** * 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. */ readonly compliantButDisallowedServices: pulumi.Output; /** * Immutable. The Workload creation timestamp. */ readonly createTime: pulumi.Output; /** * 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 */ readonly displayName: pulumi.Output; /** * Represents the Ekm Provisioning State of the given workload. */ readonly ekmProvisioningResponse: pulumi.Output; /** * Optional. Indicates the sovereignty status of the given workload. Currently meant to be used by Europe/Canada customers. */ readonly enableSovereignControls: pulumi.Output; /** * Optional. ETag of the workload, it is calculated on the basis of the Workload contents. It will be used in Update & Delete operations. */ readonly etag: pulumi.Output; /** * Optional. A identifier associated with the workload and underlying projects which allows for the break down of billing costs for a workload. The value provided for the identifier will add a label to the workload and contained projects with the identifier as the value. */ readonly externalId: pulumi.Output; /** * Input only. Immutable. Settings specific to resources needed for FedRAMP High. */ readonly fedrampHighSettings: pulumi.Output; /** * Input only. Immutable. Settings specific to resources needed for FedRAMP Moderate. */ readonly fedrampModerateSettings: pulumi.Output; /** * Input only. Immutable. Settings specific to resources needed for IL4. */ readonly il4Settings: pulumi.Output; /** * Represents the KAJ enrollment state of the given workload. */ readonly kajEnrollmentState: pulumi.Output; /** * Input only. Settings used to create a CMEK crypto key. When set, a project with a KMS CMEK key is provisioned. This field is deprecated as of Feb 28, 2022. In order to create a Keyring, callers should specify, ENCRYPTION_KEYS_PROJECT or KEYRING in ResourceSettings.resource_type field. * * @deprecated Input only. Settings used to create a CMEK crypto key. When set, a project with a KMS CMEK key is provisioned. This field is deprecated as of Feb 28, 2022. In order to create a Keyring, callers should specify, ENCRYPTION_KEYS_PROJECT or KEYRING in ResourceSettings.resource_type field. */ readonly kmsSettings: pulumi.Output; /** * Optional. Labels applied to the workload. */ readonly labels: pulumi.Output<{ [key: string]: string; }>; readonly location: pulumi.Output; /** * Optional. The resource name of the workload. Format: organizations/{organization}/locations/{location}/workloads/{workload} Read-only. */ readonly name: pulumi.Output; readonly organizationId: pulumi.Output; /** * Optional. Partner regime associated with this workload. */ readonly partner: pulumi.Output; /** * Optional. Permissions granted to the AW Partner SA account for the customer workload */ readonly partnerPermissions: pulumi.Output; /** * 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} */ readonly provisionedResourcesParent: pulumi.Output; /** * 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. */ readonly resourceMonitoringEnabled: pulumi.Output; /** * 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. */ readonly resourceSettings: pulumi.Output; /** * 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. */ readonly resources: pulumi.Output; /** * Represents the SAA enrollment response of the given workload. SAA enrollment response is queried during GetWorkload call. In failure cases, user friendly error message is shown in SAA details page. */ readonly saaEnrollmentResponse: pulumi.Output; /** * 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. */ readonly violationNotificationsEnabled: pulumi.Output; /** * Create a Workload resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: WorkloadArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a Workload resource. */ export interface WorkloadArgs { /** * 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`. */ billingAccount?: pulumi.Input; /** * Input only. Immutable. Settings specific to resources needed for CJIS. */ cjisSettings?: pulumi.Input; /** * Immutable. Compliance Regime associated with this workload. */ complianceRegime: pulumi.Input; /** * 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 */ displayName: pulumi.Input; /** * Optional. Indicates the sovereignty status of the given workload. Currently meant to be used by Europe/Canada customers. */ enableSovereignControls?: pulumi.Input; /** * Optional. ETag of the workload, it is calculated on the basis of the Workload contents. It will be used in Update & Delete operations. */ etag?: pulumi.Input; /** * Optional. A identifier associated with the workload and underlying projects which allows for the break down of billing costs for a workload. The value provided for the identifier will add a label to the workload and contained projects with the identifier as the value. */ externalId?: pulumi.Input; /** * Input only. Immutable. Settings specific to resources needed for FedRAMP High. */ fedrampHighSettings?: pulumi.Input; /** * Input only. Immutable. Settings specific to resources needed for FedRAMP Moderate. */ fedrampModerateSettings?: pulumi.Input; /** * Input only. Immutable. Settings specific to resources needed for IL4. */ il4Settings?: pulumi.Input; /** * Input only. Settings used to create a CMEK crypto key. When set, a project with a KMS CMEK key is provisioned. This field is deprecated as of Feb 28, 2022. In order to create a Keyring, callers should specify, ENCRYPTION_KEYS_PROJECT or KEYRING in ResourceSettings.resource_type field. * * @deprecated Input only. Settings used to create a CMEK crypto key. When set, a project with a KMS CMEK key is provisioned. This field is deprecated as of Feb 28, 2022. In order to create a Keyring, callers should specify, ENCRYPTION_KEYS_PROJECT or KEYRING in ResourceSettings.resource_type field. */ kmsSettings?: pulumi.Input; /** * Optional. Labels applied to the workload. */ labels?: pulumi.Input<{ [key: string]: pulumi.Input; }>; location?: pulumi.Input; /** * Optional. The resource name of the workload. Format: organizations/{organization}/locations/{location}/workloads/{workload} Read-only. */ name?: pulumi.Input; organizationId: pulumi.Input; /** * Optional. Partner regime associated with this workload. */ partner?: pulumi.Input; /** * Optional. Permissions granted to the AW Partner SA account for the customer workload */ partnerPermissions?: pulumi.Input; /** * 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} */ provisionedResourcesParent?: pulumi.Input; /** * 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. */ resourceSettings?: pulumi.Input[]>; /** * 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. */ violationNotificationsEnabled?: pulumi.Input; }