UNPKG

@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.

69 lines 3.46 kB
"use strict"; // *** 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.AutoscaledNodeGroup = void 0; const pulumi = require("@pulumi/pulumi"); const inputs = require("./types/input"); const utilities = require("./utilities"); class AutoscaledNodeGroup extends pulumi.ComponentResource { /** * Returns true if the given object is an instance of AutoscaledNodeGroup. 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'] === AutoscaledNodeGroup.__pulumiType; } /** * Create a AutoscaledNodeGroup 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?.diskSize === undefined && !opts.urn) { throw new Error("Missing required property 'diskSize'"); } if (args?.nodeRole === undefined && !opts.urn) { throw new Error("Missing required property 'nodeRole'"); } if (args?.requirements === undefined && !opts.urn) { throw new Error("Missing required property 'requirements'"); } if (args?.securityGroupIds === undefined && !opts.urn) { throw new Error("Missing required property 'securityGroupIds'"); } if (args?.subnetIds === undefined && !opts.urn) { throw new Error("Missing required property 'subnetIds'"); } resourceInputs["amiFamily"] = args?.amiFamily; resourceInputs["amiId"] = args?.amiId; resourceInputs["annotations"] = args?.annotations; resourceInputs["diskSize"] = (args?.diskSize) ?? "20Gi"; resourceInputs["disruption"] = args ? (args.disruption ? pulumi.output(args.disruption).apply(inputs.disruptionConfigArgsProvideDefaults) : undefined) : undefined; resourceInputs["labels"] = args?.labels; resourceInputs["nodeClassApiVersion"] = (args?.nodeClassApiVersion) ?? "karpenter.k8s.aws/v1"; resourceInputs["nodePoolApiVersion"] = (args?.nodePoolApiVersion) ?? "karpenter.sh/v1"; resourceInputs["nodeRole"] = args?.nodeRole; resourceInputs["requirements"] = args?.requirements; resourceInputs["securityGroupIds"] = args?.securityGroupIds; resourceInputs["subnetIds"] = args?.subnetIds; resourceInputs["taints"] = args?.taints; } else { } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); super(AutoscaledNodeGroup.__pulumiType, name, resourceInputs, opts, true /*remote*/); } } exports.AutoscaledNodeGroup = AutoscaledNodeGroup; /** @internal */ AutoscaledNodeGroup.__pulumiType = 'lbrlabs-eks:index:AutoscaledNodeGroup'; //# sourceMappingURL=autoscaledNodeGroup.js.map