Google Cloud Classic v8.9.3 published on Monday, Nov 18, 2024 by Pulumi
gcp.compute.getSnapshot
Explore with Pulumi AI
To get more information about Snapshot, see:
- API documentation
- How-to Guides
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
//by name
const snapshot = gcp.compute.getSnapshot({
name: "my-snapshot",
});
// using a filter
const latest-snapshot = gcp.compute.getSnapshot({
filter: "name != my-snapshot",
mostRecent: true,
});
import pulumi
import pulumi_gcp as gcp
#by name
snapshot = gcp.compute.get_snapshot(name="my-snapshot")
# using a filter
latest_snapshot = gcp.compute.get_snapshot(filter="name != my-snapshot",
most_recent=True)
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// by name
_, err := compute.LookupSnapshot(ctx, &compute.LookupSnapshotArgs{
Name: pulumi.StringRef("my-snapshot"),
}, nil)
if err != nil {
return err
}
// using a filter
_, err = compute.LookupSnapshot(ctx, &compute.LookupSnapshotArgs{
Filter: pulumi.StringRef("name != my-snapshot"),
MostRecent: pulumi.BoolRef(true),
}, nil)
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
//by name
var snapshot = Gcp.Compute.GetSnapshot.Invoke(new()
{
Name = "my-snapshot",
});
// using a filter
var latest_snapshot = Gcp.Compute.GetSnapshot.Invoke(new()
{
Filter = "name != my-snapshot",
MostRecent = true,
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.compute.ComputeFunctions;
import com.pulumi.gcp.compute.inputs.GetSnapshotArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
//by name
final var snapshot = ComputeFunctions.getSnapshot(GetSnapshotArgs.builder()
.name("my-snapshot")
.build());
// using a filter
final var latest-snapshot = ComputeFunctions.getSnapshot(GetSnapshotArgs.builder()
.filter("name != my-snapshot")
.mostRecent(true)
.build());
}
}
variables:
#by name
snapshot:
fn::invoke:
Function: gcp:compute:getSnapshot
Arguments:
name: my-snapshot
# using a filter
latest-snapshot:
fn::invoke:
Function: gcp:compute:getSnapshot
Arguments:
filter: name != my-snapshot
mostRecent: true
Using getSnapshot
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getSnapshot(args: GetSnapshotArgs, opts?: InvokeOptions): Promise<GetSnapshotResult>
function getSnapshotOutput(args: GetSnapshotOutputArgs, opts?: InvokeOptions): Output<GetSnapshotResult>
def get_snapshot(filter: Optional[str] = None,
most_recent: Optional[bool] = None,
name: Optional[str] = None,
project: Optional[str] = None,
opts: Optional[InvokeOptions] = None) -> GetSnapshotResult
def get_snapshot_output(filter: Optional[pulumi.Input[str]] = None,
most_recent: Optional[pulumi.Input[bool]] = None,
name: Optional[pulumi.Input[str]] = None,
project: Optional[pulumi.Input[str]] = None,
opts: Optional[InvokeOptions] = None) -> Output[GetSnapshotResult]
func LookupSnapshot(ctx *Context, args *LookupSnapshotArgs, opts ...InvokeOption) (*LookupSnapshotResult, error)
func LookupSnapshotOutput(ctx *Context, args *LookupSnapshotOutputArgs, opts ...InvokeOption) LookupSnapshotResultOutput
> Note: This function is named LookupSnapshot
in the Go SDK.
public static class GetSnapshot
{
public static Task<GetSnapshotResult> InvokeAsync(GetSnapshotArgs args, InvokeOptions? opts = null)
public static Output<GetSnapshotResult> Invoke(GetSnapshotInvokeArgs args, InvokeOptions? opts = null)
}
public static CompletableFuture<GetSnapshotResult> getSnapshot(GetSnapshotArgs args, InvokeOptions options)
// Output-based functions aren't available in Java yet
fn::invoke:
function: gcp:compute/getSnapshot:getSnapshot
arguments:
# arguments dictionary
The following arguments are supported:
- Filter string
- A filter to retrieve the compute snapshot.
See API filter parameter documentation for reference.
If multiple compute snapshot match, either adjust the filter or specify
most_recent
. One ofname
orfilter
must be provided. If you want to use a regular expression, use theeq
(equal) orne
(not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. ExamplesourceDisk eq '.*(.*/data-disk$).*'
. More details for golang Snapshots list call filters here. - Most
Recent bool - If
filter
is provided, ensures the most recent snapshot is returned when multiple compute snapshot match. - Name string
- The name of the compute snapshot. One of
name
orfilter
must be provided. - Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Filter string
- A filter to retrieve the compute snapshot.
See API filter parameter documentation for reference.
If multiple compute snapshot match, either adjust the filter or specify
most_recent
. One ofname
orfilter
must be provided. If you want to use a regular expression, use theeq
(equal) orne
(not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. ExamplesourceDisk eq '.*(.*/data-disk$).*'
. More details for golang Snapshots list call filters here. - Most
Recent bool - If
filter
is provided, ensures the most recent snapshot is returned when multiple compute snapshot match. - Name string
- The name of the compute snapshot. One of
name
orfilter
must be provided. - Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- filter String
- A filter to retrieve the compute snapshot.
See API filter parameter documentation for reference.
If multiple compute snapshot match, either adjust the filter or specify
most_recent
. One ofname
orfilter
must be provided. If you want to use a regular expression, use theeq
(equal) orne
(not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. ExamplesourceDisk eq '.*(.*/data-disk$).*'
. More details for golang Snapshots list call filters here. - most
Recent Boolean - If
filter
is provided, ensures the most recent snapshot is returned when multiple compute snapshot match. - name String
- The name of the compute snapshot. One of
name
orfilter
must be provided. - project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- filter string
- A filter to retrieve the compute snapshot.
See API filter parameter documentation for reference.
If multiple compute snapshot match, either adjust the filter or specify
most_recent
. One ofname
orfilter
must be provided. If you want to use a regular expression, use theeq
(equal) orne
(not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. ExamplesourceDisk eq '.*(.*/data-disk$).*'
. More details for golang Snapshots list call filters here. - most
Recent boolean - If
filter
is provided, ensures the most recent snapshot is returned when multiple compute snapshot match. - name string
- The name of the compute snapshot. One of
name
orfilter
must be provided. - project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- filter str
- A filter to retrieve the compute snapshot.
See API filter parameter documentation for reference.
If multiple compute snapshot match, either adjust the filter or specify
most_recent
. One ofname
orfilter
must be provided. If you want to use a regular expression, use theeq
(equal) orne
(not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. ExamplesourceDisk eq '.*(.*/data-disk$).*'
. More details for golang Snapshots list call filters here. - most_
recent bool - If
filter
is provided, ensures the most recent snapshot is returned when multiple compute snapshot match. - name str
- The name of the compute snapshot. One of
name
orfilter
must be provided. - project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- filter String
- A filter to retrieve the compute snapshot.
See API filter parameter documentation for reference.
If multiple compute snapshot match, either adjust the filter or specify
most_recent
. One ofname
orfilter
must be provided. If you want to use a regular expression, use theeq
(equal) orne
(not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. ExamplesourceDisk eq '.*(.*/data-disk$).*'
. More details for golang Snapshots list call filters here. - most
Recent Boolean - If
filter
is provided, ensures the most recent snapshot is returned when multiple compute snapshot match. - name String
- The name of the compute snapshot. One of
name
orfilter
must be provided. - project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
getSnapshot Result
The following output properties are available:
- Chain
Name string - Creation
Timestamp string - Description string
- Disk
Size intGb - Effective
Labels Dictionary<string, string> - Id string
- The provider-assigned unique ID for this managed resource.
- Label
Fingerprint string - Labels Dictionary<string, string>
- Licenses List<string>
- Pulumi
Labels Dictionary<string, string> - Self
Link string - Snapshot
Encryption List<GetKeys Snapshot Snapshot Encryption Key> - Snapshot
Id int - Source
Disk string - Source
Disk List<GetEncryption Keys Snapshot Source Disk Encryption Key> - Storage
Bytes int - Storage
Locations List<string> - Zone string
- Filter string
- Most
Recent bool - Name string
- Project string
- Chain
Name string - Creation
Timestamp string - Description string
- Disk
Size intGb - Effective
Labels map[string]string - Id string
- The provider-assigned unique ID for this managed resource.
- Label
Fingerprint string - Labels map[string]string
- Licenses []string
- Pulumi
Labels map[string]string - Self
Link string - Snapshot
Encryption []GetKeys Snapshot Snapshot Encryption Key - Snapshot
Id int - Source
Disk string - Source
Disk []GetEncryption Keys Snapshot Source Disk Encryption Key - Storage
Bytes int - Storage
Locations []string - Zone string
- Filter string
- Most
Recent bool - Name string
- Project string
- chain
Name String - creation
Timestamp String - description String
- disk
Size IntegerGb - effective
Labels Map<String,String> - id String
- The provider-assigned unique ID for this managed resource.
- label
Fingerprint String - labels Map<String,String>
- licenses List<String>
- pulumi
Labels Map<String,String> - self
Link String - snapshot
Encryption List<GetKeys Snapshot Snapshot Encryption Key> - snapshot
Id Integer - source
Disk String - source
Disk List<GetEncryption Keys Snapshot Source Disk Encryption Key> - storage
Bytes Integer - storage
Locations List<String> - zone String
- filter String
- most
Recent Boolean - name String
- project String
- chain
Name string - creation
Timestamp string - description string
- disk
Size numberGb - effective
Labels {[key: string]: string} - id string
- The provider-assigned unique ID for this managed resource.
- label
Fingerprint string - labels {[key: string]: string}
- licenses string[]
- pulumi
Labels {[key: string]: string} - self
Link string - snapshot
Encryption GetKeys Snapshot Snapshot Encryption Key[] - snapshot
Id number - source
Disk string - source
Disk GetEncryption Keys Snapshot Source Disk Encryption Key[] - storage
Bytes number - storage
Locations string[] - zone string
- filter string
- most
Recent boolean - name string
- project string
- chain_
name str - creation_
timestamp str - description str
- disk_
size_ intgb - effective_
labels Mapping[str, str] - id str
- The provider-assigned unique ID for this managed resource.
- label_
fingerprint str - labels Mapping[str, str]
- licenses Sequence[str]
- pulumi_
labels Mapping[str, str] - self_
link str - snapshot_
encryption_ Sequence[Getkeys Snapshot Snapshot Encryption Key] - snapshot_
id int - source_
disk str - source_
disk_ Sequence[Getencryption_ keys Snapshot Source Disk Encryption Key] - storage_
bytes int - storage_
locations Sequence[str] - zone str
- filter str
- most_
recent bool - name str
- project str
- chain
Name String - creation
Timestamp String - description String
- disk
Size NumberGb - effective
Labels Map<String> - id String
- The provider-assigned unique ID for this managed resource.
- label
Fingerprint String - labels Map<String>
- licenses List<String>
- pulumi
Labels Map<String> - self
Link String - snapshot
Encryption List<Property Map>Keys - snapshot
Id Number - source
Disk String - source
Disk List<Property Map>Encryption Keys - storage
Bytes Number - storage
Locations List<String> - zone String
- filter String
- most
Recent Boolean - name String
- project String
Supporting Types
GetSnapshotSnapshotEncryptionKey
- Kms
Key stringSelf Link - The name of the encryption key that is stored in Google Cloud KMS.
- Kms
Key stringService Account - The service account used for the encryption request for the given KMS key. If absent, the Compute Engine Service Agent service account is used.
- Raw
Key string - Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource.
- Sha256 string
- The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.
- Kms
Key stringSelf Link - The name of the encryption key that is stored in Google Cloud KMS.
- Kms
Key stringService Account - The service account used for the encryption request for the given KMS key. If absent, the Compute Engine Service Agent service account is used.
- Raw
Key string - Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource.
- Sha256 string
- The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.
- kms
Key StringSelf Link - The name of the encryption key that is stored in Google Cloud KMS.
- kms
Key StringService Account - The service account used for the encryption request for the given KMS key. If absent, the Compute Engine Service Agent service account is used.
- raw
Key String - Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource.
- sha256 String
- The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.
- kms
Key stringSelf Link - The name of the encryption key that is stored in Google Cloud KMS.
- kms
Key stringService Account - The service account used for the encryption request for the given KMS key. If absent, the Compute Engine Service Agent service account is used.
- raw
Key string - Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource.
- sha256 string
- The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.
- kms_
key_ strself_ link - The name of the encryption key that is stored in Google Cloud KMS.
- kms_
key_ strservice_ account - The service account used for the encryption request for the given KMS key. If absent, the Compute Engine Service Agent service account is used.
- raw_
key str - Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource.
- sha256 str
- The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.
- kms
Key StringSelf Link - The name of the encryption key that is stored in Google Cloud KMS.
- kms
Key StringService Account - The service account used for the encryption request for the given KMS key. If absent, the Compute Engine Service Agent service account is used.
- raw
Key String - Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource.
- sha256 String
- The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.
GetSnapshotSourceDiskEncryptionKey
- Kms
Key stringService Account - The service account used for the encryption request for the given KMS key. If absent, the Compute Engine Service Agent service account is used.
- Raw
Key string - Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource.
- Kms
Key stringService Account - The service account used for the encryption request for the given KMS key. If absent, the Compute Engine Service Agent service account is used.
- Raw
Key string - Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource.
- kms
Key StringService Account - The service account used for the encryption request for the given KMS key. If absent, the Compute Engine Service Agent service account is used.
- raw
Key String - Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource.
- kms
Key stringService Account - The service account used for the encryption request for the given KMS key. If absent, the Compute Engine Service Agent service account is used.
- raw
Key string - Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource.
- kms_
key_ strservice_ account - The service account used for the encryption request for the given KMS key. If absent, the Compute Engine Service Agent service account is used.
- raw_
key str - Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource.
- kms
Key StringService Account - The service account used for the encryption request for the given KMS key. If absent, the Compute Engine Service Agent service account is used.
- raw
Key String - Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource.
Package Details
- Repository
- Google Cloud (GCP) Classic pulumi/pulumi-gcp
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
google-beta
Terraform Provider.