UNPKG

projen

Version:

CDK for software projects

104 lines • 10.1 kB
"use strict"; 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; }; })(); var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const yargs_1 = __importDefault(require("yargs")); const helpers_1 = require("yargs/helpers"); const common_1 = require("../common"); const logging = __importStar(require("../logging")); const util_1 = require("../util"); const new_1 = __importDefault(require("./cmds/new")); const run_task_1 = require("./cmds/run-task"); const synth_1 = require("./cmds/synth"); const task_runtime_1 = require("./task-runtime"); async function main() { const ya = (0, yargs_1.default)((0, helpers_1.hideBin)(process.argv)); ya.command(new_1.default); const pathToProjenDir = (0, util_1.findUp)(common_1.PROJEN_DIR, process.cwd()); const runtime = new task_runtime_1.TaskRuntime(pathToProjenDir ?? "."); (0, run_task_1.discoverTaskCommands)(runtime, ya); ya.recommendCommands(); ya.strictCommands(); ya.showHelpOnFail(false); ya.wrap(ya.terminalWidth()); ya.option("post", { type: "boolean", default: true, desc: "Run post-synthesis steps such as installing dependencies. Use --no-post to skip", }); ya.option("watch", { type: "boolean", default: false, desc: "Keep running and resynthesize when projenrc changes", alias: "w", }); ya.options("debug", { type: "boolean", default: false, desc: "Debug logs" }); ya.completion(); ya.help(); // do not use the default yargs '--version' implementation since it is // global by default (it appears on all subcommands) ya.version(false); ya.option("version", { type: "boolean", description: "Show version number", global: false, }); const args = await ya.argv; if (args.debug) { process.env.DEBUG = "true"; } const nodeVersion = (0, util_1.getNodeMajorVersion)(); if (nodeVersion && nodeVersion < 16) { logging.warn(`WARNING: You are using Node v${nodeVersion}, which reaches end of life on April 30, 2023. Support for EOL Node releases may be dropped by projen in the future. Please consider upgrading to Node >= 16 as soon as possible.`); } // no command means synthesize if (args._.length === 0) { if (args.version) { console.log(common_1.PROJEN_VERSION); process.exit(0); } await (0, synth_1.synth)(runtime, { post: args.post, watch: args.watch, }); } } main().catch((e) => { console.error(e.stack); process.exit(1); }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xpL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsa0RBQTBCO0FBQzFCLDJDQUF3QztBQUN4QyxzQ0FBdUQ7QUFDdkQsb0RBQXNDO0FBQ3RDLGtDQUFzRDtBQUN0RCxxREFBb0M7QUFDcEMsOENBQXVEO0FBQ3ZELHdDQUFxQztBQUNyQyxpREFBNkM7QUFFN0MsS0FBSyxVQUFVLElBQUk7SUFDakIsTUFBTSxFQUFFLEdBQUcsSUFBQSxlQUFLLEVBQUMsSUFBQSxpQkFBTyxFQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3hDLEVBQUUsQ0FBQyxPQUFPLENBQUMsYUFBVSxDQUFDLENBQUM7SUFFdkIsTUFBTSxlQUFlLEdBQUcsSUFBQSxhQUFNLEVBQUMsbUJBQVUsRUFBRSxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUMxRCxNQUFNLE9BQU8sR0FBRyxJQUFJLDBCQUFXLENBQUMsZUFBZSxJQUFJLEdBQUcsQ0FBQyxDQUFDO0lBQ3hELElBQUEsK0JBQW9CLEVBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRWxDLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQ3ZCLEVBQUUsQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUNwQixFQUFFLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pCLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFDNUIsRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7UUFDaEIsSUFBSSxFQUFFLFNBQVM7UUFDZixPQUFPLEVBQUUsSUFBSTtRQUNiLElBQUksRUFBRSxpRkFBaUY7S0FDeEYsQ0FBQyxDQUFDO0lBQ0gsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUU7UUFDakIsSUFBSSxFQUFFLFNBQVM7UUFDZixPQUFPLEVBQUUsS0FBSztRQUNkLElBQUksRUFBRSxxREFBcUQ7UUFDM0QsS0FBSyxFQUFFLEdBQUc7S0FDWCxDQUFDLENBQUM7SUFDSCxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztJQUM3RSxFQUFFLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDaEIsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO0lBRVYsc0VBQXNFO0lBQ3RFLG9EQUFvRDtJQUNwRCxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xCLEVBQUUsQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFO1FBQ25CLElBQUksRUFBRSxTQUFTO1FBQ2YsV0FBVyxFQUFFLHFCQUFxQjtRQUNsQyxNQUFNLEVBQUUsS0FBSztLQUNkLENBQUMsQ0FBQztJQUVILE1BQU0sSUFBSSxHQUFHLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQztJQUUzQixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNmLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztJQUM3QixDQUFDO0lBRUQsTUFBTSxXQUFXLEdBQUcsSUFBQSwwQkFBbUIsR0FBRSxDQUFDO0lBQzFDLElBQUksV0FBVyxJQUFJLFdBQVcsR0FBRyxFQUFFLEVBQUUsQ0FBQztRQUNwQyxPQUFPLENBQUMsSUFBSSxDQUNWLGdDQUFnQyxXQUFXLG1MQUFtTCxDQUMvTixDQUFDO0lBQ0osQ0FBQztJQUVELDhCQUE4QjtJQUM5QixJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3hCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2pCLE9BQU8sQ0FBQyxHQUFHLENBQUMsdUJBQWMsQ0FBQyxDQUFDO1lBQzVCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbEIsQ0FBQztRQUNELE1BQU0sSUFBQSxhQUFLLEVBQUMsT0FBTyxFQUFFO1lBQ25CLElBQUksRUFBRSxJQUFJLENBQUMsSUFBZTtZQUMxQixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQWdCO1NBQzdCLENBQUMsQ0FBQztJQUNMLENBQUM7QUFDSCxDQUFDO0FBRUQsSUFBSSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7SUFDakIsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkIsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNsQixDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB5YXJncyBmcm9tIFwieWFyZ3NcIjtcbmltcG9ydCB7IGhpZGVCaW4gfSBmcm9tIFwieWFyZ3MvaGVscGVyc1wiO1xuaW1wb3J0IHsgUFJPSkVOX0RJUiwgUFJPSkVOX1ZFUlNJT04gfSBmcm9tIFwiLi4vY29tbW9uXCI7XG5pbXBvcnQgKiBhcyBsb2dnaW5nIGZyb20gXCIuLi9sb2dnaW5nXCI7XG5pbXBvcnQgeyBmaW5kVXAsIGdldE5vZGVNYWpvclZlcnNpb24gfSBmcm9tIFwiLi4vdXRpbFwiO1xuaW1wb3J0IG5ld0NvbW1hbmQgZnJvbSBcIi4vY21kcy9uZXdcIjtcbmltcG9ydCB7IGRpc2NvdmVyVGFza0NvbW1hbmRzIH0gZnJvbSBcIi4vY21kcy9ydW4tdGFza1wiO1xuaW1wb3J0IHsgc3ludGggfSBmcm9tIFwiLi9jbWRzL3N5bnRoXCI7XG5pbXBvcnQgeyBUYXNrUnVudGltZSB9IGZyb20gXCIuL3Rhc2stcnVudGltZVwiO1xuXG5hc3luYyBmdW5jdGlvbiBtYWluKCkge1xuICBjb25zdCB5YSA9IHlhcmdzKGhpZGVCaW4ocHJvY2Vzcy5hcmd2KSk7XG4gIHlhLmNvbW1hbmQobmV3Q29tbWFuZCk7XG5cbiAgY29uc3QgcGF0aFRvUHJvamVuRGlyID0gZmluZFVwKFBST0pFTl9ESVIsIHByb2Nlc3MuY3dkKCkpO1xuICBjb25zdCBydW50aW1lID0gbmV3IFRhc2tSdW50aW1lKHBhdGhUb1Byb2plbkRpciA/PyBcIi5cIik7XG4gIGRpc2NvdmVyVGFza0NvbW1hbmRzKHJ1bnRpbWUsIHlhKTtcblxuICB5YS5yZWNvbW1lbmRDb21tYW5kcygpO1xuICB5YS5zdHJpY3RDb21tYW5kcygpO1xuICB5YS5zaG93SGVscE9uRmFpbChmYWxzZSk7XG4gIHlhLndyYXAoeWEudGVybWluYWxXaWR0aCgpKTtcbiAgeWEub3B0aW9uKFwicG9zdFwiLCB7XG4gICAgdHlwZTogXCJib29sZWFuXCIsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgICBkZXNjOiBcIlJ1biBwb3N0LXN5bnRoZXNpcyBzdGVwcyBzdWNoIGFzIGluc3RhbGxpbmcgZGVwZW5kZW5jaWVzLiBVc2UgLS1uby1wb3N0IHRvIHNraXBcIixcbiAgfSk7XG4gIHlhLm9wdGlvbihcIndhdGNoXCIsIHtcbiAgICB0eXBlOiBcImJvb2xlYW5cIixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICBkZXNjOiBcIktlZXAgcnVubmluZyBhbmQgcmVzeW50aGVzaXplIHdoZW4gcHJvamVucmMgY2hhbmdlc1wiLFxuICAgIGFsaWFzOiBcIndcIixcbiAgfSk7XG4gIHlhLm9wdGlvbnMoXCJkZWJ1Z1wiLCB7IHR5cGU6IFwiYm9vbGVhblwiLCBkZWZhdWx0OiBmYWxzZSwgZGVzYzogXCJEZWJ1ZyBsb2dzXCIgfSk7XG4gIHlhLmNvbXBsZXRpb24oKTtcbiAgeWEuaGVscCgpO1xuXG4gIC8vIGRvIG5vdCB1c2UgdGhlIGRlZmF1bHQgeWFyZ3MgJy0tdmVyc2lvbicgaW1wbGVtZW50YXRpb24gc2luY2UgaXQgaXNcbiAgLy8gZ2xvYmFsIGJ5IGRlZmF1bHQgKGl0IGFwcGVhcnMgb24gYWxsIHN1YmNvbW1hbmRzKVxuICB5YS52ZXJzaW9uKGZhbHNlKTtcbiAgeWEub3B0aW9uKFwidmVyc2lvblwiLCB7XG4gICAgdHlwZTogXCJib29sZWFuXCIsXG4gICAgZGVzY3JpcHRpb246IFwiU2hvdyB2ZXJzaW9uIG51bWJlclwiLFxuICAgIGdsb2JhbDogZmFsc2UsXG4gIH0pO1xuXG4gIGNvbnN0IGFyZ3MgPSBhd2FpdCB5YS5hcmd2O1xuXG4gIGlmIChhcmdzLmRlYnVnKSB7XG4gICAgcHJvY2Vzcy5lbnYuREVCVUcgPSBcInRydWVcIjtcbiAgfVxuXG4gIGNvbnN0IG5vZGVWZXJzaW9uID0gZ2V0Tm9kZU1ham9yVmVyc2lvbigpO1xuICBpZiAobm9kZVZlcnNpb24gJiYgbm9kZVZlcnNpb24gPCAxNikge1xuICAgIGxvZ2dpbmcud2FybihcbiAgICAgIGBXQVJOSU5HOiBZb3UgYXJlIHVzaW5nIE5vZGUgdiR7bm9kZVZlcnNpb259LCB3aGljaCByZWFjaGVzIGVuZCBvZiBsaWZlIG9uIEFwcmlsIDMwLCAyMDIzLiBTdXBwb3J0IGZvciBFT0wgTm9kZSByZWxlYXNlcyBtYXkgYmUgZHJvcHBlZCBieSBwcm9qZW4gaW4gdGhlIGZ1dHVyZS4gUGxlYXNlIGNvbnNpZGVyIHVwZ3JhZGluZyB0byBOb2RlID49IDE2IGFzIHNvb24gYXMgcG9zc2libGUuYCxcbiAgICApO1xuICB9XG5cbiAgLy8gbm8gY29tbWFuZCBtZWFucyBzeW50aGVzaXplXG4gIGlmIChhcmdzLl8ubGVuZ3RoID09PSAwKSB7XG4gICAgaWYgKGFyZ3MudmVyc2lvbikge1xuICAgICAgY29uc29sZS5sb2coUFJPSkVOX1ZFUlNJT04pO1xuICAgICAgcHJvY2Vzcy5leGl0KDApO1xuICAgIH1cbiAgICBhd2FpdCBzeW50aChydW50aW1lLCB7XG4gICAgICBwb3N0OiBhcmdzLnBvc3QgYXMgYm9vbGVhbixcbiAgICAgIHdhdGNoOiBhcmdzLndhdGNoIGFzIGJvb2xlYW4sXG4gICAgfSk7XG4gIH1cbn1cblxubWFpbigpLmNhdGNoKChlKSA9PiB7XG4gIGNvbnNvbGUuZXJyb3IoZS5zdGFjayk7XG4gIHByb2Nlc3MuZXhpdCgxKTtcbn0pO1xuIl19