@lbrlabs/pulumi-eks
Version:
This repo provides a [multi-language](https://www.pulumi.com/blog/pulumiup-pulumi-packages-multi-language-components/) component that creates a "batteries included" cluster ready for you to attach your EKS nodes to.
95 lines • 5.79 kB
JavaScript
;
// *** WARNING: this file was generated by Pulumi SDK Generator. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
Object.defineProperty(exports, "__esModule", { value: true });
exports.Cluster = void 0;
const pulumi = require("@pulumi/pulumi");
const inputs = require("./types/input");
const utilities = require("./utilities");
class Cluster extends pulumi.ComponentResource {
/**
* Returns true if the given object is an instance of Cluster. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === Cluster.__pulumiType;
}
/**
* Create a Cluster resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name, args, opts) {
let resourceInputs = {};
opts = opts || {};
if (!opts.id) {
if (args?.clusterSubnetIds === undefined && !opts.urn) {
throw new Error("Missing required property 'clusterSubnetIds'");
}
if (args?.systemNodeSubnetIds === undefined && !opts.urn) {
throw new Error("Missing required property 'systemNodeSubnetIds'");
}
resourceInputs["adminAccessPrincipal"] = args?.adminAccessPrincipal;
resourceInputs["certManagerVersion"] = args?.certManagerVersion;
resourceInputs["certificateArn"] = args?.certificateArn;
resourceInputs["clusterEndpointPrivateAccess"] = (args?.clusterEndpointPrivateAccess) ?? false;
resourceInputs["clusterEndpointPublicAccess"] = (args?.clusterEndpointPublicAccess) ?? true;
resourceInputs["clusterSubnetIds"] = args?.clusterSubnetIds;
resourceInputs["clusterVersion"] = args?.clusterVersion;
resourceInputs["eksIamAuthControllerVersion"] = args?.eksIamAuthControllerVersion;
resourceInputs["enableCertManager"] = (args?.enableCertManager) ?? true;
resourceInputs["enableCloudWatchAgent"] = (args?.enableCloudWatchAgent) ?? false;
resourceInputs["enableExternalDns"] = (args?.enableExternalDns) ?? true;
resourceInputs["enableExternalIngress"] = (args?.enableExternalIngress) ?? true;
resourceInputs["enableInternalIngress"] = (args?.enableInternalIngress) ?? true;
resourceInputs["enableKarpenter"] = (args?.enableKarpenter) ?? true;
resourceInputs["enableOtel"] = (args?.enableOtel) ?? false;
resourceInputs["enabledClusterLogTypes"] = args?.enabledClusterLogTypes;
resourceInputs["externalDNSVersion"] = args?.externalDNSVersion;
resourceInputs["ingressConfig"] = args ? (args.ingressConfig ? pulumi.output(args.ingressConfig).apply(inputs.ingressConfigArgsProvideDefaults) : undefined) : undefined;
resourceInputs["karpenterVersion"] = (args?.karpenterVersion) ?? "0.36.2";
resourceInputs["lbType"] = (args?.lbType) ?? "nlb";
resourceInputs["letsEncryptEmail"] = args?.letsEncryptEmail;
resourceInputs["nginxIngressConfig"] = args ? (args.nginxIngressConfig ? pulumi.output(args.nginxIngressConfig).apply(inputs.nginxIngressConfigArgsProvideDefaults) : undefined) : undefined;
resourceInputs["nginxIngressRegistry"] = (args?.nginxIngressRegistry) ?? "registry.k8s.io";
resourceInputs["nginxIngressTag"] = (args?.nginxIngressTag) ?? "v1.12.0";
resourceInputs["nginxIngressVersion"] = args?.nginxIngressVersion;
resourceInputs["systemNodeDesiredCount"] = args?.systemNodeDesiredCount;
resourceInputs["systemNodeInstanceTypes"] = args?.systemNodeInstanceTypes;
resourceInputs["systemNodeMaxCount"] = args?.systemNodeMaxCount;
resourceInputs["systemNodeMinCount"] = args?.systemNodeMinCount;
resourceInputs["systemNodeSubnetIds"] = args?.systemNodeSubnetIds;
resourceInputs["tags"] = args?.tags;
resourceInputs["vpcCniConfig"] = args?.vpcCniConfig;
resourceInputs["clusterName"] = undefined /*out*/;
resourceInputs["controlPlane"] = undefined /*out*/;
resourceInputs["karpenterNodeRole"] = undefined /*out*/;
resourceInputs["karpenterQueueName"] = undefined /*out*/;
resourceInputs["karpenterRole"] = undefined /*out*/;
resourceInputs["kubeconfig"] = undefined /*out*/;
resourceInputs["oidcProvider"] = undefined /*out*/;
resourceInputs["systemNodes"] = undefined /*out*/;
}
else {
resourceInputs["clusterName"] = undefined /*out*/;
resourceInputs["controlPlane"] = undefined /*out*/;
resourceInputs["karpenterNodeRole"] = undefined /*out*/;
resourceInputs["karpenterQueueName"] = undefined /*out*/;
resourceInputs["karpenterRole"] = undefined /*out*/;
resourceInputs["kubeconfig"] = undefined /*out*/;
resourceInputs["oidcProvider"] = undefined /*out*/;
resourceInputs["systemNodes"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(Cluster.__pulumiType, name, resourceInputs, opts, true /*remote*/);
}
}
exports.Cluster = Cluster;
/** @internal */
Cluster.__pulumiType = 'lbrlabs-eks:index:Cluster';
//# sourceMappingURL=cluster.js.map