@pulumi/gcp
Version:
A Pulumi package for creating and managing Google Cloud Platform resources.
107 lines (106 loc) • 4.14 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
* Get information about Google Compute Images. Check that your service account has the `compute.imageUser` role if you want to share [custom images](https://cloud.google.com/compute/docs/images/sharing-images-across-projects) from another project. If you want to use [public images][pubimg], do not forget to specify the dedicated project. For more information see
* [the official documentation](https://cloud.google.com/compute/docs/images) and its [API](https://cloud.google.com/compute/docs/reference/latest/images).
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as gcp from "@pulumi/gcp";
*
* const debian = gcp.compute.getImages({
* filter: "name eq my-image.*",
* });
* const _default = new gcp.compute.Instance("default", {
* name: "test",
* machineType: "f1-micro",
* zone: "us-central1-a",
* bootDisk: {
* initializeParams: {
* image: debian.then(debian => debian.images?.[0]?.selfLink),
* },
* },
* networkInterfaces: [{
* network: defaultGoogleComputeNetwork.name,
* }],
* });
* ```
*/
export declare function getImages(args?: GetImagesArgs, opts?: pulumi.InvokeOptions): Promise<GetImagesResult>;
/**
* A collection of arguments for invoking getImages.
*/
export interface GetImagesArgs {
/**
* Filter for the images to be returned by the data source. Syntax can be found [here](https://cloud.google.com/compute/docs/reference/rest/v1/images/list) in the filter section.
*
* - - -
*/
filter?: string;
/**
* The project in which the resource belongs. If it is not
* provided, the provider project is used. If you are using a
* [public base image][pubimg], be sure to specify the correct Image Project.
*/
project?: string;
}
/**
* A collection of values returned by getImages.
*/
export interface GetImagesResult {
readonly filter?: string;
/**
* The provider-assigned unique ID for this managed resource.
*/
readonly id: string;
readonly images: outputs.compute.GetImagesImage[];
readonly project?: string;
}
/**
* Get information about Google Compute Images. Check that your service account has the `compute.imageUser` role if you want to share [custom images](https://cloud.google.com/compute/docs/images/sharing-images-across-projects) from another project. If you want to use [public images][pubimg], do not forget to specify the dedicated project. For more information see
* [the official documentation](https://cloud.google.com/compute/docs/images) and its [API](https://cloud.google.com/compute/docs/reference/latest/images).
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as gcp from "@pulumi/gcp";
*
* const debian = gcp.compute.getImages({
* filter: "name eq my-image.*",
* });
* const _default = new gcp.compute.Instance("default", {
* name: "test",
* machineType: "f1-micro",
* zone: "us-central1-a",
* bootDisk: {
* initializeParams: {
* image: debian.then(debian => debian.images?.[0]?.selfLink),
* },
* },
* networkInterfaces: [{
* network: defaultGoogleComputeNetwork.name,
* }],
* });
* ```
*/
export declare function getImagesOutput(args?: GetImagesOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetImagesResult>;
/**
* A collection of arguments for invoking getImages.
*/
export interface GetImagesOutputArgs {
/**
* Filter for the images to be returned by the data source. Syntax can be found [here](https://cloud.google.com/compute/docs/reference/rest/v1/images/list) in the filter section.
*
* - - -
*/
filter?: pulumi.Input<string>;
/**
* The project in which the resource belongs. If it is not
* provided, the provider project is used. If you are using a
* [public base image][pubimg], be sure to specify the correct Image Project.
*/
project?: pulumi.Input<string>;
}