UNPKG

eks-for-prod

Version:

EKS Cluster + EFS Filesystem + Aurora Serverless Cluster

22 lines (21 loc) 1.24 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ClusterAutoscaler = void 0; const core_1 = require("@aws-cdk/core"); const service_account_with_policy_1 = require("./service-account-with-policy"); const cluster_autoscaler_policy_1 = require("./service-account-policies/cluster-autoscaler-policy"); const utils_1 = require("./utils"); class ClusterAutoscaler extends core_1.Construct { constructor(scope, id, props) { super(scope, id); const serviceAccount = new service_account_with_policy_1.ServiceAccountWithPolicy(this, 'ClusterAutoScalerServiceAccount', { cluster: props.cluster, jsonPolicy: cluster_autoscaler_policy_1.clusterAutoscalerPolicy, serviceAccountName: 'cluster-autoscaler' }); core_1.Tags.of(serviceAccount).add('k8s-addon', 'cluster-autoscaler.addons.k8s.io'); core_1.Tags.of(serviceAccount).add('k8s-app', 'cluster-autoscaler'); utils_1.Utils.applyYamlManifest(props.cluster, 'cluster-autoscaler-autodiscover', manifestContent => manifestContent.replace('<YOUR CLUSTER NAME>', props.cluster.clusterName)).node.addDependency(serviceAccount); } } exports.ClusterAutoscaler = ClusterAutoscaler;