Skip to main content

future_reservations

Creates, updates, deletes, gets or lists a future_reservations resource.

Overview

Namefuture_reservations
TypeResource
Idgoogle.compute.future_reservations

Fields

The following fields are returned by SELECT queries:

NameDatatypeDescription
idstring (uint64)Output only. [Output Only] A unique identifier for this future reservation. The server defines this identifier.
namestringThe name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply withRFC1035. 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. (pattern: [a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)
aggregateReservationobjectAggregate reservation details for the future reservation. (id: AllocationAggregateReservation)
autoCreatedReservationsDeleteTimestringFuture timestamp when the FR auto-created reservations will be deleted by Compute Engine. Format of this field must be a valid href="https://www.ietf.org/rfc/rfc3339.txt">RFC3339 value.
autoCreatedReservationsDurationobjectA Duration represents a fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution. It is independent of any calendar and concepts like "day" or "month". Range is approximately 10,000 years. (id: Duration)
autoDeleteAutoCreatedReservationsbooleanSetting for enabling or disabling automatic deletion for auto-created reservation. If set to true, auto-created reservations will be deleted at Future Reservation's end time (default) or at user's defined timestamp if any of the [auto_created_reservations_delete_time, auto_created_reservations_duration] values is specified. For keeping auto-created reservation indefinitely, this value should be set to false.
commitmentInfoobjectIf not present, then FR will not deliver a new commitment or update an existing commitment. (id: FutureReservationCommitmentInfo)
confidentialComputeTypestring (CONFIDENTIAL_COMPUTE_TYPE_TDX, CONFIDENTIAL_COMPUTE_TYPE_UNSPECIFIED)
creationTimestampstringOutput only. [Output Only] The creation timestamp for this future reservation inRFC3339 text format.
deploymentTypestringType of the deployment requested as part of future reservation. (DENSE, DEPLOYMENT_TYPE_UNSPECIFIED)
descriptionstringAn optional description of this resource. Provide this property when you create the future reservation.
enableEmergentMaintenancebooleanIndicates if this group of VMs have emergent maintenance enabled.
kindstringOutput only. [Output Only] Type of the resource. Alwayscompute#futureReservation for future reservations. (default: compute#futureReservation)
namePrefixstringName prefix for the reservations to be created at the time of delivery. The name prefix must comply with RFC1035. Maximum allowed length for name prefix is 20. Automatically created reservations name format will be -date-####.
paramsobjectInput only. Additional params passed with the request, but not persisted as part of resource payload. (id: FutureReservationParams)
planningStatusstringPlanning state before being submitted for evaluation (DRAFT, PLANNING_STATUS_UNSPECIFIED, SUBMITTED)
reservationModestringThe reservation mode which determines reservation-termination behavior and expected pricing. (CALENDAR, DEFAULT, RESERVATION_MODE_UNSPECIFIED)
reservationNamestringName of reservations where the capacity is provisioned at the time of delivery of future reservations. If the reservation with the given name does not exist already, it is created automatically at the time of Approval with INACTIVE state till specified start-time. Either provide the reservation_name or a name_prefix.
schedulingTypestringMaintenance information for this reservation (GROUPED, GROUP_MAINTENANCE_TYPE_UNSPECIFIED, INDEPENDENT)
selfLinkstringOutput only. [Output Only] Server-defined fully-qualified URL for this resource.
selfLinkWithIdstringOutput only. [Output Only] Server-defined URL for this resource with the resource id.
shareSettingsobjectList of Projects/Folders to share with. (id: ShareSettings)
specificReservationRequiredbooleanIndicates whether the auto-created 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 the delivered reservation.
specificSkuPropertiesobjectFuture Reservation configuration to indicate instance properties and total count. (id: FutureReservationSpecificSKUProperties)
statusobjectOutput only. [Output only] Status of the Future Reservation (id: FutureReservationStatus)
timeWindowobjectTime window for this Future Reservation. (id: FutureReservationTimeWindow)
zonestringOutput only. [Output Only] URL of the Zone where this future reservation resides.

Methods

The following methods are available for this resource:

NameAccessible byRequired ParamsOptional ParamsDescription
getselectproject, zone, futureReservationRetrieves information about the specified future reservation.
listselectproject, zoneorderBy, filter, maxResults, pageToken, returnPartialSuccessA list of all the future reservations that have been configured for the
specified project in specified zone.
aggregated_listselectprojectreturnPartialSuccess, includeAllScopes, orderBy, filter, serviceProjectNumber, maxResults, pageTokenRetrieves an aggregated list of future reservations.

To prevent failure, it is recommended that you set the
returnPartialSuccess parameter to true.
insertinsertproject, zonerequestIdCreates a new Future Reservation.
updateupdateproject, zone, futureReservationupdateMask, requestIdUpdates the specified future reservation.
deletedeleteproject, zone, futureReservationrequestIdDeletes the specified future reservation.
cancelexecproject, zone, futureReservationrequestIdCancel the specified future reservation.

Parameters

Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.

NameDatatypeDescription
futureReservationstring
projectstring
zonestring
filterstring
includeAllScopesboolean
maxResultsinteger (uint32)
orderBystring
pageTokenstring
requestIdstring
returnPartialSuccessboolean
serviceProjectNumberstring (int64)
updateMaskstring (google-fieldmask)

SELECT examples

Retrieves information about the specified future reservation.

SELECT
id,
name,
aggregateReservation,
autoCreatedReservationsDeleteTime,
autoCreatedReservationsDuration,
autoDeleteAutoCreatedReservations,
commitmentInfo,
confidentialComputeType,
creationTimestamp,
deploymentType,
description,
enableEmergentMaintenance,
kind,
namePrefix,
params,
planningStatus,
reservationMode,
reservationName,
schedulingType,
selfLink,
selfLinkWithId,
shareSettings,
specificReservationRequired,
specificSkuProperties,
status,
timeWindow,
zone
FROM google.compute.future_reservations
WHERE project = '{{ project }}' -- required
AND zone = '{{ zone }}' -- required
AND futureReservation = '{{ futureReservation }}' -- required
;

INSERT examples

Creates a new Future Reservation.

INSERT INTO google.compute.future_reservations (
data__deploymentType,
data__commitmentInfo,
data__schedulingType,
data__namePrefix,
data__description,
data__specificSkuProperties,
data__autoCreatedReservationsDuration,
data__name,
data__autoDeleteAutoCreatedReservations,
data__confidentialComputeType,
data__reservationName,
data__specificReservationRequired,
data__planningStatus,
data__enableEmergentMaintenance,
data__timeWindow,
data__aggregateReservation,
data__reservationMode,
data__shareSettings,
data__params,
data__autoCreatedReservationsDeleteTime,
project,
zone,
requestId
)
SELECT
'{{ deploymentType }}',
'{{ commitmentInfo }}',
'{{ schedulingType }}',
'{{ namePrefix }}',
'{{ description }}',
'{{ specificSkuProperties }}',
'{{ autoCreatedReservationsDuration }}',
'{{ name }}',
{{ autoDeleteAutoCreatedReservations }},
'{{ confidentialComputeType }}',
'{{ reservationName }}',
{{ specificReservationRequired }},
'{{ planningStatus }}',
{{ enableEmergentMaintenance }},
'{{ timeWindow }}',
'{{ aggregateReservation }}',
'{{ reservationMode }}',
'{{ shareSettings }}',
'{{ params }}',
'{{ autoCreatedReservationsDeleteTime }}',
'{{ project }}',
'{{ zone }}',
'{{ requestId }}'
RETURNING
id,
name,
clientOperationId,
creationTimestamp,
description,
endTime,
error,
getVersionOperationMetadata,
httpErrorMessage,
httpErrorStatusCode,
insertTime,
instancesBulkInsertOperationMetadata,
kind,
operationGroupId,
operationType,
progress,
region,
selfLink,
setCommonInstanceMetadataOperationMetadata,
startTime,
status,
statusMessage,
targetId,
targetLink,
user,
warnings,
zone
;

UPDATE examples

Updates the specified future reservation.

UPDATE google.compute.future_reservations
SET
data__deploymentType = '{{ deploymentType }}',
data__commitmentInfo = '{{ commitmentInfo }}',
data__schedulingType = '{{ schedulingType }}',
data__namePrefix = '{{ namePrefix }}',
data__description = '{{ description }}',
data__specificSkuProperties = '{{ specificSkuProperties }}',
data__autoCreatedReservationsDuration = '{{ autoCreatedReservationsDuration }}',
data__name = '{{ name }}',
data__autoDeleteAutoCreatedReservations = {{ autoDeleteAutoCreatedReservations }},
data__confidentialComputeType = '{{ confidentialComputeType }}',
data__reservationName = '{{ reservationName }}',
data__specificReservationRequired = {{ specificReservationRequired }},
data__planningStatus = '{{ planningStatus }}',
data__enableEmergentMaintenance = {{ enableEmergentMaintenance }},
data__timeWindow = '{{ timeWindow }}',
data__aggregateReservation = '{{ aggregateReservation }}',
data__reservationMode = '{{ reservationMode }}',
data__shareSettings = '{{ shareSettings }}',
data__params = '{{ params }}',
data__autoCreatedReservationsDeleteTime = '{{ autoCreatedReservationsDeleteTime }}'
WHERE
project = '{{ project }}' --required
AND zone = '{{ zone }}' --required
AND futureReservation = '{{ futureReservation }}' --required
AND updateMask = '{{ updateMask}}'
AND requestId = '{{ requestId}}'
RETURNING
id,
name,
clientOperationId,
creationTimestamp,
description,
endTime,
error,
getVersionOperationMetadata,
httpErrorMessage,
httpErrorStatusCode,
insertTime,
instancesBulkInsertOperationMetadata,
kind,
operationGroupId,
operationType,
progress,
region,
selfLink,
setCommonInstanceMetadataOperationMetadata,
startTime,
status,
statusMessage,
targetId,
targetLink,
user,
warnings,
zone;

DELETE examples

Deletes the specified future reservation.

DELETE FROM google.compute.future_reservations
WHERE project = '{{ project }}' --required
AND zone = '{{ zone }}' --required
AND futureReservation = '{{ futureReservation }}' --required
AND requestId = '{{ requestId }}'
;

Lifecycle Methods

Cancel the specified future reservation.

EXEC google.compute.future_reservations.cancel
@project='{{ project }}' --required,
@zone='{{ zone }}' --required,
@futureReservation='{{ futureReservation }}' --required,
@requestId='{{ requestId }}'
;