projen
Version:
CDK for software projects
102 lines • 12.5 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.ConstructLibraryCdk8s = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const semver = __importStar(require("semver"));
const auto_discover_1 = require("./auto-discover");
const cdk_1 = require("../cdk");
/**
* CDK8s construct library project
*
* A multi-language (jsii) construct library which vends constructs designed to
* use within the CDK for Kubernetes (CDK8s), with a friendly workflow and
* automatic publishing to the construct catalog.
*
* @pjid cdk8s-construct
*/
class ConstructLibraryCdk8s extends cdk_1.ConstructLibrary {
static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk8s.ConstructLibraryCdk8s", version: "0.103.12" };
/**
* The CDK8s version this app is using.
*/
cdk8sVersion;
/**
* The constructs version this app is using.
*/
constructsVersion;
constructor(options) {
super(options);
if (!options.cdk8sVersion) {
throw new Error("Required field cdk8sVersion is not specified.");
}
const cdk8sVersion = semver.parse(options.cdk8sVersion);
if (!cdk8sVersion) {
throw new Error(`"cdk8sVersion" cannot be parsed as a semver version: ${options.cdk8sVersion}`);
}
this.cdk8sVersion = options.cdk8sVersionPinning
? options.cdk8sVersion
: `^${options.cdk8sVersion}`;
const defaultConstructsVersion = cdk8sVersion.major === 1 ? "3.3.196" : "10.0.0";
const resolvedConstructsVersion = options.constructsVersion ?? defaultConstructsVersion;
const resolvedMajorConstructVersion = semver.parse(resolvedConstructsVersion)?.major;
if (!resolvedMajorConstructVersion) {
throw new Error(`"constructsVersion" cannot be parsed as a semver version: ${options.constructsVersion}`);
}
switch (cdk8sVersion.major) {
case 1:
if (resolvedMajorConstructVersion !== 3) {
throw new Error("cdk8s 1.x requires constructs 3.x");
}
break;
case 2:
if (resolvedMajorConstructVersion !== 10) {
throw new Error("cdk8s 2.x requires constructs 10.x");
}
break;
}
this.constructsVersion = options.constructsVersionPinning
? resolvedConstructsVersion
: `^${resolvedConstructsVersion}`;
this.addPeerDeps(`constructs@${this.constructsVersion}`, `cdk8s@${this.cdk8sVersion}`);
new auto_discover_1.AutoDiscover(this, {
testdir: this.testdir,
tsconfigPath: this.tsconfigDev.fileName,
integrationTestAutoDiscover: options.integrationTestAutoDiscover ?? true,
});
}
}
exports.ConstructLibraryCdk8s = ConstructLibraryCdk8s;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrOHMtY29uc3RydWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NkazhzL2NkazhzLWNvbnN0cnVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0NBQWlDO0FBQ2pDLG1EQUErQztBQUUvQyxnQ0FBMEM7QUEyRDFDOzs7Ozs7OztHQVFHO0FBQ0gsTUFBYSxxQkFBc0IsU0FBUSxzQkFBZ0I7O0lBQ3pEOztPQUVHO0lBQ2EsWUFBWSxDQUFTO0lBRXJDOztPQUVHO0lBQ2EsaUJBQWlCLENBQVM7SUFFMUMsWUFBWSxPQUFxQztRQUMvQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFZixJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQzFCLE1BQU0sSUFBSSxLQUFLLENBQUMsK0NBQStDLENBQUMsQ0FBQztRQUNuRSxDQUFDO1FBRUQsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ2xCLE1BQU0sSUFBSSxLQUFLLENBQ2Isd0RBQXdELE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FDL0UsQ0FBQztRQUNKLENBQUM7UUFFRCxJQUFJLENBQUMsWUFBWSxHQUFHLE9BQU8sQ0FBQyxtQkFBbUI7WUFDN0MsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxZQUFZO1lBQ3RCLENBQUMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUUvQixNQUFNLHdCQUF3QixHQUM1QixZQUFZLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7UUFDbEQsTUFBTSx5QkFBeUIsR0FDN0IsT0FBTyxDQUFDLGlCQUFpQixJQUFJLHdCQUF3QixDQUFDO1FBQ3hELE1BQU0sNkJBQTZCLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FDaEQseUJBQXlCLENBQzFCLEVBQUUsS0FBSyxDQUFDO1FBRVQsSUFBSSxDQUFDLDZCQUE2QixFQUFFLENBQUM7WUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FDYiw2REFBNkQsT0FBTyxDQUFDLGlCQUFpQixFQUFFLENBQ3pGLENBQUM7UUFDSixDQUFDO1FBRUQsUUFBUSxZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDM0IsS0FBSyxDQUFDO2dCQUNKLElBQUksNkJBQTZCLEtBQUssQ0FBQyxFQUFFLENBQUM7b0JBQ3hDLE1BQU0sSUFBSSxLQUFLLENBQUMsbUNBQW1DLENBQUMsQ0FBQztnQkFDdkQsQ0FBQztnQkFDRCxNQUFNO1lBQ1IsS0FBSyxDQUFDO2dCQUNKLElBQUksNkJBQTZCLEtBQUssRUFBRSxFQUFFLENBQUM7b0JBQ3pDLE1BQU0sSUFBSSxLQUFLLENBQUMsb0NBQW9DLENBQUMsQ0FBQztnQkFDeEQsQ0FBQztnQkFDRCxNQUFNO1FBQ1YsQ0FBQztRQUVELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxPQUFPLENBQUMsd0JBQXdCO1lBQ3ZELENBQUMsQ0FBQyx5QkFBeUI7WUFDM0IsQ0FBQyxDQUFDLElBQUkseUJBQXlCLEVBQUUsQ0FBQztRQUVwQyxJQUFJLENBQUMsV0FBVyxDQUNkLGNBQWMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLEVBQ3RDLFNBQVMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUM3QixDQUFDO1FBRUYsSUFBSSw0QkFBWSxDQUFDLElBQUksRUFBRTtZQUNyQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsWUFBWSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUTtZQUN2QywyQkFBMkIsRUFBRSxPQUFPLENBQUMsMkJBQTJCLElBQUksSUFBSTtTQUN6RSxDQUFDLENBQUM7SUFDTCxDQUFDOztBQXRFSCxzREF1RUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBzZW12ZXIgZnJvbSBcInNlbXZlclwiO1xuaW1wb3J0IHsgQXV0b0Rpc2NvdmVyIH0gZnJvbSBcIi4vYXV0by1kaXNjb3ZlclwiO1xuaW1wb3J0IHR5cGUgeyBDb25zdHJ1Y3RMaWJyYXJ5T3B0aW9ucyB9IGZyb20gXCIuLi9jZGtcIjtcbmltcG9ydCB7IENvbnN0cnVjdExpYnJhcnkgfSBmcm9tIFwiLi4vY2RrXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29uc3RydWN0TGlicmFyeUNkazhzT3B0aW9ucyBleHRlbmRzIENvbnN0cnVjdExpYnJhcnlPcHRpb25zIHtcbiAgLyoqXG4gICAqIE1pbmltdW0gdGFyZ2V0IHZlcnNpb24gdGhpcyBsaWJyYXJ5IGlzIHRlc3RlZCBhZ2FpbnN0LlxuICAgKlxuICAgKiBAZGVmYXVsdCBcIjEuNC4xMFwiXG4gICAqIEBmZWF0dXJlZFxuICAgKi9cbiAgcmVhZG9ubHkgY2RrOHNWZXJzaW9uOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIGNvbnN0cnVjdHMgdmVyaW9uXG4gICAqXG4gICAqIEBkZWZhdWx0IFwiMy4zLjE5NlwiXG4gICAqL1xuXG4gIHJlYWRvbmx5IGNvbnN0cnVjdHNWZXJzaW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVc2UgcGlubmVkIHZlcnNpb24gaW5zdGVhZCBvZiBjYXJldCB2ZXJzaW9uIGZvciBDREs4cy5cbiAgICpcbiAgICogWW91IGNhbiB1c2UgdGhpcyB0byBwcmV2ZW50IHlhcm4gdG8gbWl4IHZlcnNpb25zIGZvciB5b3VyIENESzhzIHBhY2thZ2UgYW5kIHRvIHByZXZlbnQgYXV0by11cGRhdGVzLlxuICAgKiBJZiB5b3UgdXNlIGV4cGVyaW1lbnRhbCBmZWF0dXJlcyB0aGlzIHdpbGwgbGV0IHlvdSBkZWZpbmUgdGhlIG1vbWVudCB5b3UgaW5jbHVkZSBicmVha2luZyBjaGFuZ2VzLlxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgY2RrOHNWZXJzaW9uUGlubmluZz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFVzZSBwaW5uZWQgdmVyc2lvbiBpbnN0ZWFkIG9mIGNhcmV0IHZlcnNpb24gZm9yIGNvbnN0cnVjdHMuXG4gICAqXG4gICAqIFlvdSBjYW4gdXNlIHRoaXMgdG8gcHJldmVudCB5YXJuIHRvIG1peCB2ZXJzaW9ucyBmb3IgeW91ciBjb25zcnVjdHMgcGFja2FnZSBhbmQgdG8gcHJldmVudCBhdXRvLXVwZGF0ZXMuXG4gICAqIElmIHlvdSB1c2UgZXhwZXJpbWVudGFsIGZlYXR1cmVzIHRoaXMgd2lsbCBsZXQgeW91IGRlZmluZSB0aGUgbW9tZW50IHlvdSBpbmNsdWRlIGJyZWFraW5nIGNoYW5nZXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBjb25zdHJ1Y3RzVmVyc2lvblBpbm5pbmc/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBVc2UgcGlubmVkIHZlcnNpb24gaW5zdGVhZCBvZiBjYXJldCB2ZXJzaW9uIGZvciBjZGs4cy1wbHVzLTE3LlxuICAgKlxuICAgKiBZb3UgY2FuIHVzZSB0aGlzIHRvIHByZXZlbnQgeWFybiB0byBtaXggdmVyc2lvbnMgZm9yIHlvdXIgQ0RLOHMgcGFja2FnZSBhbmQgdG8gcHJldmVudCBhdXRvLXVwZGF0ZXMuXG4gICAqIElmIHlvdSB1c2UgZXhwZXJpbWVudGFsIGZlYXR1cmVzIHRoaXMgd2lsbCBsZXQgeW91IGRlZmluZSB0aGUgbW9tZW50IHlvdSBpbmNsdWRlIGJyZWFraW5nIGNoYW5nZXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBjZGs4c1BsdXNWZXJzaW9uUGlubmluZz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEF1dG9tYXRpY2FsbHkgYWRkcyBhbiBgY2RrOHMuSW50ZWdyYXRpb25UZXN0YCBmb3IgZWFjaCBgLmludGVnLnRzYCBhcHBcbiAgICogaW4geW91ciB0ZXN0IGRpcmVjdG9yeS4gSWYgdGhpcyBpcyBkaXNhYmxlZCwgeW91IGNhbiBtYW51YWxseSBhZGQgYW5cbiAgICogYGNkazhzLkF1dG9EaXNjb3ZlcmAgY29tcG9uZW50IHRvIHlvdXIgcHJvamVjdC5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgaW50ZWdyYXRpb25UZXN0QXV0b0Rpc2NvdmVyPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBDREs4cyBjb25zdHJ1Y3QgbGlicmFyeSBwcm9qZWN0XG4gKlxuICogQSBtdWx0aS1sYW5ndWFnZSAoanNpaSkgY29uc3RydWN0IGxpYnJhcnkgd2hpY2ggdmVuZHMgY29uc3RydWN0cyBkZXNpZ25lZCB0b1xuICogdXNlIHdpdGhpbiB0aGUgQ0RLIGZvciBLdWJlcm5ldGVzIChDREs4cyksIHdpdGggYSBmcmllbmRseSB3b3JrZmxvdyBhbmRcbiAqIGF1dG9tYXRpYyBwdWJsaXNoaW5nIHRvIHRoZSBjb25zdHJ1Y3QgY2F0YWxvZy5cbiAqXG4gKiBAcGppZCBjZGs4cy1jb25zdHJ1Y3RcbiAqL1xuZXhwb3J0IGNsYXNzIENvbnN0cnVjdExpYnJhcnlDZGs4cyBleHRlbmRzIENvbnN0cnVjdExpYnJhcnkge1xuICAvKipcbiAgICogVGhlIENESzhzIHZlcnNpb24gdGhpcyBhcHAgaXMgdXNpbmcuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY2RrOHNWZXJzaW9uOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBjb25zdHJ1Y3RzIHZlcnNpb24gdGhpcyBhcHAgaXMgdXNpbmcuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY29uc3RydWN0c1ZlcnNpb246IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBDb25zdHJ1Y3RMaWJyYXJ5Q2RrOHNPcHRpb25zKSB7XG4gICAgc3VwZXIob3B0aW9ucyk7XG5cbiAgICBpZiAoIW9wdGlvbnMuY2RrOHNWZXJzaW9uKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJSZXF1aXJlZCBmaWVsZCBjZGs4c1ZlcnNpb24gaXMgbm90IHNwZWNpZmllZC5cIik7XG4gICAgfVxuXG4gICAgY29uc3QgY2RrOHNWZXJzaW9uID0gc2VtdmVyLnBhcnNlKG9wdGlvbnMuY2RrOHNWZXJzaW9uKTtcbiAgICBpZiAoIWNkazhzVmVyc2lvbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgXCJjZGs4c1ZlcnNpb25cIiBjYW5ub3QgYmUgcGFyc2VkIGFzIGEgc2VtdmVyIHZlcnNpb246ICR7b3B0aW9ucy5jZGs4c1ZlcnNpb259YCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy5jZGs4c1ZlcnNpb24gPSBvcHRpb25zLmNkazhzVmVyc2lvblBpbm5pbmdcbiAgICAgID8gb3B0aW9ucy5jZGs4c1ZlcnNpb25cbiAgICAgIDogYF4ke29wdGlvbnMuY2RrOHNWZXJzaW9ufWA7XG5cbiAgICBjb25zdCBkZWZhdWx0Q29uc3RydWN0c1ZlcnNpb24gPVxuICAgICAgY2RrOHNWZXJzaW9uLm1ham9yID09PSAxID8gXCIzLjMuMTk2XCIgOiBcIjEwLjAuMFwiO1xuICAgIGNvbnN0IHJlc29sdmVkQ29uc3RydWN0c1ZlcnNpb24gPVxuICAgICAgb3B0aW9ucy5jb25zdHJ1Y3RzVmVyc2lvbiA/PyBkZWZhdWx0Q29uc3RydWN0c1ZlcnNpb247XG4gICAgY29uc3QgcmVzb2x2ZWRNYWpvckNvbnN0cnVjdFZlcnNpb24gPSBzZW12ZXIucGFyc2UoXG4gICAgICByZXNvbHZlZENvbnN0cnVjdHNWZXJzaW9uLFxuICAgICk/Lm1ham9yO1xuXG4gICAgaWYgKCFyZXNvbHZlZE1ham9yQ29uc3RydWN0VmVyc2lvbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgXCJjb25zdHJ1Y3RzVmVyc2lvblwiIGNhbm5vdCBiZSBwYXJzZWQgYXMgYSBzZW12ZXIgdmVyc2lvbjogJHtvcHRpb25zLmNvbnN0cnVjdHNWZXJzaW9ufWAsXG4gICAgICApO1xuICAgIH1cblxuICAgIHN3aXRjaCAoY2RrOHNWZXJzaW9uLm1ham9yKSB7XG4gICAgICBjYXNlIDE6XG4gICAgICAgIGlmIChyZXNvbHZlZE1ham9yQ29uc3RydWN0VmVyc2lvbiAhPT0gMykge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcImNkazhzIDEueCByZXF1aXJlcyBjb25zdHJ1Y3RzIDMueFwiKTtcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgMjpcbiAgICAgICAgaWYgKHJlc29sdmVkTWFqb3JDb25zdHJ1Y3RWZXJzaW9uICE9PSAxMCkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcImNkazhzIDIueCByZXF1aXJlcyBjb25zdHJ1Y3RzIDEwLnhcIik7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgdGhpcy5jb25zdHJ1Y3RzVmVyc2lvbiA9IG9wdGlvbnMuY29uc3RydWN0c1ZlcnNpb25QaW5uaW5nXG4gICAgICA/IHJlc29sdmVkQ29uc3RydWN0c1ZlcnNpb25cbiAgICAgIDogYF4ke3Jlc29sdmVkQ29uc3RydWN0c1ZlcnNpb259YDtcblxuICAgIHRoaXMuYWRkUGVlckRlcHMoXG4gICAgICBgY29uc3RydWN0c0Ake3RoaXMuY29uc3RydWN0c1ZlcnNpb259YCxcbiAgICAgIGBjZGs4c0Ake3RoaXMuY2RrOHNWZXJzaW9ufWAsXG4gICAgKTtcblxuICAgIG5ldyBBdXRvRGlzY292ZXIodGhpcywge1xuICAgICAgdGVzdGRpcjogdGhpcy50ZXN0ZGlyLFxuICAgICAgdHNjb25maWdQYXRoOiB0aGlzLnRzY29uZmlnRGV2LmZpbGVOYW1lLFxuICAgICAgaW50ZWdyYXRpb25UZXN0QXV0b0Rpc2NvdmVyOiBvcHRpb25zLmludGVncmF0aW9uVGVzdEF1dG9EaXNjb3ZlciA/PyB0cnVlLFxuICAgIH0pO1xuICB9XG59XG4iXX0=