UNPKG

projen

Version:

CDK for software projects

56 lines 6.99 kB
"use strict"; var _a; Object.defineProperty(exports, "__esModule", { value: true }); exports.ProjectBuild = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const component_1 = require("./component"); /** * Manages a standard build process for all projects. * * Build spawns these tasks in order: * 1. default * 2. pre-compile * 3. compile * 4. post-compile * 5. test * 6. package */ class ProjectBuild extends component_1.Component { constructor(project) { super(project); this.preCompileTask = project.tasks.addTask("pre-compile", { description: "Prepare the project for compilation", }); this.compileTask = project.tasks.addTask("compile", { description: "Only compile", }); this.postCompileTask = project.tasks.addTask("post-compile", { description: "Runs after successful compilation", }); this.testTask = project.tasks.addTask("test", { description: "Run tests", }); this.packageTask = project.tasks.addTask("package", { description: "Creates the distribution package", }); this.buildTask = project.tasks.addTask("build", { description: "Full release build", }); // if this is not subproject, execute the "default" task which will // synthesize project files. if (!this.project.parent && this.project.defaultTask) { this.buildTask.spawn(this.project.defaultTask); } this.buildTask.spawn(this.preCompileTask); this.buildTask.spawn(this.compileTask); this.buildTask.spawn(this.postCompileTask); this.buildTask.spawn(this.testTask); this.buildTask.spawn(this.packageTask); // do not allow additional build phases this.buildTask.lock(); } } exports.ProjectBuild = ProjectBuild; _a = JSII_RTTI_SYMBOL_1; ProjectBuild[_a] = { fqn: "projen.ProjectBuild", version: "0.99.51" }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdC1idWlsZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9wcm9qZWN0LWJ1aWxkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMkNBQXdDO0FBSXhDOzs7Ozs7Ozs7O0dBVUc7QUFDSCxNQUFhLFlBQWEsU0FBUSxxQkFBUztJQStCekMsWUFBWSxPQUFnQjtRQUMxQixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFZixJQUFJLENBQUMsY0FBYyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRTtZQUN6RCxXQUFXLEVBQUUscUNBQXFDO1NBQ25ELENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFO1lBQ2xELFdBQVcsRUFBRSxjQUFjO1NBQzVCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxlQUFlLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFO1lBQzNELFdBQVcsRUFBRSxtQ0FBbUM7U0FDakQsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUU7WUFDNUMsV0FBVyxFQUFFLFdBQVc7U0FDekIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUU7WUFDbEQsV0FBVyxFQUFFLGtDQUFrQztTQUNoRCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRTtZQUM5QyxXQUFXLEVBQUUsb0JBQW9CO1NBQ2xDLENBQUMsQ0FBQztRQUVILG1FQUFtRTtRQUNuRSw0QkFBNEI7UUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDckQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNqRCxDQUFDO1FBRUQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN2QyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDM0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUV2Qyx1Q0FBdUM7UUFDdkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDOztBQXhFSCxvQ0F5RUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRcIjtcbmltcG9ydCB0eXBlIHsgUHJvamVjdCB9IGZyb20gXCIuL3Byb2plY3RcIjtcbmltcG9ydCB0eXBlIHsgVGFzayB9IGZyb20gXCIuL3Rhc2tcIjtcblxuLyoqXG4gKiBNYW5hZ2VzIGEgc3RhbmRhcmQgYnVpbGQgcHJvY2VzcyBmb3IgYWxsIHByb2plY3RzLlxuICpcbiAqIEJ1aWxkIHNwYXducyB0aGVzZSB0YXNrcyBpbiBvcmRlcjpcbiAqIDEuIGRlZmF1bHRcbiAqIDIuIHByZS1jb21waWxlXG4gKiAzLiBjb21waWxlXG4gKiA0LiBwb3N0LWNvbXBpbGVcbiAqIDUuIHRlc3RcbiAqIDYuIHBhY2thZ2VcbiAqL1xuZXhwb3J0IGNsYXNzIFByb2plY3RCdWlsZCBleHRlbmRzIENvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBUaGUgdGFzayByZXNwb25zaWJsZSBmb3IgYSBmdWxsIHJlbGVhc2UgYnVpbGQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYnVpbGRUYXNrOiBUYXNrO1xuXG4gIC8qKlxuICAgKiBQcmUtY29tcGlsZSB0YXNrLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByZUNvbXBpbGVUYXNrOiBUYXNrO1xuXG4gIC8qKlxuICAgKiBDb21waWxlcyB0aGUgY29kZS4gQnkgZGVmYXVsdCBmb3Igbm9kZS5qcyBwcm9qZWN0cyB0aGlzIHRhc2sgaXMgZW1wdHkuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY29tcGlsZVRhc2s6IFRhc2s7XG5cbiAgLyoqXG4gICAqIFBvc3QtY29tcGlsZSB0YXNrLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHBvc3RDb21waWxlVGFzazogVGFzaztcblxuICAvKipcbiAgICogVGVzdHMgdGhlIGNvZGUuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdGVzdFRhc2s6IFRhc2s7XG5cbiAgLyoqXG4gICAqIFRoZSBcInBhY2thZ2VcIiB0YXNrLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHBhY2thZ2VUYXNrOiBUYXNrO1xuXG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QpIHtcbiAgICBzdXBlcihwcm9qZWN0KTtcblxuICAgIHRoaXMucHJlQ29tcGlsZVRhc2sgPSBwcm9qZWN0LnRhc2tzLmFkZFRhc2soXCJwcmUtY29tcGlsZVwiLCB7XG4gICAgICBkZXNjcmlwdGlvbjogXCJQcmVwYXJlIHRoZSBwcm9qZWN0IGZvciBjb21waWxhdGlvblwiLFxuICAgIH0pO1xuXG4gICAgdGhpcy5jb21waWxlVGFzayA9IHByb2plY3QudGFza3MuYWRkVGFzayhcImNvbXBpbGVcIiwge1xuICAgICAgZGVzY3JpcHRpb246IFwiT25seSBjb21waWxlXCIsXG4gICAgfSk7XG5cbiAgICB0aGlzLnBvc3RDb21waWxlVGFzayA9IHByb2plY3QudGFza3MuYWRkVGFzayhcInBvc3QtY29tcGlsZVwiLCB7XG4gICAgICBkZXNjcmlwdGlvbjogXCJSdW5zIGFmdGVyIHN1Y2Nlc3NmdWwgY29tcGlsYXRpb25cIixcbiAgICB9KTtcblxuICAgIHRoaXMudGVzdFRhc2sgPSBwcm9qZWN0LnRhc2tzLmFkZFRhc2soXCJ0ZXN0XCIsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiBcIlJ1biB0ZXN0c1wiLFxuICAgIH0pO1xuXG4gICAgdGhpcy5wYWNrYWdlVGFzayA9IHByb2plY3QudGFza3MuYWRkVGFzayhcInBhY2thZ2VcIiwge1xuICAgICAgZGVzY3JpcHRpb246IFwiQ3JlYXRlcyB0aGUgZGlzdHJpYnV0aW9uIHBhY2thZ2VcIixcbiAgICB9KTtcblxuICAgIHRoaXMuYnVpbGRUYXNrID0gcHJvamVjdC50YXNrcy5hZGRUYXNrKFwiYnVpbGRcIiwge1xuICAgICAgZGVzY3JpcHRpb246IFwiRnVsbCByZWxlYXNlIGJ1aWxkXCIsXG4gICAgfSk7XG5cbiAgICAvLyBpZiB0aGlzIGlzIG5vdCBzdWJwcm9qZWN0LCBleGVjdXRlIHRoZSBcImRlZmF1bHRcIiB0YXNrIHdoaWNoIHdpbGxcbiAgICAvLyBzeW50aGVzaXplIHByb2plY3QgZmlsZXMuXG4gICAgaWYgKCF0aGlzLnByb2plY3QucGFyZW50ICYmIHRoaXMucHJvamVjdC5kZWZhdWx0VGFzaykge1xuICAgICAgdGhpcy5idWlsZFRhc2suc3Bhd24odGhpcy5wcm9qZWN0LmRlZmF1bHRUYXNrKTtcbiAgICB9XG5cbiAgICB0aGlzLmJ1aWxkVGFzay5zcGF3bih0aGlzLnByZUNvbXBpbGVUYXNrKTtcbiAgICB0aGlzLmJ1aWxkVGFzay5zcGF3bih0aGlzLmNvbXBpbGVUYXNrKTtcbiAgICB0aGlzLmJ1aWxkVGFzay5zcGF3bih0aGlzLnBvc3RDb21waWxlVGFzayk7XG4gICAgdGhpcy5idWlsZFRhc2suc3Bhd24odGhpcy50ZXN0VGFzayk7XG4gICAgdGhpcy5idWlsZFRhc2suc3Bhd24odGhpcy5wYWNrYWdlVGFzayk7XG5cbiAgICAvLyBkbyBub3QgYWxsb3cgYWRkaXRpb25hbCBidWlsZCBwaGFzZXNcbiAgICB0aGlzLmJ1aWxkVGFzay5sb2NrKCk7XG4gIH1cbn1cbiJdfQ==