UNPKG

@aws-cdk/aws-eks-v2-alpha

Version:

The CDK Construct Library for AWS::EKS

57 lines 7.1 kB
"use strict"; var _a; Object.defineProperty(exports, "__esModule", { value: true }); exports.KubernetesObjectValue = void 0; const jsiiDeprecationWarnings = require("../.warnings.jsii.js"); const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const constructs_1 = require("constructs"); const kubectl_provider_1 = require("./kubectl-provider"); const core_1 = require("aws-cdk-lib/core"); /** * Represents a value of a specific object deployed in the cluster. * Use this to fetch any information available by the `kubectl get` command. */ class KubernetesObjectValue extends constructs_1.Construct { constructor(scope, id, props) { super(scope, id); try { jsiiDeprecationWarnings._aws_cdk_aws_eks_v2_alpha_KubernetesObjectValueProps(props); } catch (error) { if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") { Error.captureStackTrace(error, KubernetesObjectValue); } throw error; } const provider = kubectl_provider_1.KubectlProvider.getKubectlProvider(this, props.cluster); if (!provider) { throw new Error('Kubectl Provider is not defined in this cluster. Define it when creating the cluster'); } this._resource = new core_1.CustomResource(this, 'Resource', { resourceType: KubernetesObjectValue.RESOURCE_TYPE, serviceToken: provider.serviceToken, properties: { ClusterName: props.cluster.clusterName, ObjectType: props.objectType, ObjectName: props.objectName, ObjectNamespace: props.objectNamespace ?? 'default', JsonPath: props.jsonPath, TimeoutSeconds: (props?.timeout ?? core_1.Duration.minutes(5)).toSeconds(), }, }); } /** * The value as a string token. */ get value() { return core_1.Token.asString(this._resource.getAtt('Value')); } } exports.KubernetesObjectValue = KubernetesObjectValue; _a = JSII_RTTI_SYMBOL_1; KubernetesObjectValue[_a] = { fqn: "@aws-cdk/aws-eks-v2-alpha.KubernetesObjectValue", version: "2.208.0-alpha.0" }; /** * The CloudFormation resource type. */ KubernetesObjectValue.RESOURCE_TYPE = 'Custom::AWSCDK-EKS-KubernetesObjectValue'; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiazhzLW9iamVjdC12YWx1ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIms4cy1vYmplY3QtdmFsdWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsMkNBQXVDO0FBRXZDLHlEQUFxRDtBQUNyRCwyQ0FBbUU7QUE4Q25FOzs7R0FHRztBQUNILE1BQWEscUJBQXNCLFNBQVEsc0JBQVM7SUFRbEQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFpQztRQUN6RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDOzs7Ozs7K0NBVFIscUJBQXFCOzs7O1FBVzlCLE1BQU0sUUFBUSxHQUFHLGtDQUFlLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV6RSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDZCxNQUFNLElBQUksS0FBSyxDQUFDLHNGQUFzRixDQUFDLENBQUM7UUFDMUcsQ0FBQztRQUVELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxxQkFBYyxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDcEQsWUFBWSxFQUFFLHFCQUFxQixDQUFDLGFBQWE7WUFDakQsWUFBWSxFQUFFLFFBQVEsQ0FBQyxZQUFZO1lBQ25DLFVBQVUsRUFBRTtnQkFDVixXQUFXLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxXQUFXO2dCQUN0QyxVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVU7Z0JBQzVCLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVTtnQkFDNUIsZUFBZSxFQUFFLEtBQUssQ0FBQyxlQUFlLElBQUksU0FBUztnQkFDbkQsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRO2dCQUN4QixjQUFjLEVBQUUsQ0FBQyxLQUFLLEVBQUUsT0FBTyxJQUFJLGVBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUU7YUFDcEU7U0FDRixDQUFDLENBQUM7S0FDSjtJQUVEOztPQUVHO0lBQ0gsSUFBVyxLQUFLO1FBQ2QsT0FBTyxZQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7S0FDdkQ7O0FBcENILHNEQXFDQzs7O0FBcENDOztHQUVHO0FBQ29CLG1DQUFhLEdBQUcsMENBQTBDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IElDbHVzdGVyIH0gZnJvbSAnLi9jbHVzdGVyJztcbmltcG9ydCB7IEt1YmVjdGxQcm92aWRlciB9IGZyb20gJy4va3ViZWN0bC1wcm92aWRlcic7XG5pbXBvcnQgeyBDdXN0b21SZXNvdXJjZSwgVG9rZW4sIER1cmF0aW9uIH0gZnJvbSAnYXdzLWNkay1saWIvY29yZSc7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgS3ViZXJuZXRlc09iamVjdFZhbHVlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEt1YmVybmV0ZXNPYmplY3RWYWx1ZVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBFS1MgY2x1c3RlciB0byBmZXRjaCBhdHRyaWJ1dGVzIGZyb20uXG4gICAqXG4gICAqIFtkaXNhYmxlLWF3c2xpbnQ6cmVmLXZpYS1pbnRlcmZhY2VdXG4gICAqL1xuICByZWFkb25seSBjbHVzdGVyOiBJQ2x1c3RlcjtcblxuICAvKipcbiAgICogVGhlIG9iamVjdCB0eXBlIHRvIHF1ZXJ5LiAoZS5nICdzZXJ2aWNlJywgJ3BvZCcuLi4pXG4gICAqL1xuICByZWFkb25seSBvYmplY3RUeXBlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBvYmplY3QgdG8gcXVlcnkuXG4gICAqL1xuICByZWFkb25seSBvYmplY3ROYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lc3BhY2UgdGhlIG9iamVjdCBiZWxvbmdzIHRvLlxuICAgKlxuICAgKiBAZGVmYXVsdCAnZGVmYXVsdCdcbiAgICovXG4gIHJlYWRvbmx5IG9iamVjdE5hbWVzcGFjZT86IHN0cmluZztcblxuICAvKipcbiAgICogSlNPTlBhdGggdG8gdGhlIHNwZWNpZmljIHZhbHVlLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL3JlZmVyZW5jZS9rdWJlY3RsL2pzb25wYXRoL1xuICAgKi9cbiAgcmVhZG9ubHkganNvblBhdGg6IHN0cmluZztcblxuICAvKipcbiAgICogVGltZW91dCBmb3Igd2FpdGluZyBvbiBhIHZhbHVlLlxuICAgKlxuICAgKiBAZGVmYXVsdCBEdXJhdGlvbi5taW51dGVzKDUpXG4gICAqL1xuICByZWFkb25seSB0aW1lb3V0PzogRHVyYXRpb247XG5cbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgdmFsdWUgb2YgYSBzcGVjaWZpYyBvYmplY3QgZGVwbG95ZWQgaW4gdGhlIGNsdXN0ZXIuXG4gKiBVc2UgdGhpcyB0byBmZXRjaCBhbnkgaW5mb3JtYXRpb24gYXZhaWxhYmxlIGJ5IHRoZSBga3ViZWN0bCBnZXRgIGNvbW1hbmQuXG4gKi9cbmV4cG9ydCBjbGFzcyBLdWJlcm5ldGVzT2JqZWN0VmFsdWUgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICAvKipcbiAgICogVGhlIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHR5cGUuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFJFU09VUkNFX1RZUEUgPSAnQ3VzdG9tOjpBV1NDREstRUtTLUt1YmVybmV0ZXNPYmplY3RWYWx1ZSc7XG5cbiAgcHJpdmF0ZSBfcmVzb3VyY2U6IEN1c3RvbVJlc291cmNlO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBLdWJlcm5ldGVzT2JqZWN0VmFsdWVQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBjb25zdCBwcm92aWRlciA9IEt1YmVjdGxQcm92aWRlci5nZXRLdWJlY3RsUHJvdmlkZXIodGhpcywgcHJvcHMuY2x1c3Rlcik7XG5cbiAgICBpZiAoIXByb3ZpZGVyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0t1YmVjdGwgUHJvdmlkZXIgaXMgbm90IGRlZmluZWQgaW4gdGhpcyBjbHVzdGVyLiBEZWZpbmUgaXQgd2hlbiBjcmVhdGluZyB0aGUgY2x1c3RlcicpO1xuICAgIH1cblxuICAgIHRoaXMuX3Jlc291cmNlID0gbmV3IEN1c3RvbVJlc291cmNlKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIHJlc291cmNlVHlwZTogS3ViZXJuZXRlc09iamVjdFZhbHVlLlJFU09VUkNFX1RZUEUsXG4gICAgICBzZXJ2aWNlVG9rZW46IHByb3ZpZGVyLnNlcnZpY2VUb2tlbixcbiAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgQ2x1c3Rlck5hbWU6IHByb3BzLmNsdXN0ZXIuY2x1c3Rlck5hbWUsXG4gICAgICAgIE9iamVjdFR5cGU6IHByb3BzLm9iamVjdFR5cGUsXG4gICAgICAgIE9iamVjdE5hbWU6IHByb3BzLm9iamVjdE5hbWUsXG4gICAgICAgIE9iamVjdE5hbWVzcGFjZTogcHJvcHMub2JqZWN0TmFtZXNwYWNlID8/ICdkZWZhdWx0JyxcbiAgICAgICAgSnNvblBhdGg6IHByb3BzLmpzb25QYXRoLFxuICAgICAgICBUaW1lb3V0U2Vjb25kczogKHByb3BzPy50aW1lb3V0ID8/IER1cmF0aW9uLm1pbnV0ZXMoNSkpLnRvU2Vjb25kcygpLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgdmFsdWUgYXMgYSBzdHJpbmcgdG9rZW4uXG4gICAqL1xuICBwdWJsaWMgZ2V0IHZhbHVlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFRva2VuLmFzU3RyaW5nKHRoaXMuX3Jlc291cmNlLmdldEF0dCgnVmFsdWUnKSk7XG4gIH1cbn1cbiJdfQ==