@pulumi/gcp
Version:
A Pulumi package for creating and managing Google Cloud Platform resources.
136 lines • 4.57 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
* AddressGroups are used to group IP addresses together for use in firewall policies. This data source allows you to list address groups in a project or organization and location.
*
* To get more information about Address Groups, see:
*
* * [API documentation](https://cloud.google.com/compute/docs/reference/rest/beta/networkFirewallPolicies)
* * How-to Guides
* * [Official Documentation](https://cloud.google.com/firewall/docs/about-address-groups)
*
* ## Example Usage
*
* ### Project Level
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as gcp from "@pulumi/gcp";
*
* const all = gcp.networksecurity.getAddressGroups({
* location: "us-central1",
* project: "my-project-id",
* });
* ```
*
* ### Organization Level
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as gcp from "@pulumi/gcp";
*
* const orgAll = gcp.networksecurity.getAddressGroups({
* location: "us-central1",
* parent: "organizations/123456789",
* });
* ```
*/
export declare function getAddressGroups(args: GetAddressGroupsArgs, opts?: pulumi.InvokeOptions): Promise<GetAddressGroupsResult>;
/**
* A collection of arguments for invoking getAddressGroups.
*/
export interface GetAddressGroupsArgs {
/**
* The location of the Address Group.
*
* - - -
*/
location: string;
/**
* The parent of the Address Group. Use `organizations/{organization_id}` for organization-level address groups or `projects/{project_id}` for project-level address groups. Conflicts with `project`.
*
* > **Note:** Exactly one of `project` or `parent` should be specified. If neither is set, the project is inferred from the provider configuration.
*/
parent?: string;
/**
* The ID of the project. Conflicts with `parent`.
*/
project?: string;
}
/**
* A collection of values returned by getAddressGroups.
*/
export interface GetAddressGroupsResult {
/**
* A list of Address Groups in the selected project or organization and location. Structure is defined below.
*/
readonly addressGroups: outputs.networksecurity.GetAddressGroupsAddressGroup[];
/**
* The provider-assigned unique ID for this managed resource.
*/
readonly id: string;
readonly location: string;
readonly parent?: string;
/**
* The ID of the project in which the resource belongs.
*/
readonly project: string;
}
/**
* AddressGroups are used to group IP addresses together for use in firewall policies. This data source allows you to list address groups in a project or organization and location.
*
* To get more information about Address Groups, see:
*
* * [API documentation](https://cloud.google.com/compute/docs/reference/rest/beta/networkFirewallPolicies)
* * How-to Guides
* * [Official Documentation](https://cloud.google.com/firewall/docs/about-address-groups)
*
* ## Example Usage
*
* ### Project Level
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as gcp from "@pulumi/gcp";
*
* const all = gcp.networksecurity.getAddressGroups({
* location: "us-central1",
* project: "my-project-id",
* });
* ```
*
* ### Organization Level
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as gcp from "@pulumi/gcp";
*
* const orgAll = gcp.networksecurity.getAddressGroups({
* location: "us-central1",
* parent: "organizations/123456789",
* });
* ```
*/
export declare function getAddressGroupsOutput(args: GetAddressGroupsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetAddressGroupsResult>;
/**
* A collection of arguments for invoking getAddressGroups.
*/
export interface GetAddressGroupsOutputArgs {
/**
* The location of the Address Group.
*
* - - -
*/
location: pulumi.Input<string>;
/**
* The parent of the Address Group. Use `organizations/{organization_id}` for organization-level address groups or `projects/{project_id}` for project-level address groups. Conflicts with `project`.
*
* > **Note:** Exactly one of `project` or `parent` should be specified. If neither is set, the project is inferred from the provider configuration.
*/
parent?: pulumi.Input<string | undefined>;
/**
* The ID of the project. Conflicts with `parent`.
*/
project?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getAddressGroups.d.ts.map