UNPKG

projen

Version:

CDK for software projects

31 lines 3.29 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); /** * Parses a projenrc.json file, uses it to generate a corresponding * projenrc.js file, and then run it to synthesize its contents. * * Environment variables: * * - PROJENRC_FILE: (optional) the name of the JSON file to parse from. * Defaults to `.projenrc.json`. */ const fs = require("fs"); const option_hints_1 = require("./option-hints"); const projects_1 = require("./projects"); let filename = process.env.PROJENRC_FILE; if (!filename || filename == "") { filename = ".projenrc.json"; } const { type, ...json } = JSON.parse(fs.readFileSync(filename, "utf8")); if (!type) { throw new Error('projenrc.json requires a "type" field with the fully qualified type name. e.g. projen.web.ReactProject'); } projects_1.Projects.createProject({ dir: ".", projectFqn: type, projectOptions: json, optionHints: option_hints_1.InitProjectOptionHints.NONE, synth: true, post: false, }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuLXByb2plbnJjLWpzb24udGFzay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9ydW4tcHJvamVucmMtanNvbi50YXNrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUE7Ozs7Ozs7O0dBUUc7QUFDSCx5QkFBeUI7QUFDekIsaURBQXdEO0FBQ3hELHlDQUFzQztBQUV0QyxJQUFJLFFBQVEsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQztBQUV6QyxJQUFJLENBQUMsUUFBUSxJQUFJLFFBQVEsSUFBSSxFQUFFLEVBQUUsQ0FBQztJQUNoQyxRQUFRLEdBQUcsZ0JBQWdCLENBQUM7QUFDOUIsQ0FBQztBQUVELE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7QUFDeEUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ1YsTUFBTSxJQUFJLEtBQUssQ0FDYix3R0FBd0csQ0FDekcsQ0FBQztBQUNKLENBQUM7QUFFRCxtQkFBUSxDQUFDLGFBQWEsQ0FBQztJQUNyQixHQUFHLEVBQUUsR0FBRztJQUNSLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLGNBQWMsRUFBRSxJQUFJO0lBQ3BCLFdBQVcsRUFBRSxxQ0FBc0IsQ0FBQyxJQUFJO0lBQ3hDLEtBQUssRUFBRSxJQUFJO0lBQ1gsSUFBSSxFQUFFLEtBQUs7Q0FDWixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFBhcnNlcyBhIHByb2plbnJjLmpzb24gZmlsZSwgdXNlcyBpdCB0byBnZW5lcmF0ZSBhIGNvcnJlc3BvbmRpbmdcbiAqIHByb2plbnJjLmpzIGZpbGUsIGFuZCB0aGVuIHJ1biBpdCB0byBzeW50aGVzaXplIGl0cyBjb250ZW50cy5cbiAqXG4gKiBFbnZpcm9ubWVudCB2YXJpYWJsZXM6XG4gKlxuICogLSBQUk9KRU5SQ19GSUxFOiAob3B0aW9uYWwpIHRoZSBuYW1lIG9mIHRoZSBKU09OIGZpbGUgdG8gcGFyc2UgZnJvbS5cbiAqICAgRGVmYXVsdHMgdG8gYC5wcm9qZW5yYy5qc29uYC5cbiAqL1xuaW1wb3J0ICogYXMgZnMgZnJvbSBcImZzXCI7XG5pbXBvcnQgeyBJbml0UHJvamVjdE9wdGlvbkhpbnRzIH0gZnJvbSBcIi4vb3B0aW9uLWhpbnRzXCI7XG5pbXBvcnQgeyBQcm9qZWN0cyB9IGZyb20gXCIuL3Byb2plY3RzXCI7XG5cbmxldCBmaWxlbmFtZSA9IHByb2Nlc3MuZW52LlBST0pFTlJDX0ZJTEU7XG5cbmlmICghZmlsZW5hbWUgfHwgZmlsZW5hbWUgPT0gXCJcIikge1xuICBmaWxlbmFtZSA9IFwiLnByb2plbnJjLmpzb25cIjtcbn1cblxuY29uc3QgeyB0eXBlLCAuLi5qc29uIH0gPSBKU09OLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhmaWxlbmFtZSwgXCJ1dGY4XCIpKTtcbmlmICghdHlwZSkge1xuICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgJ3Byb2plbnJjLmpzb24gcmVxdWlyZXMgYSBcInR5cGVcIiBmaWVsZCB3aXRoIHRoZSBmdWxseSBxdWFsaWZpZWQgdHlwZSBuYW1lLiBlLmcuIHByb2plbi53ZWIuUmVhY3RQcm9qZWN0J1xuICApO1xufVxuXG5Qcm9qZWN0cy5jcmVhdGVQcm9qZWN0KHtcbiAgZGlyOiBcIi5cIixcbiAgcHJvamVjdEZxbjogdHlwZSxcbiAgcHJvamVjdE9wdGlvbnM6IGpzb24sXG4gIG9wdGlvbkhpbnRzOiBJbml0UHJvamVjdE9wdGlvbkhpbnRzLk5PTkUsXG4gIHN5bnRoOiB0cnVlLFxuICBwb3N0OiBmYWxzZSxcbn0pO1xuIl19