1. Packages
  2. Google Cloud Native
  3. API Docs
  4. compute
  5. compute/beta
  6. RegionCommitment

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

google-native.compute/beta.RegionCommitment

Explore with Pulumi AI

google-native logo

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

    Creates a commitment in the specified project using the data included in the request. Note - this resource’s API doesn’t support deletion. When deleted, the resource will persist on Google Cloud even though it will be deleted from Pulumi state.

    Create RegionCommitment Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new RegionCommitment(name: string, args: RegionCommitmentArgs, opts?: CustomResourceOptions);
    @overload
    def RegionCommitment(resource_name: str,
                         args: RegionCommitmentArgs,
                         opts: Optional[ResourceOptions] = None)
    
    @overload
    def RegionCommitment(resource_name: str,
                         opts: Optional[ResourceOptions] = None,
                         region: Optional[str] = None,
                         plan: Optional[RegionCommitmentPlan] = None,
                         description: Optional[str] = None,
                         license_resource: Optional[LicenseResourceCommitmentArgs] = None,
                         merge_source_commitments: Optional[Sequence[str]] = None,
                         name: Optional[str] = None,
                         auto_renew: Optional[bool] = None,
                         project: Optional[str] = None,
                         category: Optional[RegionCommitmentCategory] = None,
                         request_id: Optional[str] = None,
                         reservations: Optional[Sequence[ReservationArgs]] = None,
                         resources: Optional[Sequence[ResourceCommitmentArgs]] = None,
                         split_source_commitment: Optional[str] = None,
                         type: Optional[RegionCommitmentType] = None)
    func NewRegionCommitment(ctx *Context, name string, args RegionCommitmentArgs, opts ...ResourceOption) (*RegionCommitment, error)
    public RegionCommitment(string name, RegionCommitmentArgs args, CustomResourceOptions? opts = null)
    public RegionCommitment(String name, RegionCommitmentArgs args)
    public RegionCommitment(String name, RegionCommitmentArgs args, CustomResourceOptions options)
    
    type: google-native:compute/beta:RegionCommitment
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args RegionCommitmentArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args RegionCommitmentArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args RegionCommitmentArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args RegionCommitmentArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args RegionCommitmentArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var google_nativeRegionCommitmentResource = new GoogleNative.Compute.Beta.RegionCommitment("google-nativeRegionCommitmentResource", new()
    {
        Region = "string",
        Plan = GoogleNative.Compute.Beta.RegionCommitmentPlan.Invalid,
        Description = "string",
        LicenseResource = new GoogleNative.Compute.Beta.Inputs.LicenseResourceCommitmentArgs
        {
            Amount = "string",
            CoresPerLicense = "string",
            License = "string",
        },
        MergeSourceCommitments = new[]
        {
            "string",
        },
        Name = "string",
        AutoRenew = false,
        Project = "string",
        Category = GoogleNative.Compute.Beta.RegionCommitmentCategory.CategoryUnspecified,
        RequestId = "string",
        Reservations = new[]
        {
            new GoogleNative.Compute.Beta.Inputs.ReservationArgs
            {
                AggregateReservation = new GoogleNative.Compute.Beta.Inputs.AllocationAggregateReservationArgs
                {
                    ReservedResources = new[]
                    {
                        new GoogleNative.Compute.Beta.Inputs.AllocationAggregateReservationReservedResourceInfoArgs
                        {
                            Accelerator = new GoogleNative.Compute.Beta.Inputs.AllocationAggregateReservationReservedResourceInfoAcceleratorArgs
                            {
                                AcceleratorCount = 0,
                                AcceleratorType = "string",
                            },
                        },
                    },
                    VmFamily = GoogleNative.Compute.Beta.AllocationAggregateReservationVmFamily.VmFamilyCloudTpuLiteDeviceCt5l,
                    WorkloadType = GoogleNative.Compute.Beta.AllocationAggregateReservationWorkloadType.Batch,
                },
                DeleteAfterDuration = new GoogleNative.Compute.Beta.Inputs.DurationArgs
                {
                    Nanos = 0,
                    Seconds = "string",
                },
                DeleteAtTime = "string",
                Description = "string",
                Name = "string",
                ResourcePolicies = 
                {
                    { "string", "string" },
                },
                ShareSettings = new GoogleNative.Compute.Beta.Inputs.ShareSettingsArgs
                {
                    ProjectMap = 
                    {
                        { "string", "string" },
                    },
                    Projects = new[]
                    {
                        "string",
                    },
                    ShareType = GoogleNative.Compute.Beta.ShareSettingsShareType.Local,
                },
                SpecificReservation = new GoogleNative.Compute.Beta.Inputs.AllocationSpecificSKUReservationArgs
                {
                    Count = "string",
                    InstanceProperties = new GoogleNative.Compute.Beta.Inputs.AllocationSpecificSKUAllocationReservedInstancePropertiesArgs
                    {
                        GuestAccelerators = new[]
                        {
                            new GoogleNative.Compute.Beta.Inputs.AcceleratorConfigArgs
                            {
                                AcceleratorCount = 0,
                                AcceleratorType = "string",
                            },
                        },
                        LocalSsds = new[]
                        {
                            new GoogleNative.Compute.Beta.Inputs.AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskArgs
                            {
                                DiskSizeGb = "string",
                                Interface = GoogleNative.Compute.Beta.AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskInterface.Nvme,
                            },
                        },
                        LocationHint = "string",
                        MachineType = "string",
                        MaintenanceFreezeDurationHours = 0,
                        MaintenanceInterval = GoogleNative.Compute.Beta.AllocationSpecificSKUAllocationReservedInstancePropertiesMaintenanceInterval.AsNeeded,
                        MinCpuPlatform = "string",
                    },
                    SourceInstanceTemplate = "string",
                },
                SpecificReservationRequired = false,
                Zone = "string",
            },
        },
        Resources = new[]
        {
            new GoogleNative.Compute.Beta.Inputs.ResourceCommitmentArgs
            {
                AcceleratorType = "string",
                Amount = "string",
                Type = GoogleNative.Compute.Beta.ResourceCommitmentType.Accelerator,
            },
        },
        SplitSourceCommitment = "string",
        Type = GoogleNative.Compute.Beta.RegionCommitmentType.AcceleratorOptimized,
    });
    
    example, err := computebeta.NewRegionCommitment(ctx, "google-nativeRegionCommitmentResource", &computebeta.RegionCommitmentArgs{
    Region: pulumi.String("string"),
    Plan: computebeta.RegionCommitmentPlanInvalid,
    Description: pulumi.String("string"),
    LicenseResource: &compute.LicenseResourceCommitmentArgs{
    Amount: pulumi.String("string"),
    CoresPerLicense: pulumi.String("string"),
    License: pulumi.String("string"),
    },
    MergeSourceCommitments: pulumi.StringArray{
    pulumi.String("string"),
    },
    Name: pulumi.String("string"),
    AutoRenew: pulumi.Bool(false),
    Project: pulumi.String("string"),
    Category: computebeta.RegionCommitmentCategoryCategoryUnspecified,
    RequestId: pulumi.String("string"),
    Reservations: compute.ReservationTypeArray{
    &compute.ReservationTypeArgs{
    AggregateReservation: &compute.AllocationAggregateReservationArgs{
    ReservedResources: compute.AllocationAggregateReservationReservedResourceInfoArray{
    &compute.AllocationAggregateReservationReservedResourceInfoArgs{
    Accelerator: &compute.AllocationAggregateReservationReservedResourceInfoAcceleratorArgs{
    AcceleratorCount: pulumi.Int(0),
    AcceleratorType: pulumi.String("string"),
    },
    },
    },
    VmFamily: computebeta.AllocationAggregateReservationVmFamilyVmFamilyCloudTpuLiteDeviceCt5l,
    WorkloadType: computebeta.AllocationAggregateReservationWorkloadTypeBatch,
    },
    DeleteAfterDuration: &compute.DurationArgs{
    Nanos: pulumi.Int(0),
    Seconds: pulumi.String("string"),
    },
    DeleteAtTime: pulumi.String("string"),
    Description: pulumi.String("string"),
    Name: pulumi.String("string"),
    ResourcePolicies: pulumi.StringMap{
    "string": pulumi.String("string"),
    },
    ShareSettings: &compute.ShareSettingsArgs{
    ProjectMap: pulumi.StringMap{
    "string": pulumi.String("string"),
    },
    Projects: pulumi.StringArray{
    pulumi.String("string"),
    },
    ShareType: computebeta.ShareSettingsShareTypeLocal,
    },
    SpecificReservation: &compute.AllocationSpecificSKUReservationArgs{
    Count: pulumi.String("string"),
    InstanceProperties: &compute.AllocationSpecificSKUAllocationReservedInstancePropertiesArgs{
    GuestAccelerators: compute.AcceleratorConfigArray{
    &compute.AcceleratorConfigArgs{
    AcceleratorCount: pulumi.Int(0),
    AcceleratorType: pulumi.String("string"),
    },
    },
    LocalSsds: compute.AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskArray{
    &compute.AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskArgs{
    DiskSizeGb: pulumi.String("string"),
    Interface: computebeta.AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskInterfaceNvme,
    },
    },
    LocationHint: pulumi.String("string"),
    MachineType: pulumi.String("string"),
    MaintenanceFreezeDurationHours: pulumi.Int(0),
    MaintenanceInterval: computebeta.AllocationSpecificSKUAllocationReservedInstancePropertiesMaintenanceIntervalAsNeeded,
    MinCpuPlatform: pulumi.String("string"),
    },
    SourceInstanceTemplate: pulumi.String("string"),
    },
    SpecificReservationRequired: pulumi.Bool(false),
    Zone: pulumi.String("string"),
    },
    },
    Resources: compute.ResourceCommitmentArray{
    &compute.ResourceCommitmentArgs{
    AcceleratorType: pulumi.String("string"),
    Amount: pulumi.String("string"),
    Type: computebeta.ResourceCommitmentTypeAccelerator,
    },
    },
    SplitSourceCommitment: pulumi.String("string"),
    Type: computebeta.RegionCommitmentTypeAcceleratorOptimized,
    })
    
    var google_nativeRegionCommitmentResource = new RegionCommitment("google-nativeRegionCommitmentResource", RegionCommitmentArgs.builder()
        .region("string")
        .plan("INVALID")
        .description("string")
        .licenseResource(LicenseResourceCommitmentArgs.builder()
            .amount("string")
            .coresPerLicense("string")
            .license("string")
            .build())
        .mergeSourceCommitments("string")
        .name("string")
        .autoRenew(false)
        .project("string")
        .category("CATEGORY_UNSPECIFIED")
        .requestId("string")
        .reservations(ReservationArgs.builder()
            .aggregateReservation(AllocationAggregateReservationArgs.builder()
                .reservedResources(AllocationAggregateReservationReservedResourceInfoArgs.builder()
                    .accelerator(AllocationAggregateReservationReservedResourceInfoAcceleratorArgs.builder()
                        .acceleratorCount(0)
                        .acceleratorType("string")
                        .build())
                    .build())
                .vmFamily("VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L")
                .workloadType("BATCH")
                .build())
            .deleteAfterDuration(DurationArgs.builder()
                .nanos(0)
                .seconds("string")
                .build())
            .deleteAtTime("string")
            .description("string")
            .name("string")
            .resourcePolicies(Map.of("string", "string"))
            .shareSettings(ShareSettingsArgs.builder()
                .projectMap(Map.of("string", "string"))
                .projects("string")
                .shareType("LOCAL")
                .build())
            .specificReservation(AllocationSpecificSKUReservationArgs.builder()
                .count("string")
                .instanceProperties(AllocationSpecificSKUAllocationReservedInstancePropertiesArgs.builder()
                    .guestAccelerators(AcceleratorConfigArgs.builder()
                        .acceleratorCount(0)
                        .acceleratorType("string")
                        .build())
                    .localSsds(AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskArgs.builder()
                        .diskSizeGb("string")
                        .interface_("NVME")
                        .build())
                    .locationHint("string")
                    .machineType("string")
                    .maintenanceFreezeDurationHours(0)
                    .maintenanceInterval("AS_NEEDED")
                    .minCpuPlatform("string")
                    .build())
                .sourceInstanceTemplate("string")
                .build())
            .specificReservationRequired(false)
            .zone("string")
            .build())
        .resources(ResourceCommitmentArgs.builder()
            .acceleratorType("string")
            .amount("string")
            .type("ACCELERATOR")
            .build())
        .splitSourceCommitment("string")
        .type("ACCELERATOR_OPTIMIZED")
        .build());
    
    google_native_region_commitment_resource = google_native.compute.beta.RegionCommitment("google-nativeRegionCommitmentResource",
        region="string",
        plan=google_native.compute.beta.RegionCommitmentPlan.INVALID,
        description="string",
        license_resource=google_native.compute.beta.LicenseResourceCommitmentArgs(
            amount="string",
            cores_per_license="string",
            license="string",
        ),
        merge_source_commitments=["string"],
        name="string",
        auto_renew=False,
        project="string",
        category=google_native.compute.beta.RegionCommitmentCategory.CATEGORY_UNSPECIFIED,
        request_id="string",
        reservations=[google_native.compute.beta.ReservationArgs(
            aggregate_reservation=google_native.compute.beta.AllocationAggregateReservationArgs(
                reserved_resources=[google_native.compute.beta.AllocationAggregateReservationReservedResourceInfoArgs(
                    accelerator=google_native.compute.beta.AllocationAggregateReservationReservedResourceInfoAcceleratorArgs(
                        accelerator_count=0,
                        accelerator_type="string",
                    ),
                )],
                vm_family=google_native.compute.beta.AllocationAggregateReservationVmFamily.VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L,
                workload_type=google_native.compute.beta.AllocationAggregateReservationWorkloadType.BATCH,
            ),
            delete_after_duration=google_native.compute.beta.DurationArgs(
                nanos=0,
                seconds="string",
            ),
            delete_at_time="string",
            description="string",
            name="string",
            resource_policies={
                "string": "string",
            },
            share_settings=google_native.compute.beta.ShareSettingsArgs(
                project_map={
                    "string": "string",
                },
                projects=["string"],
                share_type=google_native.compute.beta.ShareSettingsShareType.LOCAL,
            ),
            specific_reservation=google_native.compute.beta.AllocationSpecificSKUReservationArgs(
                count="string",
                instance_properties=google_native.compute.beta.AllocationSpecificSKUAllocationReservedInstancePropertiesArgs(
                    guest_accelerators=[google_native.compute.beta.AcceleratorConfigArgs(
                        accelerator_count=0,
                        accelerator_type="string",
                    )],
                    local_ssds=[google_native.compute.beta.AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskArgs(
                        disk_size_gb="string",
                        interface=google_native.compute.beta.AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskInterface.NVME,
                    )],
                    location_hint="string",
                    machine_type="string",
                    maintenance_freeze_duration_hours=0,
                    maintenance_interval=google_native.compute.beta.AllocationSpecificSKUAllocationReservedInstancePropertiesMaintenanceInterval.AS_NEEDED,
                    min_cpu_platform="string",
                ),
                source_instance_template="string",
            ),
            specific_reservation_required=False,
            zone="string",
        )],
        resources=[google_native.compute.beta.ResourceCommitmentArgs(
            accelerator_type="string",
            amount="string",
            type=google_native.compute.beta.ResourceCommitmentType.ACCELERATOR,
        )],
        split_source_commitment="string",
        type=google_native.compute.beta.RegionCommitmentType.ACCELERATOR_OPTIMIZED)
    
    const google_nativeRegionCommitmentResource = new google_native.compute.beta.RegionCommitment("google-nativeRegionCommitmentResource", {
        region: "string",
        plan: google_native.compute.beta.RegionCommitmentPlan.Invalid,
        description: "string",
        licenseResource: {
            amount: "string",
            coresPerLicense: "string",
            license: "string",
        },
        mergeSourceCommitments: ["string"],
        name: "string",
        autoRenew: false,
        project: "string",
        category: google_native.compute.beta.RegionCommitmentCategory.CategoryUnspecified,
        requestId: "string",
        reservations: [{
            aggregateReservation: {
                reservedResources: [{
                    accelerator: {
                        acceleratorCount: 0,
                        acceleratorType: "string",
                    },
                }],
                vmFamily: google_native.compute.beta.AllocationAggregateReservationVmFamily.VmFamilyCloudTpuLiteDeviceCt5l,
                workloadType: google_native.compute.beta.AllocationAggregateReservationWorkloadType.Batch,
            },
            deleteAfterDuration: {
                nanos: 0,
                seconds: "string",
            },
            deleteAtTime: "string",
            description: "string",
            name: "string",
            resourcePolicies: {
                string: "string",
            },
            shareSettings: {
                projectMap: {
                    string: "string",
                },
                projects: ["string"],
                shareType: google_native.compute.beta.ShareSettingsShareType.Local,
            },
            specificReservation: {
                count: "string",
                instanceProperties: {
                    guestAccelerators: [{
                        acceleratorCount: 0,
                        acceleratorType: "string",
                    }],
                    localSsds: [{
                        diskSizeGb: "string",
                        "interface": google_native.compute.beta.AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskInterface.Nvme,
                    }],
                    locationHint: "string",
                    machineType: "string",
                    maintenanceFreezeDurationHours: 0,
                    maintenanceInterval: google_native.compute.beta.AllocationSpecificSKUAllocationReservedInstancePropertiesMaintenanceInterval.AsNeeded,
                    minCpuPlatform: "string",
                },
                sourceInstanceTemplate: "string",
            },
            specificReservationRequired: false,
            zone: "string",
        }],
        resources: [{
            acceleratorType: "string",
            amount: "string",
            type: google_native.compute.beta.ResourceCommitmentType.Accelerator,
        }],
        splitSourceCommitment: "string",
        type: google_native.compute.beta.RegionCommitmentType.AcceleratorOptimized,
    });
    
    type: google-native:compute/beta:RegionCommitment
    properties:
        autoRenew: false
        category: CATEGORY_UNSPECIFIED
        description: string
        licenseResource:
            amount: string
            coresPerLicense: string
            license: string
        mergeSourceCommitments:
            - string
        name: string
        plan: INVALID
        project: string
        region: string
        requestId: string
        reservations:
            - aggregateReservation:
                reservedResources:
                    - accelerator:
                        acceleratorCount: 0
                        acceleratorType: string
                vmFamily: VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L
                workloadType: BATCH
              deleteAfterDuration:
                nanos: 0
                seconds: string
              deleteAtTime: string
              description: string
              name: string
              resourcePolicies:
                string: string
              shareSettings:
                projectMap:
                    string: string
                projects:
                    - string
                shareType: LOCAL
              specificReservation:
                count: string
                instanceProperties:
                    guestAccelerators:
                        - acceleratorCount: 0
                          acceleratorType: string
                    localSsds:
                        - diskSizeGb: string
                          interface: NVME
                    locationHint: string
                    machineType: string
                    maintenanceFreezeDurationHours: 0
                    maintenanceInterval: AS_NEEDED
                    minCpuPlatform: string
                sourceInstanceTemplate: string
              specificReservationRequired: false
              zone: string
        resources:
            - acceleratorType: string
              amount: string
              type: ACCELERATOR
        splitSourceCommitment: string
        type: ACCELERATOR_OPTIMIZED
    

    RegionCommitment Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The RegionCommitment resource accepts the following input properties:

    Region string
    AutoRenew bool
    Specifies whether to enable automatic renewal for the commitment. The default value is false if not specified. The field can be updated until the day of the commitment expiration at 12:00am PST. If the field is set to true, the commitment will be automatically renewed for either one or three years according to the terms of the existing commitment.
    Category Pulumi.GoogleNative.Compute.Beta.RegionCommitmentCategory
    The category of the commitment. Category MACHINE specifies commitments composed of machine resources such as VCPU or MEMORY, listed in resources. Category LICENSE specifies commitments composed of software licenses, listed in licenseResources. Note that only MACHINE commitments should have a Type specified.
    Description string
    An optional description of this resource. Provide this property when you create the resource.
    LicenseResource Pulumi.GoogleNative.Compute.Beta.Inputs.LicenseResourceCommitment
    The license specification required as part of a license commitment.
    MergeSourceCommitments List<string>
    List of source commitments to be merged into a new commitment.
    Name string
    Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    Plan Pulumi.GoogleNative.Compute.Beta.RegionCommitmentPlan
    The plan for this commitment, which determines duration and discount rate. The currently supported plans are TWELVE_MONTH (1 year), and THIRTY_SIX_MONTH (3 years).
    Project string
    RequestId string
    An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
    Reservations List<Pulumi.GoogleNative.Compute.Beta.Inputs.Reservation>
    List of create-on-create reseravtions for this commitment.
    Resources List<Pulumi.GoogleNative.Compute.Beta.Inputs.ResourceCommitment>
    A list of commitment amounts for particular resources. Note that VCPU and MEMORY resource commitments must occur together.
    SplitSourceCommitment string
    Source commitment to be split into a new commitment.
    Type Pulumi.GoogleNative.Compute.Beta.RegionCommitmentType
    The type of commitment, which affects the discount rate and the eligible resources. Type MEMORY_OPTIMIZED specifies a commitment that will only apply to memory optimized machines. Type ACCELERATOR_OPTIMIZED specifies a commitment that will only apply to accelerator optimized machines.
    Region string
    AutoRenew bool
    Specifies whether to enable automatic renewal for the commitment. The default value is false if not specified. The field can be updated until the day of the commitment expiration at 12:00am PST. If the field is set to true, the commitment will be automatically renewed for either one or three years according to the terms of the existing commitment.
    Category RegionCommitmentCategory
    The category of the commitment. Category MACHINE specifies commitments composed of machine resources such as VCPU or MEMORY, listed in resources. Category LICENSE specifies commitments composed of software licenses, listed in licenseResources. Note that only MACHINE commitments should have a Type specified.
    Description string
    An optional description of this resource. Provide this property when you create the resource.
    LicenseResource LicenseResourceCommitmentArgs
    The license specification required as part of a license commitment.
    MergeSourceCommitments []string
    List of source commitments to be merged into a new commitment.
    Name string
    Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    Plan RegionCommitmentPlan
    The plan for this commitment, which determines duration and discount rate. The currently supported plans are TWELVE_MONTH (1 year), and THIRTY_SIX_MONTH (3 years).
    Project string
    RequestId string
    An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
    Reservations []ReservationTypeArgs
    List of create-on-create reseravtions for this commitment.
    Resources []ResourceCommitmentArgs
    A list of commitment amounts for particular resources. Note that VCPU and MEMORY resource commitments must occur together.
    SplitSourceCommitment string
    Source commitment to be split into a new commitment.
    Type RegionCommitmentType
    The type of commitment, which affects the discount rate and the eligible resources. Type MEMORY_OPTIMIZED specifies a commitment that will only apply to memory optimized machines. Type ACCELERATOR_OPTIMIZED specifies a commitment that will only apply to accelerator optimized machines.
    region String
    autoRenew Boolean
    Specifies whether to enable automatic renewal for the commitment. The default value is false if not specified. The field can be updated until the day of the commitment expiration at 12:00am PST. If the field is set to true, the commitment will be automatically renewed for either one or three years according to the terms of the existing commitment.
    category RegionCommitmentCategory
    The category of the commitment. Category MACHINE specifies commitments composed of machine resources such as VCPU or MEMORY, listed in resources. Category LICENSE specifies commitments composed of software licenses, listed in licenseResources. Note that only MACHINE commitments should have a Type specified.
    description String
    An optional description of this resource. Provide this property when you create the resource.
    licenseResource LicenseResourceCommitment
    The license specification required as part of a license commitment.
    mergeSourceCommitments List<String>
    List of source commitments to be merged into a new commitment.
    name String
    Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    plan RegionCommitmentPlan
    The plan for this commitment, which determines duration and discount rate. The currently supported plans are TWELVE_MONTH (1 year), and THIRTY_SIX_MONTH (3 years).
    project String
    requestId String
    An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
    reservations List<Reservation>
    List of create-on-create reseravtions for this commitment.
    resources List<ResourceCommitment>
    A list of commitment amounts for particular resources. Note that VCPU and MEMORY resource commitments must occur together.
    splitSourceCommitment String
    Source commitment to be split into a new commitment.
    type RegionCommitmentType
    The type of commitment, which affects the discount rate and the eligible resources. Type MEMORY_OPTIMIZED specifies a commitment that will only apply to memory optimized machines. Type ACCELERATOR_OPTIMIZED specifies a commitment that will only apply to accelerator optimized machines.
    region string
    autoRenew boolean
    Specifies whether to enable automatic renewal for the commitment. The default value is false if not specified. The field can be updated until the day of the commitment expiration at 12:00am PST. If the field is set to true, the commitment will be automatically renewed for either one or three years according to the terms of the existing commitment.
    category RegionCommitmentCategory
    The category of the commitment. Category MACHINE specifies commitments composed of machine resources such as VCPU or MEMORY, listed in resources. Category LICENSE specifies commitments composed of software licenses, listed in licenseResources. Note that only MACHINE commitments should have a Type specified.
    description string
    An optional description of this resource. Provide this property when you create the resource.
    licenseResource LicenseResourceCommitment
    The license specification required as part of a license commitment.
    mergeSourceCommitments string[]
    List of source commitments to be merged into a new commitment.
    name string
    Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    plan RegionCommitmentPlan
    The plan for this commitment, which determines duration and discount rate. The currently supported plans are TWELVE_MONTH (1 year), and THIRTY_SIX_MONTH (3 years).
    project string
    requestId string
    An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
    reservations Reservation[]
    List of create-on-create reseravtions for this commitment.
    resources ResourceCommitment[]
    A list of commitment amounts for particular resources. Note that VCPU and MEMORY resource commitments must occur together.
    splitSourceCommitment string
    Source commitment to be split into a new commitment.
    type RegionCommitmentType
    The type of commitment, which affects the discount rate and the eligible resources. Type MEMORY_OPTIMIZED specifies a commitment that will only apply to memory optimized machines. Type ACCELERATOR_OPTIMIZED specifies a commitment that will only apply to accelerator optimized machines.
    region str
    auto_renew bool
    Specifies whether to enable automatic renewal for the commitment. The default value is false if not specified. The field can be updated until the day of the commitment expiration at 12:00am PST. If the field is set to true, the commitment will be automatically renewed for either one or three years according to the terms of the existing commitment.
    category RegionCommitmentCategory
    The category of the commitment. Category MACHINE specifies commitments composed of machine resources such as VCPU or MEMORY, listed in resources. Category LICENSE specifies commitments composed of software licenses, listed in licenseResources. Note that only MACHINE commitments should have a Type specified.
    description str
    An optional description of this resource. Provide this property when you create the resource.
    license_resource LicenseResourceCommitmentArgs
    The license specification required as part of a license commitment.
    merge_source_commitments Sequence[str]
    List of source commitments to be merged into a new commitment.
    name str
    Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    plan RegionCommitmentPlan
    The plan for this commitment, which determines duration and discount rate. The currently supported plans are TWELVE_MONTH (1 year), and THIRTY_SIX_MONTH (3 years).
    project str
    request_id str
    An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
    reservations Sequence[ReservationArgs]
    List of create-on-create reseravtions for this commitment.
    resources Sequence[ResourceCommitmentArgs]
    A list of commitment amounts for particular resources. Note that VCPU and MEMORY resource commitments must occur together.
    split_source_commitment str
    Source commitment to be split into a new commitment.
    type RegionCommitmentType
    The type of commitment, which affects the discount rate and the eligible resources. Type MEMORY_OPTIMIZED specifies a commitment that will only apply to memory optimized machines. Type ACCELERATOR_OPTIMIZED specifies a commitment that will only apply to accelerator optimized machines.
    region String
    autoRenew Boolean
    Specifies whether to enable automatic renewal for the commitment. The default value is false if not specified. The field can be updated until the day of the commitment expiration at 12:00am PST. If the field is set to true, the commitment will be automatically renewed for either one or three years according to the terms of the existing commitment.
    category "CATEGORY_UNSPECIFIED" | "LICENSE" | "MACHINE"
    The category of the commitment. Category MACHINE specifies commitments composed of machine resources such as VCPU or MEMORY, listed in resources. Category LICENSE specifies commitments composed of software licenses, listed in licenseResources. Note that only MACHINE commitments should have a Type specified.
    description String
    An optional description of this resource. Provide this property when you create the resource.
    licenseResource Property Map
    The license specification required as part of a license commitment.
    mergeSourceCommitments List<String>
    List of source commitments to be merged into a new commitment.
    name String
    Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    plan "INVALID" | "THIRTY_SIX_MONTH" | "TWELVE_MONTH"
    The plan for this commitment, which determines duration and discount rate. The currently supported plans are TWELVE_MONTH (1 year), and THIRTY_SIX_MONTH (3 years).
    project String
    requestId String
    An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
    reservations List<Property Map>
    List of create-on-create reseravtions for this commitment.
    resources List<Property Map>
    A list of commitment amounts for particular resources. Note that VCPU and MEMORY resource commitments must occur together.
    splitSourceCommitment String
    Source commitment to be split into a new commitment.
    type "ACCELERATOR_OPTIMIZED" | "ACCELERATOR_OPTIMIZED_A3" | "COMPUTE_OPTIMIZED" | "COMPUTE_OPTIMIZED_C2D" | "COMPUTE_OPTIMIZED_C3" | "COMPUTE_OPTIMIZED_C3D" | "COMPUTE_OPTIMIZED_H3" | "GENERAL_PURPOSE" | "GENERAL_PURPOSE_E2" | "GENERAL_PURPOSE_N2" | "GENERAL_PURPOSE_N2D" | "GENERAL_PURPOSE_T2D" | "GRAPHICS_OPTIMIZED" | "MEMORY_OPTIMIZED" | "MEMORY_OPTIMIZED_M3" | "TYPE_UNSPECIFIED"
    The type of commitment, which affects the discount rate and the eligible resources. Type MEMORY_OPTIMIZED specifies a commitment that will only apply to memory optimized machines. Type ACCELERATOR_OPTIMIZED specifies a commitment that will only apply to accelerator optimized machines.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the RegionCommitment resource produces the following output properties:

    CreationTimestamp string
    Creation timestamp in RFC3339 text format.
    EndTimestamp string
    Commitment end time in RFC3339 text format.
    Id string
    The provider-assigned unique ID for this managed resource.
    Kind string
    Type of the resource. Always compute#commitment for commitments.
    SelfLink string
    Server-defined URL for the resource.
    StartTimestamp string
    Commitment start time in RFC3339 text format.
    Status string
    Status of the commitment with regards to eventual expiration (each commitment has an end date defined). One of the following values: NOT_YET_ACTIVE, ACTIVE, EXPIRED.
    StatusMessage string
    An optional, human-readable explanation of the status.
    CreationTimestamp string
    Creation timestamp in RFC3339 text format.
    EndTimestamp string
    Commitment end time in RFC3339 text format.
    Id string
    The provider-assigned unique ID for this managed resource.
    Kind string
    Type of the resource. Always compute#commitment for commitments.
    SelfLink string
    Server-defined URL for the resource.
    StartTimestamp string
    Commitment start time in RFC3339 text format.
    Status string
    Status of the commitment with regards to eventual expiration (each commitment has an end date defined). One of the following values: NOT_YET_ACTIVE, ACTIVE, EXPIRED.
    StatusMessage string
    An optional, human-readable explanation of the status.
    creationTimestamp String
    Creation timestamp in RFC3339 text format.
    endTimestamp String
    Commitment end time in RFC3339 text format.
    id String
    The provider-assigned unique ID for this managed resource.
    kind String
    Type of the resource. Always compute#commitment for commitments.
    selfLink String
    Server-defined URL for the resource.
    startTimestamp String
    Commitment start time in RFC3339 text format.
    status String
    Status of the commitment with regards to eventual expiration (each commitment has an end date defined). One of the following values: NOT_YET_ACTIVE, ACTIVE, EXPIRED.
    statusMessage String
    An optional, human-readable explanation of the status.
    creationTimestamp string
    Creation timestamp in RFC3339 text format.
    endTimestamp string
    Commitment end time in RFC3339 text format.
    id string
    The provider-assigned unique ID for this managed resource.
    kind string
    Type of the resource. Always compute#commitment for commitments.
    selfLink string
    Server-defined URL for the resource.
    startTimestamp string
    Commitment start time in RFC3339 text format.
    status string
    Status of the commitment with regards to eventual expiration (each commitment has an end date defined). One of the following values: NOT_YET_ACTIVE, ACTIVE, EXPIRED.
    statusMessage string
    An optional, human-readable explanation of the status.
    creation_timestamp str
    Creation timestamp in RFC3339 text format.
    end_timestamp str
    Commitment end time in RFC3339 text format.
    id str
    The provider-assigned unique ID for this managed resource.
    kind str
    Type of the resource. Always compute#commitment for commitments.
    self_link str
    Server-defined URL for the resource.
    start_timestamp str
    Commitment start time in RFC3339 text format.
    status str
    Status of the commitment with regards to eventual expiration (each commitment has an end date defined). One of the following values: NOT_YET_ACTIVE, ACTIVE, EXPIRED.
    status_message str
    An optional, human-readable explanation of the status.
    creationTimestamp String
    Creation timestamp in RFC3339 text format.
    endTimestamp String
    Commitment end time in RFC3339 text format.
    id String
    The provider-assigned unique ID for this managed resource.
    kind String
    Type of the resource. Always compute#commitment for commitments.
    selfLink String
    Server-defined URL for the resource.
    startTimestamp String
    Commitment start time in RFC3339 text format.
    status String
    Status of the commitment with regards to eventual expiration (each commitment has an end date defined). One of the following values: NOT_YET_ACTIVE, ACTIVE, EXPIRED.
    statusMessage String
    An optional, human-readable explanation of the status.

    Supporting Types

    AcceleratorConfig, AcceleratorConfigArgs

    AcceleratorCount int
    The number of the guest accelerator cards exposed to this instance.
    AcceleratorType string
    Full or partial URL of the accelerator type resource to attach to this instance. For example: projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100 If you are creating an instance template, specify only the accelerator name. See GPUs on Compute Engine for a full list of accelerator types.
    AcceleratorCount int
    The number of the guest accelerator cards exposed to this instance.
    AcceleratorType string
    Full or partial URL of the accelerator type resource to attach to this instance. For example: projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100 If you are creating an instance template, specify only the accelerator name. See GPUs on Compute Engine for a full list of accelerator types.
    acceleratorCount Integer
    The number of the guest accelerator cards exposed to this instance.
    acceleratorType String
    Full or partial URL of the accelerator type resource to attach to this instance. For example: projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100 If you are creating an instance template, specify only the accelerator name. See GPUs on Compute Engine for a full list of accelerator types.
    acceleratorCount number
    The number of the guest accelerator cards exposed to this instance.
    acceleratorType string
    Full or partial URL of the accelerator type resource to attach to this instance. For example: projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100 If you are creating an instance template, specify only the accelerator name. See GPUs on Compute Engine for a full list of accelerator types.
    accelerator_count int
    The number of the guest accelerator cards exposed to this instance.
    accelerator_type str
    Full or partial URL of the accelerator type resource to attach to this instance. For example: projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100 If you are creating an instance template, specify only the accelerator name. See GPUs on Compute Engine for a full list of accelerator types.
    acceleratorCount Number
    The number of the guest accelerator cards exposed to this instance.
    acceleratorType String
    Full or partial URL of the accelerator type resource to attach to this instance. For example: projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100 If you are creating an instance template, specify only the accelerator name. See GPUs on Compute Engine for a full list of accelerator types.

    AcceleratorConfigResponse, AcceleratorConfigResponseArgs

    AcceleratorCount int
    The number of the guest accelerator cards exposed to this instance.
    AcceleratorType string
    Full or partial URL of the accelerator type resource to attach to this instance. For example: projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100 If you are creating an instance template, specify only the accelerator name. See GPUs on Compute Engine for a full list of accelerator types.
    AcceleratorCount int
    The number of the guest accelerator cards exposed to this instance.
    AcceleratorType string
    Full or partial URL of the accelerator type resource to attach to this instance. For example: projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100 If you are creating an instance template, specify only the accelerator name. See GPUs on Compute Engine for a full list of accelerator types.
    acceleratorCount Integer
    The number of the guest accelerator cards exposed to this instance.
    acceleratorType String
    Full or partial URL of the accelerator type resource to attach to this instance. For example: projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100 If you are creating an instance template, specify only the accelerator name. See GPUs on Compute Engine for a full list of accelerator types.
    acceleratorCount number
    The number of the guest accelerator cards exposed to this instance.
    acceleratorType string
    Full or partial URL of the accelerator type resource to attach to this instance. For example: projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100 If you are creating an instance template, specify only the accelerator name. See GPUs on Compute Engine for a full list of accelerator types.
    accelerator_count int
    The number of the guest accelerator cards exposed to this instance.
    accelerator_type str
    Full or partial URL of the accelerator type resource to attach to this instance. For example: projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100 If you are creating an instance template, specify only the accelerator name. See GPUs on Compute Engine for a full list of accelerator types.
    acceleratorCount Number
    The number of the guest accelerator cards exposed to this instance.
    acceleratorType String
    Full or partial URL of the accelerator type resource to attach to this instance. For example: projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100 If you are creating an instance template, specify only the accelerator name. See GPUs on Compute Engine for a full list of accelerator types.

    AllocationAggregateReservation, AllocationAggregateReservationArgs

    ReservedResources List<Pulumi.GoogleNative.Compute.Beta.Inputs.AllocationAggregateReservationReservedResourceInfo>
    List of reserved resources (CPUs, memory, accelerators).
    VmFamily Pulumi.GoogleNative.Compute.Beta.AllocationAggregateReservationVmFamily
    The VM family that all instances scheduled against this reservation must belong to.
    WorkloadType Pulumi.GoogleNative.Compute.Beta.AllocationAggregateReservationWorkloadType
    The workload type of the instances that will target this reservation.
    ReservedResources []AllocationAggregateReservationReservedResourceInfo
    List of reserved resources (CPUs, memory, accelerators).
    VmFamily AllocationAggregateReservationVmFamily
    The VM family that all instances scheduled against this reservation must belong to.
    WorkloadType AllocationAggregateReservationWorkloadType
    The workload type of the instances that will target this reservation.
    reservedResources List<AllocationAggregateReservationReservedResourceInfo>
    List of reserved resources (CPUs, memory, accelerators).
    vmFamily AllocationAggregateReservationVmFamily
    The VM family that all instances scheduled against this reservation must belong to.
    workloadType AllocationAggregateReservationWorkloadType
    The workload type of the instances that will target this reservation.
    reservedResources AllocationAggregateReservationReservedResourceInfo[]
    List of reserved resources (CPUs, memory, accelerators).
    vmFamily AllocationAggregateReservationVmFamily
    The VM family that all instances scheduled against this reservation must belong to.
    workloadType AllocationAggregateReservationWorkloadType
    The workload type of the instances that will target this reservation.
    reserved_resources Sequence[AllocationAggregateReservationReservedResourceInfo]
    List of reserved resources (CPUs, memory, accelerators).
    vm_family AllocationAggregateReservationVmFamily
    The VM family that all instances scheduled against this reservation must belong to.
    workload_type AllocationAggregateReservationWorkloadType
    The workload type of the instances that will target this reservation.
    reservedResources List<Property Map>
    List of reserved resources (CPUs, memory, accelerators).
    vmFamily "VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L" | "VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT5LP" | "VM_FAMILY_CLOUD_TPU_POD_SLICE_CT4P"
    The VM family that all instances scheduled against this reservation must belong to.
    workloadType "BATCH" | "SERVING" | "UNSPECIFIED"
    The workload type of the instances that will target this reservation.

    AllocationAggregateReservationReservedResourceInfo, AllocationAggregateReservationReservedResourceInfoArgs

    Accelerator AllocationAggregateReservationReservedResourceInfoAccelerator
    Properties of accelerator resources in this reservation.
    accelerator AllocationAggregateReservationReservedResourceInfoAccelerator
    Properties of accelerator resources in this reservation.
    accelerator AllocationAggregateReservationReservedResourceInfoAccelerator
    Properties of accelerator resources in this reservation.
    accelerator AllocationAggregateReservationReservedResourceInfoAccelerator
    Properties of accelerator resources in this reservation.
    accelerator Property Map
    Properties of accelerator resources in this reservation.

    AllocationAggregateReservationReservedResourceInfoAccelerator, AllocationAggregateReservationReservedResourceInfoAcceleratorArgs

    AcceleratorCount int
    Number of accelerators of specified type.
    AcceleratorType string
    Full or partial URL to accelerator type. e.g. "projects/{PROJECT}/zones/{ZONE}/acceleratorTypes/ct4l"
    AcceleratorCount int
    Number of accelerators of specified type.
    AcceleratorType string
    Full or partial URL to accelerator type. e.g. "projects/{PROJECT}/zones/{ZONE}/acceleratorTypes/ct4l"
    acceleratorCount Integer
    Number of accelerators of specified type.
    acceleratorType String
    Full or partial URL to accelerator type. e.g. "projects/{PROJECT}/zones/{ZONE}/acceleratorTypes/ct4l"
    acceleratorCount number
    Number of accelerators of specified type.
    acceleratorType string
    Full or partial URL to accelerator type. e.g. "projects/{PROJECT}/zones/{ZONE}/acceleratorTypes/ct4l"
    accelerator_count int
    Number of accelerators of specified type.
    accelerator_type str
    Full or partial URL to accelerator type. e.g. "projects/{PROJECT}/zones/{ZONE}/acceleratorTypes/ct4l"
    acceleratorCount Number
    Number of accelerators of specified type.
    acceleratorType String
    Full or partial URL to accelerator type. e.g. "projects/{PROJECT}/zones/{ZONE}/acceleratorTypes/ct4l"

    AllocationAggregateReservationReservedResourceInfoAcceleratorResponse, AllocationAggregateReservationReservedResourceInfoAcceleratorResponseArgs

    AcceleratorCount int
    Number of accelerators of specified type.
    AcceleratorType string
    Full or partial URL to accelerator type. e.g. "projects/{PROJECT}/zones/{ZONE}/acceleratorTypes/ct4l"
    AcceleratorCount int
    Number of accelerators of specified type.
    AcceleratorType string
    Full or partial URL to accelerator type. e.g. "projects/{PROJECT}/zones/{ZONE}/acceleratorTypes/ct4l"
    acceleratorCount Integer
    Number of accelerators of specified type.
    acceleratorType String
    Full or partial URL to accelerator type. e.g. "projects/{PROJECT}/zones/{ZONE}/acceleratorTypes/ct4l"
    acceleratorCount number
    Number of accelerators of specified type.
    acceleratorType string
    Full or partial URL to accelerator type. e.g. "projects/{PROJECT}/zones/{ZONE}/acceleratorTypes/ct4l"
    accelerator_count int
    Number of accelerators of specified type.
    accelerator_type str
    Full or partial URL to accelerator type. e.g. "projects/{PROJECT}/zones/{ZONE}/acceleratorTypes/ct4l"
    acceleratorCount Number
    Number of accelerators of specified type.
    acceleratorType String
    Full or partial URL to accelerator type. e.g. "projects/{PROJECT}/zones/{ZONE}/acceleratorTypes/ct4l"

    AllocationAggregateReservationReservedResourceInfoResponse, AllocationAggregateReservationReservedResourceInfoResponseArgs

    Accelerator AllocationAggregateReservationReservedResourceInfoAcceleratorResponse
    Properties of accelerator resources in this reservation.
    accelerator AllocationAggregateReservationReservedResourceInfoAcceleratorResponse
    Properties of accelerator resources in this reservation.
    accelerator AllocationAggregateReservationReservedResourceInfoAcceleratorResponse
    Properties of accelerator resources in this reservation.
    accelerator AllocationAggregateReservationReservedResourceInfoAcceleratorResponse
    Properties of accelerator resources in this reservation.
    accelerator Property Map
    Properties of accelerator resources in this reservation.

    AllocationAggregateReservationResponse, AllocationAggregateReservationResponseArgs

    InUseResources List<Pulumi.GoogleNative.Compute.Beta.Inputs.AllocationAggregateReservationReservedResourceInfoResponse>
    [Output only] List of resources currently in use.
    ReservedResources List<Pulumi.GoogleNative.Compute.Beta.Inputs.AllocationAggregateReservationReservedResourceInfoResponse>
    List of reserved resources (CPUs, memory, accelerators).
    VmFamily string
    The VM family that all instances scheduled against this reservation must belong to.
    WorkloadType string
    The workload type of the instances that will target this reservation.
    InUseResources []AllocationAggregateReservationReservedResourceInfoResponse
    [Output only] List of resources currently in use.
    ReservedResources []AllocationAggregateReservationReservedResourceInfoResponse
    List of reserved resources (CPUs, memory, accelerators).
    VmFamily string
    The VM family that all instances scheduled against this reservation must belong to.
    WorkloadType string
    The workload type of the instances that will target this reservation.
    inUseResources List<AllocationAggregateReservationReservedResourceInfoResponse>
    [Output only] List of resources currently in use.
    reservedResources List<AllocationAggregateReservationReservedResourceInfoResponse>
    List of reserved resources (CPUs, memory, accelerators).
    vmFamily String
    The VM family that all instances scheduled against this reservation must belong to.
    workloadType String
    The workload type of the instances that will target this reservation.
    inUseResources AllocationAggregateReservationReservedResourceInfoResponse[]
    [Output only] List of resources currently in use.
    reservedResources AllocationAggregateReservationReservedResourceInfoResponse[]
    List of reserved resources (CPUs, memory, accelerators).
    vmFamily string
    The VM family that all instances scheduled against this reservation must belong to.
    workloadType string
    The workload type of the instances that will target this reservation.
    in_use_resources Sequence[AllocationAggregateReservationReservedResourceInfoResponse]
    [Output only] List of resources currently in use.
    reserved_resources Sequence[AllocationAggregateReservationReservedResourceInfoResponse]
    List of reserved resources (CPUs, memory, accelerators).
    vm_family str
    The VM family that all instances scheduled against this reservation must belong to.
    workload_type str
    The workload type of the instances that will target this reservation.
    inUseResources List<Property Map>
    [Output only] List of resources currently in use.
    reservedResources List<Property Map>
    List of reserved resources (CPUs, memory, accelerators).
    vmFamily String
    The VM family that all instances scheduled against this reservation must belong to.
    workloadType String
    The workload type of the instances that will target this reservation.

    AllocationAggregateReservationVmFamily, AllocationAggregateReservationVmFamilyArgs

    VmFamilyCloudTpuLiteDeviceCt5l
    VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L
    VmFamilyCloudTpuLitePodSliceCt5lp
    VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT5LP
    VmFamilyCloudTpuPodSliceCt4p
    VM_FAMILY_CLOUD_TPU_POD_SLICE_CT4P
    AllocationAggregateReservationVmFamilyVmFamilyCloudTpuLiteDeviceCt5l
    VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L
    AllocationAggregateReservationVmFamilyVmFamilyCloudTpuLitePodSliceCt5lp
    VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT5LP
    AllocationAggregateReservationVmFamilyVmFamilyCloudTpuPodSliceCt4p
    VM_FAMILY_CLOUD_TPU_POD_SLICE_CT4P
    VmFamilyCloudTpuLiteDeviceCt5l
    VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L
    VmFamilyCloudTpuLitePodSliceCt5lp
    VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT5LP
    VmFamilyCloudTpuPodSliceCt4p
    VM_FAMILY_CLOUD_TPU_POD_SLICE_CT4P
    VmFamilyCloudTpuLiteDeviceCt5l
    VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L
    VmFamilyCloudTpuLitePodSliceCt5lp
    VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT5LP
    VmFamilyCloudTpuPodSliceCt4p
    VM_FAMILY_CLOUD_TPU_POD_SLICE_CT4P
    VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L
    VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L
    VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT5LP
    VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT5LP
    VM_FAMILY_CLOUD_TPU_POD_SLICE_CT4P
    VM_FAMILY_CLOUD_TPU_POD_SLICE_CT4P
    "VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L"
    VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L
    "VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT5LP"
    VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT5LP
    "VM_FAMILY_CLOUD_TPU_POD_SLICE_CT4P"
    VM_FAMILY_CLOUD_TPU_POD_SLICE_CT4P

    AllocationAggregateReservationWorkloadType, AllocationAggregateReservationWorkloadTypeArgs

    Batch
    BATCHReserved resources will be optimized for BATCH workloads, such as ML training.
    Serving
    SERVINGReserved resources will be optimized for SERVING workloads, such as ML inference.
    Unspecified
    UNSPECIFIED
    AllocationAggregateReservationWorkloadTypeBatch
    BATCHReserved resources will be optimized for BATCH workloads, such as ML training.
    AllocationAggregateReservationWorkloadTypeServing
    SERVINGReserved resources will be optimized for SERVING workloads, such as ML inference.
    AllocationAggregateReservationWorkloadTypeUnspecified
    UNSPECIFIED
    Batch
    BATCHReserved resources will be optimized for BATCH workloads, such as ML training.
    Serving
    SERVINGReserved resources will be optimized for SERVING workloads, such as ML inference.
    Unspecified
    UNSPECIFIED
    Batch
    BATCHReserved resources will be optimized for BATCH workloads, such as ML training.
    Serving
    SERVINGReserved resources will be optimized for SERVING workloads, such as ML inference.
    Unspecified
    UNSPECIFIED
    BATCH
    BATCHReserved resources will be optimized for BATCH workloads, such as ML training.
    SERVING
    SERVINGReserved resources will be optimized for SERVING workloads, such as ML inference.
    UNSPECIFIED
    UNSPECIFIED
    "BATCH"
    BATCHReserved resources will be optimized for BATCH workloads, such as ML training.
    "SERVING"
    SERVINGReserved resources will be optimized for SERVING workloads, such as ML inference.
    "UNSPECIFIED"
    UNSPECIFIED

    AllocationResourceStatusResponse, AllocationResourceStatusResponseArgs

    specificSkuAllocation Property Map
    Allocation Properties of this reservation.

    AllocationResourceStatusSpecificSKUAllocationResponse, AllocationResourceStatusSpecificSKUAllocationResponseArgs

    SourceInstanceTemplateId string
    ID of the instance template used to populate reservation properties.
    SourceInstanceTemplateId string
    ID of the instance template used to populate reservation properties.
    sourceInstanceTemplateId String
    ID of the instance template used to populate reservation properties.
    sourceInstanceTemplateId string
    ID of the instance template used to populate reservation properties.
    source_instance_template_id str
    ID of the instance template used to populate reservation properties.
    sourceInstanceTemplateId String
    ID of the instance template used to populate reservation properties.

    AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk, AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskArgs

    DiskSizeGb string
    Specifies the size of the disk in base-2 GB.
    Interface Pulumi.GoogleNative.Compute.Beta.AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskInterface
    Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance.
    DiskSizeGb string
    Specifies the size of the disk in base-2 GB.
    Interface AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskInterface
    Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance.
    diskSizeGb String
    Specifies the size of the disk in base-2 GB.
    interface_ AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskInterface
    Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance.
    diskSizeGb string
    Specifies the size of the disk in base-2 GB.
    interface AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskInterface
    Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance.
    disk_size_gb str
    Specifies the size of the disk in base-2 GB.
    interface AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskInterface
    Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance.
    diskSizeGb String
    Specifies the size of the disk in base-2 GB.
    interface "NVME" | "SCSI"
    Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance.

    AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskInterface, AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskInterfaceArgs

    Nvme
    NVME
    Scsi
    SCSI
    AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskInterfaceNvme
    NVME
    AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskInterfaceScsi
    SCSI
    Nvme
    NVME
    Scsi
    SCSI
    Nvme
    NVME
    Scsi
    SCSI
    NVME
    NVME
    SCSI
    SCSI
    "NVME"
    NVME
    "SCSI"
    SCSI

    AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskResponse, AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskResponseArgs

    DiskSizeGb string
    Specifies the size of the disk in base-2 GB.
    Interface string
    Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance.
    DiskSizeGb string
    Specifies the size of the disk in base-2 GB.
    Interface string
    Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance.
    diskSizeGb String
    Specifies the size of the disk in base-2 GB.
    interface_ String
    Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance.
    diskSizeGb string
    Specifies the size of the disk in base-2 GB.
    interface string
    Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance.
    disk_size_gb str
    Specifies the size of the disk in base-2 GB.
    interface str
    Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance.
    diskSizeGb String
    Specifies the size of the disk in base-2 GB.
    interface String
    Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance.

    AllocationSpecificSKUAllocationReservedInstanceProperties, AllocationSpecificSKUAllocationReservedInstancePropertiesArgs

    GuestAccelerators List<Pulumi.GoogleNative.Compute.Beta.Inputs.AcceleratorConfig>
    Specifies accelerator type and count.
    LocalSsds List<Pulumi.GoogleNative.Compute.Beta.Inputs.AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk>
    Specifies amount of local ssd to reserve with each instance. The type of disk is local-ssd.
    LocationHint string
    An opaque location hint used to place the allocation close to other resources. This field is for use by internal tools that use the public API.
    MachineType string
    Specifies type of machine (name only) which has fixed number of vCPUs and fixed amount of memory. This also includes specifying custom machine type following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern.
    MaintenanceFreezeDurationHours int
    Specifies the number of hours after reservation creation where instances using the reservation won't be scheduled for maintenance.
    MaintenanceInterval Pulumi.GoogleNative.Compute.Beta.AllocationSpecificSKUAllocationReservedInstancePropertiesMaintenanceInterval
    Specifies the frequency of planned maintenance events. The accepted values are: PERIODIC.
    MinCpuPlatform string
    Minimum cpu platform the reservation.
    GuestAccelerators []AcceleratorConfig
    Specifies accelerator type and count.
    LocalSsds []AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk
    Specifies amount of local ssd to reserve with each instance. The type of disk is local-ssd.
    LocationHint string
    An opaque location hint used to place the allocation close to other resources. This field is for use by internal tools that use the public API.
    MachineType string
    Specifies type of machine (name only) which has fixed number of vCPUs and fixed amount of memory. This also includes specifying custom machine type following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern.
    MaintenanceFreezeDurationHours int
    Specifies the number of hours after reservation creation where instances using the reservation won't be scheduled for maintenance.
    MaintenanceInterval AllocationSpecificSKUAllocationReservedInstancePropertiesMaintenanceInterval
    Specifies the frequency of planned maintenance events. The accepted values are: PERIODIC.
    MinCpuPlatform string
    Minimum cpu platform the reservation.
    guestAccelerators List<AcceleratorConfig>
    Specifies accelerator type and count.
    localSsds List<AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk>
    Specifies amount of local ssd to reserve with each instance. The type of disk is local-ssd.
    locationHint String
    An opaque location hint used to place the allocation close to other resources. This field is for use by internal tools that use the public API.
    machineType String
    Specifies type of machine (name only) which has fixed number of vCPUs and fixed amount of memory. This also includes specifying custom machine type following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern.
    maintenanceFreezeDurationHours Integer
    Specifies the number of hours after reservation creation where instances using the reservation won't be scheduled for maintenance.
    maintenanceInterval AllocationSpecificSKUAllocationReservedInstancePropertiesMaintenanceInterval
    Specifies the frequency of planned maintenance events. The accepted values are: PERIODIC.
    minCpuPlatform String
    Minimum cpu platform the reservation.
    guestAccelerators AcceleratorConfig[]
    Specifies accelerator type and count.
    localSsds AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk[]
    Specifies amount of local ssd to reserve with each instance. The type of disk is local-ssd.
    locationHint string
    An opaque location hint used to place the allocation close to other resources. This field is for use by internal tools that use the public API.
    machineType string
    Specifies type of machine (name only) which has fixed number of vCPUs and fixed amount of memory. This also includes specifying custom machine type following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern.
    maintenanceFreezeDurationHours number
    Specifies the number of hours after reservation creation where instances using the reservation won't be scheduled for maintenance.
    maintenanceInterval AllocationSpecificSKUAllocationReservedInstancePropertiesMaintenanceInterval
    Specifies the frequency of planned maintenance events. The accepted values are: PERIODIC.
    minCpuPlatform string
    Minimum cpu platform the reservation.
    guest_accelerators Sequence[AcceleratorConfig]
    Specifies accelerator type and count.
    local_ssds Sequence[AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk]
    Specifies amount of local ssd to reserve with each instance. The type of disk is local-ssd.
    location_hint str
    An opaque location hint used to place the allocation close to other resources. This field is for use by internal tools that use the public API.
    machine_type str
    Specifies type of machine (name only) which has fixed number of vCPUs and fixed amount of memory. This also includes specifying custom machine type following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern.
    maintenance_freeze_duration_hours int
    Specifies the number of hours after reservation creation where instances using the reservation won't be scheduled for maintenance.
    maintenance_interval AllocationSpecificSKUAllocationReservedInstancePropertiesMaintenanceInterval
    Specifies the frequency of planned maintenance events. The accepted values are: PERIODIC.
    min_cpu_platform str
    Minimum cpu platform the reservation.
    guestAccelerators List<Property Map>
    Specifies accelerator type and count.
    localSsds List<Property Map>
    Specifies amount of local ssd to reserve with each instance. The type of disk is local-ssd.
    locationHint String
    An opaque location hint used to place the allocation close to other resources. This field is for use by internal tools that use the public API.
    machineType String
    Specifies type of machine (name only) which has fixed number of vCPUs and fixed amount of memory. This also includes specifying custom machine type following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern.
    maintenanceFreezeDurationHours Number
    Specifies the number of hours after reservation creation where instances using the reservation won't be scheduled for maintenance.
    maintenanceInterval "AS_NEEDED" | "PERIODIC" | "RECURRENT"
    Specifies the frequency of planned maintenance events. The accepted values are: PERIODIC.
    minCpuPlatform String
    Minimum cpu platform the reservation.

    AllocationSpecificSKUAllocationReservedInstancePropertiesMaintenanceInterval, AllocationSpecificSKUAllocationReservedInstancePropertiesMaintenanceIntervalArgs

    AsNeeded
    AS_NEEDEDVMs are eligible to receive infrastructure and hypervisor updates as they become available. This may result in more maintenance operations (live migrations or terminations) for the VM than the PERIODIC and RECURRENT options.
    Periodic
    PERIODICVMs receive infrastructure and hypervisor updates on a periodic basis, minimizing the number of maintenance operations (live migrations or terminations) on an individual VM. This may mean a VM will take longer to receive an update than if it was configured for AS_NEEDED. Security updates will still be applied as soon as they are available.
    Recurrent
    RECURRENTVMs receive infrastructure and hypervisor updates on a periodic basis, minimizing the number of maintenance operations (live migrations or terminations) on an individual VM. This may mean a VM will take longer to receive an update than if it was configured for AS_NEEDED. Security updates will still be applied as soon as they are available. RECURRENT is used for GEN3 and Slice of Hardware VMs.
    AllocationSpecificSKUAllocationReservedInstancePropertiesMaintenanceIntervalAsNeeded
    AS_NEEDEDVMs are eligible to receive infrastructure and hypervisor updates as they become available. This may result in more maintenance operations (live migrations or terminations) for the VM than the PERIODIC and RECURRENT options.
    AllocationSpecificSKUAllocationReservedInstancePropertiesMaintenanceIntervalPeriodic
    PERIODICVMs receive infrastructure and hypervisor updates on a periodic basis, minimizing the number of maintenance operations (live migrations or terminations) on an individual VM. This may mean a VM will take longer to receive an update than if it was configured for AS_NEEDED. Security updates will still be applied as soon as they are available.
    AllocationSpecificSKUAllocationReservedInstancePropertiesMaintenanceIntervalRecurrent
    RECURRENTVMs receive infrastructure and hypervisor updates on a periodic basis, minimizing the number of maintenance operations (live migrations or terminations) on an individual VM. This may mean a VM will take longer to receive an update than if it was configured for AS_NEEDED. Security updates will still be applied as soon as they are available. RECURRENT is used for GEN3 and Slice of Hardware VMs.
    AsNeeded
    AS_NEEDEDVMs are eligible to receive infrastructure and hypervisor updates as they become available. This may result in more maintenance operations (live migrations or terminations) for the VM than the PERIODIC and RECURRENT options.
    Periodic
    PERIODICVMs receive infrastructure and hypervisor updates on a periodic basis, minimizing the number of maintenance operations (live migrations or terminations) on an individual VM. This may mean a VM will take longer to receive an update than if it was configured for AS_NEEDED. Security updates will still be applied as soon as they are available.
    Recurrent
    RECURRENTVMs receive infrastructure and hypervisor updates on a periodic basis, minimizing the number of maintenance operations (live migrations or terminations) on an individual VM. This may mean a VM will take longer to receive an update than if it was configured for AS_NEEDED. Security updates will still be applied as soon as they are available. RECURRENT is used for GEN3 and Slice of Hardware VMs.
    AsNeeded
    AS_NEEDEDVMs are eligible to receive infrastructure and hypervisor updates as they become available. This may result in more maintenance operations (live migrations or terminations) for the VM than the PERIODIC and RECURRENT options.
    Periodic
    PERIODICVMs receive infrastructure and hypervisor updates on a periodic basis, minimizing the number of maintenance operations (live migrations or terminations) on an individual VM. This may mean a VM will take longer to receive an update than if it was configured for AS_NEEDED. Security updates will still be applied as soon as they are available.
    Recurrent
    RECURRENTVMs receive infrastructure and hypervisor updates on a periodic basis, minimizing the number of maintenance operations (live migrations or terminations) on an individual VM. This may mean a VM will take longer to receive an update than if it was configured for AS_NEEDED. Security updates will still be applied as soon as they are available. RECURRENT is used for GEN3 and Slice of Hardware VMs.
    AS_NEEDED
    AS_NEEDEDVMs are eligible to receive infrastructure and hypervisor updates as they become available. This may result in more maintenance operations (live migrations or terminations) for the VM than the PERIODIC and RECURRENT options.
    PERIODIC
    PERIODICVMs receive infrastructure and hypervisor updates on a periodic basis, minimizing the number of maintenance operations (live migrations or terminations) on an individual VM. This may mean a VM will take longer to receive an update than if it was configured for AS_NEEDED. Security updates will still be applied as soon as they are available.
    RECURRENT
    RECURRENTVMs receive infrastructure and hypervisor updates on a periodic basis, minimizing the number of maintenance operations (live migrations or terminations) on an individual VM. This may mean a VM will take longer to receive an update than if it was configured for AS_NEEDED. Security updates will still be applied as soon as they are available. RECURRENT is used for GEN3 and Slice of Hardware VMs.
    "AS_NEEDED"
    AS_NEEDEDVMs are eligible to receive infrastructure and hypervisor updates as they become available. This may result in more maintenance operations (live migrations or terminations) for the VM than the PERIODIC and RECURRENT options.
    "PERIODIC"
    PERIODICVMs receive infrastructure and hypervisor updates on a periodic basis, minimizing the number of maintenance operations (live migrations or terminations) on an individual VM. This may mean a VM will take longer to receive an update than if it was configured for AS_NEEDED. Security updates will still be applied as soon as they are available.
    "RECURRENT"
    RECURRENTVMs receive infrastructure and hypervisor updates on a periodic basis, minimizing the number of maintenance operations (live migrations or terminations) on an individual VM. This may mean a VM will take longer to receive an update than if it was configured for AS_NEEDED. Security updates will still be applied as soon as they are available. RECURRENT is used for GEN3 and Slice of Hardware VMs.

    AllocationSpecificSKUAllocationReservedInstancePropertiesResponse, AllocationSpecificSKUAllocationReservedInstancePropertiesResponseArgs

    GuestAccelerators List<Pulumi.GoogleNative.Compute.Beta.Inputs.AcceleratorConfigResponse>
    Specifies accelerator type and count.
    LocalSsds List<Pulumi.GoogleNative.Compute.Beta.Inputs.AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskResponse>
    Specifies amount of local ssd to reserve with each instance. The type of disk is local-ssd.
    LocationHint string
    An opaque location hint used to place the allocation close to other resources. This field is for use by internal tools that use the public API.
    MachineType string
    Specifies type of machine (name only) which has fixed number of vCPUs and fixed amount of memory. This also includes specifying custom machine type following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern.
    MaintenanceFreezeDurationHours int
    Specifies the number of hours after reservation creation where instances using the reservation won't be scheduled for maintenance.
    MaintenanceInterval string
    Specifies the frequency of planned maintenance events. The accepted values are: PERIODIC.
    MinCpuPlatform string
    Minimum cpu platform the reservation.
    GuestAccelerators []AcceleratorConfigResponse
    Specifies accelerator type and count.
    LocalSsds []AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskResponse
    Specifies amount of local ssd to reserve with each instance. The type of disk is local-ssd.
    LocationHint string
    An opaque location hint used to place the allocation close to other resources. This field is for use by internal tools that use the public API.
    MachineType string
    Specifies type of machine (name only) which has fixed number of vCPUs and fixed amount of memory. This also includes specifying custom machine type following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern.
    MaintenanceFreezeDurationHours int
    Specifies the number of hours after reservation creation where instances using the reservation won't be scheduled for maintenance.
    MaintenanceInterval string
    Specifies the frequency of planned maintenance events. The accepted values are: PERIODIC.
    MinCpuPlatform string
    Minimum cpu platform the reservation.
    guestAccelerators List<AcceleratorConfigResponse>
    Specifies accelerator type and count.
    localSsds List<AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskResponse>
    Specifies amount of local ssd to reserve with each instance. The type of disk is local-ssd.
    locationHint String
    An opaque location hint used to place the allocation close to other resources. This field is for use by internal tools that use the public API.
    machineType String
    Specifies type of machine (name only) which has fixed number of vCPUs and fixed amount of memory. This also includes specifying custom machine type following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern.
    maintenanceFreezeDurationHours Integer
    Specifies the number of hours after reservation creation where instances using the reservation won't be scheduled for maintenance.
    maintenanceInterval String
    Specifies the frequency of planned maintenance events. The accepted values are: PERIODIC.
    minCpuPlatform String
    Minimum cpu platform the reservation.
    guestAccelerators AcceleratorConfigResponse[]
    Specifies accelerator type and count.
    localSsds AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskResponse[]
    Specifies amount of local ssd to reserve with each instance. The type of disk is local-ssd.
    locationHint string
    An opaque location hint used to place the allocation close to other resources. This field is for use by internal tools that use the public API.
    machineType string
    Specifies type of machine (name only) which has fixed number of vCPUs and fixed amount of memory. This also includes specifying custom machine type following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern.
    maintenanceFreezeDurationHours number
    Specifies the number of hours after reservation creation where instances using the reservation won't be scheduled for maintenance.
    maintenanceInterval string
    Specifies the frequency of planned maintenance events. The accepted values are: PERIODIC.
    minCpuPlatform string
    Minimum cpu platform the reservation.
    guest_accelerators Sequence[AcceleratorConfigResponse]
    Specifies accelerator type and count.
    local_ssds Sequence[AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDiskResponse]
    Specifies amount of local ssd to reserve with each instance. The type of disk is local-ssd.
    location_hint str
    An opaque location hint used to place the allocation close to other resources. This field is for use by internal tools that use the public API.
    machine_type str
    Specifies type of machine (name only) which has fixed number of vCPUs and fixed amount of memory. This also includes specifying custom machine type following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern.
    maintenance_freeze_duration_hours int
    Specifies the number of hours after reservation creation where instances using the reservation won't be scheduled for maintenance.
    maintenance_interval str
    Specifies the frequency of planned maintenance events. The accepted values are: PERIODIC.
    min_cpu_platform str
    Minimum cpu platform the reservation.
    guestAccelerators List<Property Map>
    Specifies accelerator type and count.
    localSsds List<Property Map>
    Specifies amount of local ssd to reserve with each instance. The type of disk is local-ssd.
    locationHint String
    An opaque location hint used to place the allocation close to other resources. This field is for use by internal tools that use the public API.
    machineType String
    Specifies type of machine (name only) which has fixed number of vCPUs and fixed amount of memory. This also includes specifying custom machine type following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern.
    maintenanceFreezeDurationHours Number
    Specifies the number of hours after reservation creation where instances using the reservation won't be scheduled for maintenance.
    maintenanceInterval String
    Specifies the frequency of planned maintenance events. The accepted values are: PERIODIC.
    minCpuPlatform String
    Minimum cpu platform the reservation.

    AllocationSpecificSKUReservation, AllocationSpecificSKUReservationArgs

    Count string
    Specifies the number of resources that are allocated.
    InstanceProperties Pulumi.GoogleNative.Compute.Beta.Inputs.AllocationSpecificSKUAllocationReservedInstanceProperties
    The instance properties for the reservation.
    SourceInstanceTemplate string
    Specifies the instance template to create the reservation. If you use this field, you must exclude the instanceProperties field. This field is optional, and it can be a full or partial URL. For example, the following are all valid URLs to an instance template: - https://www.googleapis.com/compute/v1/projects/project /global/instanceTemplates/instanceTemplate - projects/project/global/instanceTemplates/instanceTemplate - global/instanceTemplates/instanceTemplate
    Count string
    Specifies the number of resources that are allocated.
    InstanceProperties AllocationSpecificSKUAllocationReservedInstanceProperties
    The instance properties for the reservation.
    SourceInstanceTemplate string
    Specifies the instance template to create the reservation. If you use this field, you must exclude the instanceProperties field. This field is optional, and it can be a full or partial URL. For example, the following are all valid URLs to an instance template: - https://www.googleapis.com/compute/v1/projects/project /global/instanceTemplates/instanceTemplate - projects/project/global/instanceTemplates/instanceTemplate - global/instanceTemplates/instanceTemplate
    count String
    Specifies the number of resources that are allocated.
    instanceProperties AllocationSpecificSKUAllocationReservedInstanceProperties
    The instance properties for the reservation.
    sourceInstanceTemplate String
    Specifies the instance template to create the reservation. If you use this field, you must exclude the instanceProperties field. This field is optional, and it can be a full or partial URL. For example, the following are all valid URLs to an instance template: - https://www.googleapis.com/compute/v1/projects/project /global/instanceTemplates/instanceTemplate - projects/project/global/instanceTemplates/instanceTemplate - global/instanceTemplates/instanceTemplate
    count string
    Specifies the number of resources that are allocated.
    instanceProperties AllocationSpecificSKUAllocationReservedInstanceProperties
    The instance properties for the reservation.
    sourceInstanceTemplate string
    Specifies the instance template to create the reservation. If you use this field, you must exclude the instanceProperties field. This field is optional, and it can be a full or partial URL. For example, the following are all valid URLs to an instance template: - https://www.googleapis.com/compute/v1/projects/project /global/instanceTemplates/instanceTemplate - projects/project/global/instanceTemplates/instanceTemplate - global/instanceTemplates/instanceTemplate
    count str
    Specifies the number of resources that are allocated.
    instance_properties AllocationSpecificSKUAllocationReservedInstanceProperties
    The instance properties for the reservation.
    source_instance_template str
    Specifies the instance template to create the reservation. If you use this field, you must exclude the instanceProperties field. This field is optional, and it can be a full or partial URL. For example, the following are all valid URLs to an instance template: - https://www.googleapis.com/compute/v1/projects/project /global/instanceTemplates/instanceTemplate - projects/project/global/instanceTemplates/instanceTemplate - global/instanceTemplates/instanceTemplate
    count String
    Specifies the number of resources that are allocated.
    instanceProperties Property Map
    The instance properties for the reservation.
    sourceInstanceTemplate String
    Specifies the instance template to create the reservation. If you use this field, you must exclude the instanceProperties field. This field is optional, and it can be a full or partial URL. For example, the following are all valid URLs to an instance template: - https://www.googleapis.com/compute/v1/projects/project /global/instanceTemplates/instanceTemplate - projects/project/global/instanceTemplates/instanceTemplate - global/instanceTemplates/instanceTemplate

    AllocationSpecificSKUReservationResponse, AllocationSpecificSKUReservationResponseArgs

    AssuredCount string
    Indicates how many instances are actually usable currently.
    Count string
    Specifies the number of resources that are allocated.
    InUseCount string
    Indicates how many instances are in use.
    InstanceProperties Pulumi.GoogleNative.Compute.Beta.Inputs.AllocationSpecificSKUAllocationReservedInstancePropertiesResponse
    The instance properties for the reservation.
    SourceInstanceTemplate string
    Specifies the instance template to create the reservation. If you use this field, you must exclude the instanceProperties field. This field is optional, and it can be a full or partial URL. For example, the following are all valid URLs to an instance template: - https://www.googleapis.com/compute/v1/projects/project /global/instanceTemplates/instanceTemplate - projects/project/global/instanceTemplates/instanceTemplate - global/instanceTemplates/instanceTemplate
    AssuredCount string
    Indicates how many instances are actually usable currently.
    Count string
    Specifies the number of resources that are allocated.
    InUseCount string
    Indicates how many instances are in use.
    InstanceProperties AllocationSpecificSKUAllocationReservedInstancePropertiesResponse
    The instance properties for the reservation.
    SourceInstanceTemplate string
    Specifies the instance template to create the reservation. If you use this field, you must exclude the instanceProperties field. This field is optional, and it can be a full or partial URL. For example, the following are all valid URLs to an instance template: - https://www.googleapis.com/compute/v1/projects/project /global/instanceTemplates/instanceTemplate - projects/project/global/instanceTemplates/instanceTemplate - global/instanceTemplates/instanceTemplate
    assuredCount String
    Indicates how many instances are actually usable currently.
    count String
    Specifies the number of resources that are allocated.
    inUseCount String
    Indicates how many instances are in use.
    instanceProperties AllocationSpecificSKUAllocationReservedInstancePropertiesResponse
    The instance properties for the reservation.
    sourceInstanceTemplate String
    Specifies the instance template to create the reservation. If you use this field, you must exclude the instanceProperties field. This field is optional, and it can be a full or partial URL. For example, the following are all valid URLs to an instance template: - https://www.googleapis.com/compute/v1/projects/project /global/instanceTemplates/instanceTemplate - projects/project/global/instanceTemplates/instanceTemplate - global/instanceTemplates/instanceTemplate
    assuredCount string
    Indicates how many instances are actually usable currently.
    count string
    Specifies the number of resources that are allocated.
    inUseCount string
    Indicates how many instances are in use.
    instanceProperties AllocationSpecificSKUAllocationReservedInstancePropertiesResponse
    The instance properties for the reservation.
    sourceInstanceTemplate string
    Specifies the instance template to create the reservation. If you use this field, you must exclude the instanceProperties field. This field is optional, and it can be a full or partial URL. For example, the following are all valid URLs to an instance template: - https://www.googleapis.com/compute/v1/projects/project /global/instanceTemplates/instanceTemplate - projects/project/global/instanceTemplates/instanceTemplate - global/instanceTemplates/instanceTemplate
    assured_count str
    Indicates how many instances are actually usable currently.
    count str
    Specifies the number of resources that are allocated.
    in_use_count str
    Indicates how many instances are in use.
    instance_properties AllocationSpecificSKUAllocationReservedInstancePropertiesResponse
    The instance properties for the reservation.
    source_instance_template str
    Specifies the instance template to create the reservation. If you use this field, you must exclude the instanceProperties field. This field is optional, and it can be a full or partial URL. For example, the following are all valid URLs to an instance template: - https://www.googleapis.com/compute/v1/projects/project /global/instanceTemplates/instanceTemplate - projects/project/global/instanceTemplates/instanceTemplate - global/instanceTemplates/instanceTemplate
    assuredCount String
    Indicates how many instances are actually usable currently.
    count String
    Specifies the number of resources that are allocated.
    inUseCount String
    Indicates how many instances are in use.
    instanceProperties Property Map
    The instance properties for the reservation.
    sourceInstanceTemplate String
    Specifies the instance template to create the reservation. If you use this field, you must exclude the instanceProperties field. This field is optional, and it can be a full or partial URL. For example, the following are all valid URLs to an instance template: - https://www.googleapis.com/compute/v1/projects/project /global/instanceTemplates/instanceTemplate - projects/project/global/instanceTemplates/instanceTemplate - global/instanceTemplates/instanceTemplate

    Duration, DurationArgs

    Nanos int
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    Seconds string
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    Nanos int
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    Seconds string
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos Integer
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds String
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos number
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds string
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos int
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds str
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos Number
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds String
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years

    DurationResponse, DurationResponseArgs

    Nanos int
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    Seconds string
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    Nanos int
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    Seconds string
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos Integer
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds String
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos number
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds string
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos int
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds str
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
    nanos Number
    Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
    seconds String
    Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years

    LicenseResourceCommitment, LicenseResourceCommitmentArgs

    Amount string
    The number of licenses purchased.
    CoresPerLicense string
    Specifies the core range of the instance for which this license applies.
    License string
    Any applicable license URI.
    Amount string
    The number of licenses purchased.
    CoresPerLicense string
    Specifies the core range of the instance for which this license applies.
    License string
    Any applicable license URI.
    amount String
    The number of licenses purchased.
    coresPerLicense String
    Specifies the core range of the instance for which this license applies.
    license String
    Any applicable license URI.
    amount string
    The number of licenses purchased.
    coresPerLicense string
    Specifies the core range of the instance for which this license applies.
    license string
    Any applicable license URI.
    amount str
    The number of licenses purchased.
    cores_per_license str
    Specifies the core range of the instance for which this license applies.
    license str
    Any applicable license URI.
    amount String
    The number of licenses purchased.
    coresPerLicense String
    Specifies the core range of the instance for which this license applies.
    license String
    Any applicable license URI.

    LicenseResourceCommitmentResponse, LicenseResourceCommitmentResponseArgs

    Amount string
    The number of licenses purchased.
    CoresPerLicense string
    Specifies the core range of the instance for which this license applies.
    License string
    Any applicable license URI.
    Amount string
    The number of licenses purchased.
    CoresPerLicense string
    Specifies the core range of the instance for which this license applies.
    License string
    Any applicable license URI.
    amount String
    The number of licenses purchased.
    coresPerLicense String
    Specifies the core range of the instance for which this license applies.
    license String
    Any applicable license URI.
    amount string
    The number of licenses purchased.
    coresPerLicense string
    Specifies the core range of the instance for which this license applies.
    license string
    Any applicable license URI.
    amount str
    The number of licenses purchased.
    cores_per_license str
    Specifies the core range of the instance for which this license applies.
    license str
    Any applicable license URI.
    amount String
    The number of licenses purchased.
    coresPerLicense String
    Specifies the core range of the instance for which this license applies.
    license String
    Any applicable license URI.

    RegionCommitmentCategory, RegionCommitmentCategoryArgs

    CategoryUnspecified
    CATEGORY_UNSPECIFIED
    License
    LICENSE
    Machine
    MACHINE
    RegionCommitmentCategoryCategoryUnspecified
    CATEGORY_UNSPECIFIED
    RegionCommitmentCategoryLicense
    LICENSE
    RegionCommitmentCategoryMachine
    MACHINE
    CategoryUnspecified
    CATEGORY_UNSPECIFIED
    License
    LICENSE
    Machine
    MACHINE
    CategoryUnspecified
    CATEGORY_UNSPECIFIED
    License
    LICENSE
    Machine
    MACHINE
    CATEGORY_UNSPECIFIED
    CATEGORY_UNSPECIFIED
    LICENSE
    LICENSE
    MACHINE
    MACHINE
    "CATEGORY_UNSPECIFIED"
    CATEGORY_UNSPECIFIED
    "LICENSE"
    LICENSE
    "MACHINE"
    MACHINE

    RegionCommitmentPlan, RegionCommitmentPlanArgs

    Invalid
    INVALID
    ThirtySixMonth
    THIRTY_SIX_MONTH
    TwelveMonth
    TWELVE_MONTH
    RegionCommitmentPlanInvalid
    INVALID
    RegionCommitmentPlanThirtySixMonth
    THIRTY_SIX_MONTH
    RegionCommitmentPlanTwelveMonth
    TWELVE_MONTH
    Invalid
    INVALID
    ThirtySixMonth
    THIRTY_SIX_MONTH
    TwelveMonth
    TWELVE_MONTH
    Invalid
    INVALID
    ThirtySixMonth
    THIRTY_SIX_MONTH
    TwelveMonth
    TWELVE_MONTH
    INVALID
    INVALID
    THIRTY_SIX_MONTH
    THIRTY_SIX_MONTH
    TWELVE_MONTH
    TWELVE_MONTH
    "INVALID"
    INVALID
    "THIRTY_SIX_MONTH"
    THIRTY_SIX_MONTH
    "TWELVE_MONTH"
    TWELVE_MONTH

    RegionCommitmentType, RegionCommitmentTypeArgs

    AcceleratorOptimized
    ACCELERATOR_OPTIMIZED
    AcceleratorOptimizedA3
    ACCELERATOR_OPTIMIZED_A3
    ComputeOptimized
    COMPUTE_OPTIMIZED
    ComputeOptimizedC2d
    COMPUTE_OPTIMIZED_C2D
    ComputeOptimizedC3
    COMPUTE_OPTIMIZED_C3
    ComputeOptimizedC3d
    COMPUTE_OPTIMIZED_C3D
    ComputeOptimizedH3
    COMPUTE_OPTIMIZED_H3
    GeneralPurpose
    GENERAL_PURPOSE
    GeneralPurposeE2
    GENERAL_PURPOSE_E2
    GeneralPurposeN2
    GENERAL_PURPOSE_N2
    GeneralPurposeN2d
    GENERAL_PURPOSE_N2D
    GeneralPurposeT2d
    GENERAL_PURPOSE_T2D
    GraphicsOptimized
    GRAPHICS_OPTIMIZED
    MemoryOptimized
    MEMORY_OPTIMIZED
    MemoryOptimizedM3
    MEMORY_OPTIMIZED_M3
    TypeUnspecified
    TYPE_UNSPECIFIED
    RegionCommitmentTypeAcceleratorOptimized
    ACCELERATOR_OPTIMIZED
    RegionCommitmentTypeAcceleratorOptimizedA3
    ACCELERATOR_OPTIMIZED_A3
    RegionCommitmentTypeComputeOptimized
    COMPUTE_OPTIMIZED
    RegionCommitmentTypeComputeOptimizedC2d
    COMPUTE_OPTIMIZED_C2D
    RegionCommitmentTypeComputeOptimizedC3
    COMPUTE_OPTIMIZED_C3
    RegionCommitmentTypeComputeOptimizedC3d
    COMPUTE_OPTIMIZED_C3D
    RegionCommitmentTypeComputeOptimizedH3
    COMPUTE_OPTIMIZED_H3
    RegionCommitmentTypeGeneralPurpose
    GENERAL_PURPOSE
    RegionCommitmentTypeGeneralPurposeE2
    GENERAL_PURPOSE_E2
    RegionCommitmentTypeGeneralPurposeN2
    GENERAL_PURPOSE_N2
    RegionCommitmentTypeGeneralPurposeN2d
    GENERAL_PURPOSE_N2D
    RegionCommitmentTypeGeneralPurposeT2d
    GENERAL_PURPOSE_T2D
    RegionCommitmentTypeGraphicsOptimized
    GRAPHICS_OPTIMIZED
    RegionCommitmentTypeMemoryOptimized
    MEMORY_OPTIMIZED
    RegionCommitmentTypeMemoryOptimizedM3
    MEMORY_OPTIMIZED_M3
    RegionCommitmentTypeTypeUnspecified
    TYPE_UNSPECIFIED
    AcceleratorOptimized
    ACCELERATOR_OPTIMIZED
    AcceleratorOptimizedA3
    ACCELERATOR_OPTIMIZED_A3
    ComputeOptimized
    COMPUTE_OPTIMIZED
    ComputeOptimizedC2d
    COMPUTE_OPTIMIZED_C2D
    ComputeOptimizedC3
    COMPUTE_OPTIMIZED_C3
    ComputeOptimizedC3d
    COMPUTE_OPTIMIZED_C3D
    ComputeOptimizedH3
    COMPUTE_OPTIMIZED_H3
    GeneralPurpose
    GENERAL_PURPOSE
    GeneralPurposeE2
    GENERAL_PURPOSE_E2
    GeneralPurposeN2
    GENERAL_PURPOSE_N2
    GeneralPurposeN2d
    GENERAL_PURPOSE_N2D
    GeneralPurposeT2d
    GENERAL_PURPOSE_T2D
    GraphicsOptimized
    GRAPHICS_OPTIMIZED
    MemoryOptimized
    MEMORY_OPTIMIZED
    MemoryOptimizedM3
    MEMORY_OPTIMIZED_M3
    TypeUnspecified
    TYPE_UNSPECIFIED
    AcceleratorOptimized
    ACCELERATOR_OPTIMIZED
    AcceleratorOptimizedA3
    ACCELERATOR_OPTIMIZED_A3
    ComputeOptimized
    COMPUTE_OPTIMIZED
    ComputeOptimizedC2d
    COMPUTE_OPTIMIZED_C2D
    ComputeOptimizedC3
    COMPUTE_OPTIMIZED_C3
    ComputeOptimizedC3d
    COMPUTE_OPTIMIZED_C3D
    ComputeOptimizedH3
    COMPUTE_OPTIMIZED_H3
    GeneralPurpose
    GENERAL_PURPOSE
    GeneralPurposeE2
    GENERAL_PURPOSE_E2
    GeneralPurposeN2
    GENERAL_PURPOSE_N2
    GeneralPurposeN2d
    GENERAL_PURPOSE_N2D
    GeneralPurposeT2d
    GENERAL_PURPOSE_T2D
    GraphicsOptimized
    GRAPHICS_OPTIMIZED
    MemoryOptimized
    MEMORY_OPTIMIZED
    MemoryOptimizedM3
    MEMORY_OPTIMIZED_M3
    TypeUnspecified
    TYPE_UNSPECIFIED
    ACCELERATOR_OPTIMIZED
    ACCELERATOR_OPTIMIZED
    ACCELERATOR_OPTIMIZED_A3
    ACCELERATOR_OPTIMIZED_A3
    COMPUTE_OPTIMIZED
    COMPUTE_OPTIMIZED
    COMPUTE_OPTIMIZED_C2D
    COMPUTE_OPTIMIZED_C2D
    COMPUTE_OPTIMIZED_C3
    COMPUTE_OPTIMIZED_C3
    COMPUTE_OPTIMIZED_C3D
    COMPUTE_OPTIMIZED_C3D
    COMPUTE_OPTIMIZED_H3
    COMPUTE_OPTIMIZED_H3
    GENERAL_PURPOSE
    GENERAL_PURPOSE
    GENERAL_PURPOSE_E2
    GENERAL_PURPOSE_E2
    GENERAL_PURPOSE_N2
    GENERAL_PURPOSE_N2
    GENERAL_PURPOSE_N2D
    GENERAL_PURPOSE_N2D
    GENERAL_PURPOSE_T2D
    GENERAL_PURPOSE_T2D
    GRAPHICS_OPTIMIZED
    GRAPHICS_OPTIMIZED
    MEMORY_OPTIMIZED
    MEMORY_OPTIMIZED
    MEMORY_OPTIMIZED_M3
    MEMORY_OPTIMIZED_M3
    TYPE_UNSPECIFIED
    TYPE_UNSPECIFIED
    "ACCELERATOR_OPTIMIZED"
    ACCELERATOR_OPTIMIZED
    "ACCELERATOR_OPTIMIZED_A3"
    ACCELERATOR_OPTIMIZED_A3
    "COMPUTE_OPTIMIZED"
    COMPUTE_OPTIMIZED
    "COMPUTE_OPTIMIZED_C2D"
    COMPUTE_OPTIMIZED_C2D
    "COMPUTE_OPTIMIZED_C3"
    COMPUTE_OPTIMIZED_C3
    "COMPUTE_OPTIMIZED_C3D"
    COMPUTE_OPTIMIZED_C3D
    "COMPUTE_OPTIMIZED_H3"
    COMPUTE_OPTIMIZED_H3
    "GENERAL_PURPOSE"
    GENERAL_PURPOSE
    "GENERAL_PURPOSE_E2"
    GENERAL_PURPOSE_E2
    "GENERAL_PURPOSE_N2"
    GENERAL_PURPOSE_N2
    "GENERAL_PURPOSE_N2D"
    GENERAL_PURPOSE_N2D
    "GENERAL_PURPOSE_T2D"
    GENERAL_PURPOSE_T2D
    "GRAPHICS_OPTIMIZED"
    GRAPHICS_OPTIMIZED
    "MEMORY_OPTIMIZED"
    MEMORY_OPTIMIZED
    "MEMORY_OPTIMIZED_M3"
    MEMORY_OPTIMIZED_M3
    "TYPE_UNSPECIFIED"
    TYPE_UNSPECIFIED

    Reservation, ReservationArgs

    AggregateReservation Pulumi.GoogleNative.Compute.Beta.Inputs.AllocationAggregateReservation
    Reservation for aggregated resources, providing shape flexibility.
    DeleteAfterDuration Pulumi.GoogleNative.Compute.Beta.Inputs.Duration
    Duration time relative to reservation creation when GCE will automatically delete this resource.
    DeleteAtTime string
    Absolute time in future when the reservation will be auto-deleted by GCE. Timestamp is represented in RFC3339 text format.
    Description string
    An optional description of this resource. Provide this property when you create the resource.
    Name string
    The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    ResourcePolicies Dictionary<string, string>
    Resource policies to be added to this reservation. The key is defined by user, and the value is resource policy url. This is to define placement policy with reservation.
    ShareSettings Pulumi.GoogleNative.Compute.Beta.Inputs.ShareSettings
    Specify share-settings to create a shared reservation. This property is optional. For more information about the syntax and options for this field and its subfields, see the guide for creating a shared reservation.
    SpecificReservation Pulumi.GoogleNative.Compute.Beta.Inputs.AllocationSpecificSKUReservation
    Reservation for instances with specific machine shapes.
    SpecificReservationRequired bool
    Indicates whether the reservation can be consumed by VMs with affinity for "any" reservation. If the field is set, then only VMs that target the reservation by name can consume from this reservation.
    Zone string
    Zone in which the reservation resides. A zone must be provided if the reservation is created within a commitment.
    AggregateReservation AllocationAggregateReservation
    Reservation for aggregated resources, providing shape flexibility.
    DeleteAfterDuration Duration
    Duration time relative to reservation creation when GCE will automatically delete this resource.
    DeleteAtTime string
    Absolute time in future when the reservation will be auto-deleted by GCE. Timestamp is represented in RFC3339 text format.
    Description string
    An optional description of this resource. Provide this property when you create the resource.
    Name string
    The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    ResourcePolicies map[string]string
    Resource policies to be added to this reservation. The key is defined by user, and the value is resource policy url. This is to define placement policy with reservation.
    ShareSettings ShareSettings
    Specify share-settings to create a shared reservation. This property is optional. For more information about the syntax and options for this field and its subfields, see the guide for creating a shared reservation.
    SpecificReservation AllocationSpecificSKUReservation
    Reservation for instances with specific machine shapes.
    SpecificReservationRequired bool
    Indicates whether the reservation can be consumed by VMs with affinity for "any" reservation. If the field is set, then only VMs that target the reservation by name can consume from this reservation.
    Zone string
    Zone in which the reservation resides. A zone must be provided if the reservation is created within a commitment.
    aggregateReservation AllocationAggregateReservation
    Reservation for aggregated resources, providing shape flexibility.
    deleteAfterDuration Duration
    Duration time relative to reservation creation when GCE will automatically delete this resource.
    deleteAtTime String
    Absolute time in future when the reservation will be auto-deleted by GCE. Timestamp is represented in RFC3339 text format.
    description String
    An optional description of this resource. Provide this property when you create the resource.
    name String
    The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    resourcePolicies Map<String,String>
    Resource policies to be added to this reservation. The key is defined by user, and the value is resource policy url. This is to define placement policy with reservation.
    shareSettings ShareSettings
    Specify share-settings to create a shared reservation. This property is optional. For more information about the syntax and options for this field and its subfields, see the guide for creating a shared reservation.
    specificReservation AllocationSpecificSKUReservation
    Reservation for instances with specific machine shapes.
    specificReservationRequired Boolean
    Indicates whether the reservation can be consumed by VMs with affinity for "any" reservation. If the field is set, then only VMs that target the reservation by name can consume from this reservation.
    zone String
    Zone in which the reservation resides. A zone must be provided if the reservation is created within a commitment.
    aggregateReservation AllocationAggregateReservation
    Reservation for aggregated resources, providing shape flexibility.
    deleteAfterDuration Duration
    Duration time relative to reservation creation when GCE will automatically delete this resource.
    deleteAtTime string
    Absolute time in future when the reservation will be auto-deleted by GCE. Timestamp is represented in RFC3339 text format.
    description string
    An optional description of this resource. Provide this property when you create the resource.
    name string
    The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    resourcePolicies {[key: string]: string}
    Resource policies to be added to this reservation. The key is defined by user, and the value is resource policy url. This is to define placement policy with reservation.
    shareSettings ShareSettings
    Specify share-settings to create a shared reservation. This property is optional. For more information about the syntax and options for this field and its subfields, see the guide for creating a shared reservation.
    specificReservation AllocationSpecificSKUReservation
    Reservation for instances with specific machine shapes.
    specificReservationRequired boolean
    Indicates whether the reservation can be consumed by VMs with affinity for "any" reservation. If the field is set, then only VMs that target the reservation by name can consume from this reservation.
    zone string
    Zone in which the reservation resides. A zone must be provided if the reservation is created within a commitment.
    aggregate_reservation AllocationAggregateReservation
    Reservation for aggregated resources, providing shape flexibility.
    delete_after_duration Duration
    Duration time relative to reservation creation when GCE will automatically delete this resource.
    delete_at_time str
    Absolute time in future when the reservation will be auto-deleted by GCE. Timestamp is represented in RFC3339 text format.
    description str
    An optional description of this resource. Provide this property when you create the resource.
    name str
    The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    resource_policies Mapping[str, str]
    Resource policies to be added to this reservation. The key is defined by user, and the value is resource policy url. This is to define placement policy with reservation.
    share_settings ShareSettings
    Specify share-settings to create a shared reservation. This property is optional. For more information about the syntax and options for this field and its subfields, see the guide for creating a shared reservation.
    specific_reservation AllocationSpecificSKUReservation
    Reservation for instances with specific machine shapes.
    specific_reservation_required bool
    Indicates whether the reservation can be consumed by VMs with affinity for "any" reservation. If the field is set, then only VMs that target the reservation by name can consume from this reservation.
    zone str
    Zone in which the reservation resides. A zone must be provided if the reservation is created within a commitment.
    aggregateReservation Property Map
    Reservation for aggregated resources, providing shape flexibility.
    deleteAfterDuration Property Map
    Duration time relative to reservation creation when GCE will automatically delete this resource.
    deleteAtTime String
    Absolute time in future when the reservation will be auto-deleted by GCE. Timestamp is represented in RFC3339 text format.
    description String
    An optional description of this resource. Provide this property when you create the resource.
    name String
    The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    resourcePolicies Map<String>
    Resource policies to be added to this reservation. The key is defined by user, and the value is resource policy url. This is to define placement policy with reservation.
    shareSettings Property Map
    Specify share-settings to create a shared reservation. This property is optional. For more information about the syntax and options for this field and its subfields, see the guide for creating a shared reservation.
    specificReservation Property Map
    Reservation for instances with specific machine shapes.
    specificReservationRequired Boolean
    Indicates whether the reservation can be consumed by VMs with affinity for "any" reservation. If the field is set, then only VMs that target the reservation by name can consume from this reservation.
    zone String
    Zone in which the reservation resides. A zone must be provided if the reservation is created within a commitment.

    ReservationResponse, ReservationResponseArgs

    AggregateReservation Pulumi.GoogleNative.Compute.Beta.Inputs.AllocationAggregateReservationResponse
    Reservation for aggregated resources, providing shape flexibility.
    Commitment string
    Full or partial URL to a parent commitment. This field displays for reservations that are tied to a commitment.
    CreationTimestamp string
    Creation timestamp in RFC3339 text format.
    DeleteAfterDuration Pulumi.GoogleNative.Compute.Beta.Inputs.DurationResponse
    Duration time relative to reservation creation when GCE will automatically delete this resource.
    DeleteAtTime string
    Absolute time in future when the reservation will be auto-deleted by GCE. Timestamp is represented in RFC3339 text format.
    Description string
    An optional description of this resource. Provide this property when you create the resource.
    Kind string
    Type of the resource. Always compute#reservations for reservations.
    Name string
    The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    ResourcePolicies Dictionary<string, string>
    Resource policies to be added to this reservation. The key is defined by user, and the value is resource policy url. This is to define placement policy with reservation.
    ResourceStatus Pulumi.GoogleNative.Compute.Beta.Inputs.AllocationResourceStatusResponse
    Status information for Reservation resource.
    SatisfiesPzs bool
    Reserved for future use.
    SelfLink string
    Server-defined fully-qualified URL for this resource.
    ShareSettings Pulumi.GoogleNative.Compute.Beta.Inputs.ShareSettingsResponse
    Specify share-settings to create a shared reservation. This property is optional. For more information about the syntax and options for this field and its subfields, see the guide for creating a shared reservation.
    SpecificReservation Pulumi.GoogleNative.Compute.Beta.Inputs.AllocationSpecificSKUReservationResponse
    Reservation for instances with specific machine shapes.
    SpecificReservationRequired bool
    Indicates whether the reservation can be consumed by VMs with affinity for "any" reservation. If the field is set, then only VMs that target the reservation by name can consume from this reservation.
    Status string
    The status of the reservation.
    Zone string
    Zone in which the reservation resides. A zone must be provided if the reservation is created within a commitment.
    AggregateReservation AllocationAggregateReservationResponse
    Reservation for aggregated resources, providing shape flexibility.
    Commitment string
    Full or partial URL to a parent commitment. This field displays for reservations that are tied to a commitment.
    CreationTimestamp string
    Creation timestamp in RFC3339 text format.
    DeleteAfterDuration DurationResponse
    Duration time relative to reservation creation when GCE will automatically delete this resource.
    DeleteAtTime string
    Absolute time in future when the reservation will be auto-deleted by GCE. Timestamp is represented in RFC3339 text format.
    Description string
    An optional description of this resource. Provide this property when you create the resource.
    Kind string
    Type of the resource. Always compute#reservations for reservations.
    Name string
    The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    ResourcePolicies map[string]string
    Resource policies to be added to this reservation. The key is defined by user, and the value is resource policy url. This is to define placement policy with reservation.
    ResourceStatus AllocationResourceStatusResponse
    Status information for Reservation resource.
    SatisfiesPzs bool
    Reserved for future use.
    SelfLink string
    Server-defined fully-qualified URL for this resource.
    ShareSettings ShareSettingsResponse
    Specify share-settings to create a shared reservation. This property is optional. For more information about the syntax and options for this field and its subfields, see the guide for creating a shared reservation.
    SpecificReservation AllocationSpecificSKUReservationResponse
    Reservation for instances with specific machine shapes.
    SpecificReservationRequired bool
    Indicates whether the reservation can be consumed by VMs with affinity for "any" reservation. If the field is set, then only VMs that target the reservation by name can consume from this reservation.
    Status string
    The status of the reservation.
    Zone string
    Zone in which the reservation resides. A zone must be provided if the reservation is created within a commitment.
    aggregateReservation AllocationAggregateReservationResponse
    Reservation for aggregated resources, providing shape flexibility.
    commitment String
    Full or partial URL to a parent commitment. This field displays for reservations that are tied to a commitment.
    creationTimestamp String
    Creation timestamp in RFC3339 text format.
    deleteAfterDuration DurationResponse
    Duration time relative to reservation creation when GCE will automatically delete this resource.
    deleteAtTime String
    Absolute time in future when the reservation will be auto-deleted by GCE. Timestamp is represented in RFC3339 text format.
    description String
    An optional description of this resource. Provide this property when you create the resource.
    kind String
    Type of the resource. Always compute#reservations for reservations.
    name String
    The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    resourcePolicies Map<String,String>
    Resource policies to be added to this reservation. The key is defined by user, and the value is resource policy url. This is to define placement policy with reservation.
    resourceStatus AllocationResourceStatusResponse
    Status information for Reservation resource.
    satisfiesPzs Boolean
    Reserved for future use.
    selfLink String
    Server-defined fully-qualified URL for this resource.
    shareSettings ShareSettingsResponse
    Specify share-settings to create a shared reservation. This property is optional. For more information about the syntax and options for this field and its subfields, see the guide for creating a shared reservation.
    specificReservation AllocationSpecificSKUReservationResponse
    Reservation for instances with specific machine shapes.
    specificReservationRequired Boolean
    Indicates whether the reservation can be consumed by VMs with affinity for "any" reservation. If the field is set, then only VMs that target the reservation by name can consume from this reservation.
    status String
    The status of the reservation.
    zone String
    Zone in which the reservation resides. A zone must be provided if the reservation is created within a commitment.
    aggregateReservation AllocationAggregateReservationResponse
    Reservation for aggregated resources, providing shape flexibility.
    commitment string
    Full or partial URL to a parent commitment. This field displays for reservations that are tied to a commitment.
    creationTimestamp string
    Creation timestamp in RFC3339 text format.
    deleteAfterDuration DurationResponse
    Duration time relative to reservation creation when GCE will automatically delete this resource.
    deleteAtTime string
    Absolute time in future when the reservation will be auto-deleted by GCE. Timestamp is represented in RFC3339 text format.
    description string
    An optional description of this resource. Provide this property when you create the resource.
    kind string
    Type of the resource. Always compute#reservations for reservations.
    name string
    The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    resourcePolicies {[key: string]: string}
    Resource policies to be added to this reservation. The key is defined by user, and the value is resource policy url. This is to define placement policy with reservation.
    resourceStatus AllocationResourceStatusResponse
    Status information for Reservation resource.
    satisfiesPzs boolean
    Reserved for future use.
    selfLink string
    Server-defined fully-qualified URL for this resource.
    shareSettings ShareSettingsResponse
    Specify share-settings to create a shared reservation. This property is optional. For more information about the syntax and options for this field and its subfields, see the guide for creating a shared reservation.
    specificReservation AllocationSpecificSKUReservationResponse
    Reservation for instances with specific machine shapes.
    specificReservationRequired boolean
    Indicates whether the reservation can be consumed by VMs with affinity for "any" reservation. If the field is set, then only VMs that target the reservation by name can consume from this reservation.
    status string
    The status of the reservation.
    zone string
    Zone in which the reservation resides. A zone must be provided if the reservation is created within a commitment.
    aggregate_reservation AllocationAggregateReservationResponse
    Reservation for aggregated resources, providing shape flexibility.
    commitment str
    Full or partial URL to a parent commitment. This field displays for reservations that are tied to a commitment.
    creation_timestamp str
    Creation timestamp in RFC3339 text format.
    delete_after_duration DurationResponse
    Duration time relative to reservation creation when GCE will automatically delete this resource.
    delete_at_time str
    Absolute time in future when the reservation will be auto-deleted by GCE. Timestamp is represented in RFC3339 text format.
    description str
    An optional description of this resource. Provide this property when you create the resource.
    kind str
    Type of the resource. Always compute#reservations for reservations.
    name str
    The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    resource_policies Mapping[str, str]
    Resource policies to be added to this reservation. The key is defined by user, and the value is resource policy url. This is to define placement policy with reservation.
    resource_status AllocationResourceStatusResponse
    Status information for Reservation resource.
    satisfies_pzs bool
    Reserved for future use.
    self_link str
    Server-defined fully-qualified URL for this resource.
    share_settings ShareSettingsResponse
    Specify share-settings to create a shared reservation. This property is optional. For more information about the syntax and options for this field and its subfields, see the guide for creating a shared reservation.
    specific_reservation AllocationSpecificSKUReservationResponse
    Reservation for instances with specific machine shapes.
    specific_reservation_required bool
    Indicates whether the reservation can be consumed by VMs with affinity for "any" reservation. If the field is set, then only VMs that target the reservation by name can consume from this reservation.
    status str
    The status of the reservation.
    zone str
    Zone in which the reservation resides. A zone must be provided if the reservation is created within a commitment.
    aggregateReservation Property Map
    Reservation for aggregated resources, providing shape flexibility.
    commitment String
    Full or partial URL to a parent commitment. This field displays for reservations that are tied to a commitment.
    creationTimestamp String
    Creation timestamp in RFC3339 text format.
    deleteAfterDuration Property Map
    Duration time relative to reservation creation when GCE will automatically delete this resource.
    deleteAtTime String
    Absolute time in future when the reservation will be auto-deleted by GCE. Timestamp is represented in RFC3339 text format.
    description String
    An optional description of this resource. Provide this property when you create the resource.
    kind String
    Type of the resource. Always compute#reservations for reservations.
    name String
    The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
    resourcePolicies Map<String>
    Resource policies to be added to this reservation. The key is defined by user, and the value is resource policy url. This is to define placement policy with reservation.
    resourceStatus Property Map
    Status information for Reservation resource.
    satisfiesPzs Boolean
    Reserved for future use.
    selfLink String
    Server-defined fully-qualified URL for this resource.
    shareSettings Property Map
    Specify share-settings to create a shared reservation. This property is optional. For more information about the syntax and options for this field and its subfields, see the guide for creating a shared reservation.
    specificReservation Property Map
    Reservation for instances with specific machine shapes.
    specificReservationRequired Boolean
    Indicates whether the reservation can be consumed by VMs with affinity for "any" reservation. If the field is set, then only VMs that target the reservation by name can consume from this reservation.
    status String
    The status of the reservation.
    zone String
    Zone in which the reservation resides. A zone must be provided if the reservation is created within a commitment.

    ResourceCommitment, ResourceCommitmentArgs

    AcceleratorType string
    Name of the accelerator type resource. Applicable only when the type is ACCELERATOR.
    Amount string
    The amount of the resource purchased (in a type-dependent unit, such as bytes). For vCPUs, this can just be an integer. For memory, this must be provided in MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every vCPU.
    Type Pulumi.GoogleNative.Compute.Beta.ResourceCommitmentType
    Type of resource for which this commitment applies. Possible values are VCPU, MEMORY, LOCAL_SSD, and ACCELERATOR.
    AcceleratorType string
    Name of the accelerator type resource. Applicable only when the type is ACCELERATOR.
    Amount string
    The amount of the resource purchased (in a type-dependent unit, such as bytes). For vCPUs, this can just be an integer. For memory, this must be provided in MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every vCPU.
    Type ResourceCommitmentType
    Type of resource for which this commitment applies. Possible values are VCPU, MEMORY, LOCAL_SSD, and ACCELERATOR.
    acceleratorType String
    Name of the accelerator type resource. Applicable only when the type is ACCELERATOR.
    amount String
    The amount of the resource purchased (in a type-dependent unit, such as bytes). For vCPUs, this can just be an integer. For memory, this must be provided in MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every vCPU.
    type ResourceCommitmentType
    Type of resource for which this commitment applies. Possible values are VCPU, MEMORY, LOCAL_SSD, and ACCELERATOR.
    acceleratorType string
    Name of the accelerator type resource. Applicable only when the type is ACCELERATOR.
    amount string
    The amount of the resource purchased (in a type-dependent unit, such as bytes). For vCPUs, this can just be an integer. For memory, this must be provided in MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every vCPU.
    type ResourceCommitmentType
    Type of resource for which this commitment applies. Possible values are VCPU, MEMORY, LOCAL_SSD, and ACCELERATOR.
    accelerator_type str
    Name of the accelerator type resource. Applicable only when the type is ACCELERATOR.
    amount str
    The amount of the resource purchased (in a type-dependent unit, such as bytes). For vCPUs, this can just be an integer. For memory, this must be provided in MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every vCPU.
    type ResourceCommitmentType
    Type of resource for which this commitment applies. Possible values are VCPU, MEMORY, LOCAL_SSD, and ACCELERATOR.
    acceleratorType String
    Name of the accelerator type resource. Applicable only when the type is ACCELERATOR.
    amount String
    The amount of the resource purchased (in a type-dependent unit, such as bytes). For vCPUs, this can just be an integer. For memory, this must be provided in MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every vCPU.
    type "ACCELERATOR" | "LOCAL_SSD" | "MEMORY" | "UNSPECIFIED" | "VCPU"
    Type of resource for which this commitment applies. Possible values are VCPU, MEMORY, LOCAL_SSD, and ACCELERATOR.

    ResourceCommitmentResponse, ResourceCommitmentResponseArgs

    AcceleratorType string
    Name of the accelerator type resource. Applicable only when the type is ACCELERATOR.
    Amount string
    The amount of the resource purchased (in a type-dependent unit, such as bytes). For vCPUs, this can just be an integer. For memory, this must be provided in MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every vCPU.
    Type string
    Type of resource for which this commitment applies. Possible values are VCPU, MEMORY, LOCAL_SSD, and ACCELERATOR.
    AcceleratorType string
    Name of the accelerator type resource. Applicable only when the type is ACCELERATOR.
    Amount string
    The amount of the resource purchased (in a type-dependent unit, such as bytes). For vCPUs, this can just be an integer. For memory, this must be provided in MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every vCPU.
    Type string
    Type of resource for which this commitment applies. Possible values are VCPU, MEMORY, LOCAL_SSD, and ACCELERATOR.
    acceleratorType String
    Name of the accelerator type resource. Applicable only when the type is ACCELERATOR.
    amount String
    The amount of the resource purchased (in a type-dependent unit, such as bytes). For vCPUs, this can just be an integer. For memory, this must be provided in MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every vCPU.
    type String
    Type of resource for which this commitment applies. Possible values are VCPU, MEMORY, LOCAL_SSD, and ACCELERATOR.
    acceleratorType string
    Name of the accelerator type resource. Applicable only when the type is ACCELERATOR.
    amount string
    The amount of the resource purchased (in a type-dependent unit, such as bytes). For vCPUs, this can just be an integer. For memory, this must be provided in MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every vCPU.
    type string
    Type of resource for which this commitment applies. Possible values are VCPU, MEMORY, LOCAL_SSD, and ACCELERATOR.
    accelerator_type str
    Name of the accelerator type resource. Applicable only when the type is ACCELERATOR.
    amount str
    The amount of the resource purchased (in a type-dependent unit, such as bytes). For vCPUs, this can just be an integer. For memory, this must be provided in MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every vCPU.
    type str
    Type of resource for which this commitment applies. Possible values are VCPU, MEMORY, LOCAL_SSD, and ACCELERATOR.
    acceleratorType String
    Name of the accelerator type resource. Applicable only when the type is ACCELERATOR.
    amount String
    The amount of the resource purchased (in a type-dependent unit, such as bytes). For vCPUs, this can just be an integer. For memory, this must be provided in MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every vCPU.
    type String
    Type of resource for which this commitment applies. Possible values are VCPU, MEMORY, LOCAL_SSD, and ACCELERATOR.

    ResourceCommitmentType, ResourceCommitmentTypeArgs

    Accelerator
    ACCELERATOR
    LocalSsd
    LOCAL_SSD
    Memory
    MEMORY
    Unspecified
    UNSPECIFIED
    Vcpu
    VCPU
    ResourceCommitmentTypeAccelerator
    ACCELERATOR
    ResourceCommitmentTypeLocalSsd
    LOCAL_SSD
    ResourceCommitmentTypeMemory
    MEMORY
    ResourceCommitmentTypeUnspecified
    UNSPECIFIED
    ResourceCommitmentTypeVcpu
    VCPU
    Accelerator
    ACCELERATOR
    LocalSsd
    LOCAL_SSD
    Memory
    MEMORY
    Unspecified
    UNSPECIFIED
    Vcpu
    VCPU
    Accelerator
    ACCELERATOR
    LocalSsd
    LOCAL_SSD
    Memory
    MEMORY
    Unspecified
    UNSPECIFIED
    Vcpu
    VCPU
    ACCELERATOR
    ACCELERATOR
    LOCAL_SSD
    LOCAL_SSD
    MEMORY
    MEMORY
    UNSPECIFIED
    UNSPECIFIED
    VCPU
    VCPU
    "ACCELERATOR"
    ACCELERATOR
    "LOCAL_SSD"
    LOCAL_SSD
    "MEMORY"
    MEMORY
    "UNSPECIFIED"
    UNSPECIFIED
    "VCPU"
    VCPU

    ShareSettings, ShareSettingsArgs

    ProjectMap Dictionary<string, string>
    A map of project id and project config. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    Projects List<string>
    A List of Project names to specify consumer projects for this shared-reservation. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    ShareType Pulumi.GoogleNative.Compute.Beta.ShareSettingsShareType
    Type of sharing for this shared-reservation
    ProjectMap map[string]string
    A map of project id and project config. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    Projects []string
    A List of Project names to specify consumer projects for this shared-reservation. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    ShareType ShareSettingsShareType
    Type of sharing for this shared-reservation
    projectMap Map<String,String>
    A map of project id and project config. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    projects List<String>
    A List of Project names to specify consumer projects for this shared-reservation. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    shareType ShareSettingsShareType
    Type of sharing for this shared-reservation
    projectMap {[key: string]: string}
    A map of project id and project config. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    projects string[]
    A List of Project names to specify consumer projects for this shared-reservation. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    shareType ShareSettingsShareType
    Type of sharing for this shared-reservation
    project_map Mapping[str, str]
    A map of project id and project config. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    projects Sequence[str]
    A List of Project names to specify consumer projects for this shared-reservation. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    share_type ShareSettingsShareType
    Type of sharing for this shared-reservation
    projectMap Map<String>
    A map of project id and project config. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    projects List<String>
    A List of Project names to specify consumer projects for this shared-reservation. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    shareType "LOCAL" | "ORGANIZATION" | "SHARE_TYPE_UNSPECIFIED" | "SPECIFIC_PROJECTS"
    Type of sharing for this shared-reservation

    ShareSettingsResponse, ShareSettingsResponseArgs

    ProjectMap Dictionary<string, string>
    A map of project id and project config. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    Projects List<string>
    A List of Project names to specify consumer projects for this shared-reservation. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    ShareType string
    Type of sharing for this shared-reservation
    ProjectMap map[string]string
    A map of project id and project config. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    Projects []string
    A List of Project names to specify consumer projects for this shared-reservation. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    ShareType string
    Type of sharing for this shared-reservation
    projectMap Map<String,String>
    A map of project id and project config. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    projects List<String>
    A List of Project names to specify consumer projects for this shared-reservation. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    shareType String
    Type of sharing for this shared-reservation
    projectMap {[key: string]: string}
    A map of project id and project config. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    projects string[]
    A List of Project names to specify consumer projects for this shared-reservation. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    shareType string
    Type of sharing for this shared-reservation
    project_map Mapping[str, str]
    A map of project id and project config. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    projects Sequence[str]
    A List of Project names to specify consumer projects for this shared-reservation. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    share_type str
    Type of sharing for this shared-reservation
    projectMap Map<String>
    A map of project id and project config. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    projects List<String>
    A List of Project names to specify consumer projects for this shared-reservation. This is only valid when share_type's value is SPECIFIC_PROJECTS.
    shareType String
    Type of sharing for this shared-reservation

    ShareSettingsShareType, ShareSettingsShareTypeArgs

    Local
    LOCALDefault value.
    Organization
    ORGANIZATIONShared-reservation is open to entire Organization
    ShareTypeUnspecified
    SHARE_TYPE_UNSPECIFIEDDefault value. This value is unused.
    SpecificProjects
    SPECIFIC_PROJECTSShared-reservation is open to specific projects
    ShareSettingsShareTypeLocal
    LOCALDefault value.
    ShareSettingsShareTypeOrganization
    ORGANIZATIONShared-reservation is open to entire Organization
    ShareSettingsShareTypeShareTypeUnspecified
    SHARE_TYPE_UNSPECIFIEDDefault value. This value is unused.
    ShareSettingsShareTypeSpecificProjects
    SPECIFIC_PROJECTSShared-reservation is open to specific projects
    Local
    LOCALDefault value.
    Organization
    ORGANIZATIONShared-reservation is open to entire Organization
    ShareTypeUnspecified
    SHARE_TYPE_UNSPECIFIEDDefault value. This value is unused.
    SpecificProjects
    SPECIFIC_PROJECTSShared-reservation is open to specific projects
    Local
    LOCALDefault value.
    Organization
    ORGANIZATIONShared-reservation is open to entire Organization
    ShareTypeUnspecified
    SHARE_TYPE_UNSPECIFIEDDefault value. This value is unused.
    SpecificProjects
    SPECIFIC_PROJECTSShared-reservation is open to specific projects
    LOCAL
    LOCALDefault value.
    ORGANIZATION
    ORGANIZATIONShared-reservation is open to entire Organization
    SHARE_TYPE_UNSPECIFIED
    SHARE_TYPE_UNSPECIFIEDDefault value. This value is unused.
    SPECIFIC_PROJECTS
    SPECIFIC_PROJECTSShared-reservation is open to specific projects
    "LOCAL"
    LOCALDefault value.
    "ORGANIZATION"
    ORGANIZATIONShared-reservation is open to entire Organization
    "SHARE_TYPE_UNSPECIFIED"
    SHARE_TYPE_UNSPECIFIEDDefault value. This value is unused.
    "SPECIFIC_PROJECTS"
    SPECIFIC_PROJECTSShared-reservation is open to specific projects

    Package Details

    Repository
    Google Cloud Native pulumi/pulumi-google-native
    License
    Apache-2.0
    google-native logo

    Google Cloud Native is in preview. Google Cloud Classic is fully supported.

    Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi