@pulumi/gcp
Version:
A Pulumi package for creating and managing Google Cloud Platform resources.
227 lines • 10.1 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
* Get info about a GKE cluster from its name and location.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as gcp from "@pulumi/gcp";
*
* const myCluster = gcp.container.getCluster({
* name: "my-cluster",
* location: "us-east1-a",
* });
* export const endpoint = myCluster.then(myCluster => myCluster.endpoint);
* export const instanceGroupUrls = myCluster.then(myCluster => myCluster.nodePools?.[0]?.instanceGroupUrls);
* export const nodeConfig = myCluster.then(myCluster => myCluster.nodeConfigs);
* export const nodePools = myCluster.then(myCluster => myCluster.nodePools);
* ```
*
* ### Autopilot
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as gcp from "@pulumi/gcp";
*
* const _default = new gcp.serviceaccount.Account("default", {
* accountId: "service-account-id",
* displayName: "Service Account",
* });
* const primary = new gcp.container.Cluster("primary", {
* name: "marcellus-wallace",
* location: "us-central1-a",
* enableAutopilot: true,
* });
* ```
*/
export declare function getCluster(args: GetClusterArgs, opts?: pulumi.InvokeOptions): Promise<GetClusterResult>;
/**
* A collection of arguments for invoking getCluster.
*/
export interface GetClusterArgs {
/**
* The location (zone or region) this cluster has been
* created in. One of `location`, `region`, `zone`, or a provider-level `zone` must
* be specified.
*/
location?: string;
/**
* The name of the cluster.
*/
name: string;
/**
* The project in which the resource belongs. If it
* is not provided, the provider project is used.
*/
project?: string;
}
/**
* A collection of values returned by getCluster.
*/
export interface GetClusterResult {
readonly addonsConfigs: outputs.container.GetClusterAddonsConfig[];
readonly allowNetAdmin: boolean;
readonly anonymousAuthenticationConfigs: outputs.container.GetClusterAnonymousAuthenticationConfig[];
readonly authenticatorGroupsConfigs: outputs.container.GetClusterAuthenticatorGroupsConfig[];
readonly autopilotClusterPolicyConfigs: outputs.container.GetClusterAutopilotClusterPolicyConfig[];
readonly autopilotPrivilegedAdmissions: string[];
readonly binaryAuthorizations: outputs.container.GetClusterBinaryAuthorization[];
readonly clusterAutoscalings: outputs.container.GetClusterClusterAutoscaling[];
readonly clusterIpv4Cidr: string;
readonly clusterTelemetries: outputs.container.GetClusterClusterTelemetry[];
readonly confidentialNodes: outputs.container.GetClusterConfidentialNode[];
readonly controlPlaneEndpointsConfigs: outputs.container.GetClusterControlPlaneEndpointsConfig[];
readonly costManagementConfigs: outputs.container.GetClusterCostManagementConfig[];
readonly databaseEncryptions: outputs.container.GetClusterDatabaseEncryption[];
readonly datapathProvider: string;
readonly defaultMaxPodsPerNode: number;
readonly defaultSnatStatuses: outputs.container.GetClusterDefaultSnatStatus[];
readonly deletionPolicy: string;
readonly deletionProtection: boolean;
readonly description: string;
readonly disableL4LbFirewallReconciliation: boolean;
readonly dnsConfigs: outputs.container.GetClusterDnsConfig[];
readonly effectiveLabels: {
[key: string]: string;
};
readonly enableAutopilot: boolean;
readonly enableCiliumClusterwideNetworkPolicy: boolean;
readonly enableFqdnNetworkPolicy: boolean;
readonly enableIntranodeVisibility: boolean;
readonly enableK8sBetaApis: outputs.container.GetClusterEnableK8sBetaApi[];
readonly enableKubernetesAlpha: boolean;
readonly enableL4IlbSubsetting: boolean;
readonly enableLegacyAbac: boolean;
readonly enableMultiNetworking: boolean;
readonly enableShieldedNodes: boolean;
readonly enableTpu: boolean;
readonly endpoint: string;
readonly enterpriseConfigs: outputs.container.GetClusterEnterpriseConfig[];
readonly fleets: outputs.container.GetClusterFleet[];
readonly gatewayApiConfigs: outputs.container.GetClusterGatewayApiConfig[];
readonly gkeAutoUpgradeConfigs: outputs.container.GetClusterGkeAutoUpgradeConfig[];
/**
* The provider-assigned unique ID for this managed resource.
*/
readonly id: string;
readonly identityServiceConfigs: outputs.container.GetClusterIdentityServiceConfig[];
readonly inTransitEncryptionConfig: string;
readonly initialNodeCount: number;
readonly ipAllocationPolicies: outputs.container.GetClusterIpAllocationPolicy[];
readonly labelFingerprint: string;
readonly location?: string;
readonly loggingConfigs: outputs.container.GetClusterLoggingConfig[];
readonly loggingService: string;
readonly maintenancePolicies: outputs.container.GetClusterMaintenancePolicy[];
readonly managedMachineLearningDiagnosticsConfigs: outputs.container.GetClusterManagedMachineLearningDiagnosticsConfig[];
readonly managedOpentelemetryConfigs: outputs.container.GetClusterManagedOpentelemetryConfig[];
readonly masterAuthorizedNetworksConfigs: outputs.container.GetClusterMasterAuthorizedNetworksConfig[];
readonly masterAuths: outputs.container.GetClusterMasterAuth[];
readonly masterVersion: string;
readonly meshCertificates: outputs.container.GetClusterMeshCertificate[];
readonly minMasterVersion: string;
readonly monitoringConfigs: outputs.container.GetClusterMonitoringConfig[];
readonly monitoringService: string;
readonly name: string;
readonly network: string;
readonly networkPerformanceConfigs: outputs.container.GetClusterNetworkPerformanceConfig[];
readonly networkPolicies: outputs.container.GetClusterNetworkPolicy[];
readonly networkingMode: string;
readonly nodeConfigs: outputs.container.GetClusterNodeConfig[];
readonly nodeLocations: string[];
readonly nodePoolAutoConfigs: outputs.container.GetClusterNodePoolAutoConfig[];
readonly nodePoolDefaults: outputs.container.GetClusterNodePoolDefault[];
readonly nodePools: outputs.container.GetClusterNodePool[];
readonly nodeVersion: string;
readonly notificationConfigs: outputs.container.GetClusterNotificationConfig[];
readonly operation: string;
readonly podAutoscalings: outputs.container.GetClusterPodAutoscaling[];
readonly podSecurityPolicyConfigs: outputs.container.GetClusterPodSecurityPolicyConfig[];
readonly privateClusterConfigs: outputs.container.GetClusterPrivateClusterConfig[];
readonly privateIpv6GoogleAccess: string;
readonly project?: string;
readonly protectConfigs: outputs.container.GetClusterProtectConfig[];
readonly pulumiLabels: {
[key: string]: string;
};
readonly rbacBindingConfigs: outputs.container.GetClusterRbacBindingConfig[];
readonly releaseChannels: outputs.container.GetClusterReleaseChannel[];
readonly removeDefaultNodePool: boolean;
readonly resourceLabels: {
[key: string]: string;
};
readonly resourceUsageExportConfigs: outputs.container.GetClusterResourceUsageExportConfig[];
readonly secretManagerConfigs: outputs.container.GetClusterSecretManagerConfig[];
readonly secretSyncConfigs: outputs.container.GetClusterSecretSyncConfig[];
readonly securityPostureConfigs: outputs.container.GetClusterSecurityPostureConfig[];
readonly selfLink: string;
readonly serviceExternalIpsConfigs: outputs.container.GetClusterServiceExternalIpsConfig[];
readonly servicesIpv4Cidr: string;
readonly subnetwork: string;
readonly tpuConfigs: outputs.container.GetClusterTpuConfig[];
readonly tpuIpv4CidrBlock: string;
readonly userManagedKeysConfigs: outputs.container.GetClusterUserManagedKeysConfig[];
readonly verticalPodAutoscalings: outputs.container.GetClusterVerticalPodAutoscaling[];
readonly workloadAltsConfigs: outputs.container.GetClusterWorkloadAltsConfig[];
readonly workloadIdentityConfigs: outputs.container.GetClusterWorkloadIdentityConfig[];
}
/**
* Get info about a GKE cluster from its name and location.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as gcp from "@pulumi/gcp";
*
* const myCluster = gcp.container.getCluster({
* name: "my-cluster",
* location: "us-east1-a",
* });
* export const endpoint = myCluster.then(myCluster => myCluster.endpoint);
* export const instanceGroupUrls = myCluster.then(myCluster => myCluster.nodePools?.[0]?.instanceGroupUrls);
* export const nodeConfig = myCluster.then(myCluster => myCluster.nodeConfigs);
* export const nodePools = myCluster.then(myCluster => myCluster.nodePools);
* ```
*
* ### Autopilot
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as gcp from "@pulumi/gcp";
*
* const _default = new gcp.serviceaccount.Account("default", {
* accountId: "service-account-id",
* displayName: "Service Account",
* });
* const primary = new gcp.container.Cluster("primary", {
* name: "marcellus-wallace",
* location: "us-central1-a",
* enableAutopilot: true,
* });
* ```
*/
export declare function getClusterOutput(args: GetClusterOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetClusterResult>;
/**
* A collection of arguments for invoking getCluster.
*/
export interface GetClusterOutputArgs {
/**
* The location (zone or region) this cluster has been
* created in. One of `location`, `region`, `zone`, or a provider-level `zone` must
* be specified.
*/
location?: pulumi.Input<string | undefined>;
/**
* The name of the cluster.
*/
name: pulumi.Input<string>;
/**
* The project in which the resource belongs. If it
* is not provided, the provider project is used.
*/
project?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getCluster.d.ts.map