UNPKG

aws-delivlib

Version:

A fabulous library for defining continuous pipelines for building, testing and releasing code libraries.

35 lines 7.67 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.AutoBump = void 0; const constructs_1 = require("constructs"); const pr_1 = require("./pr"); class AutoBump extends constructs_1.Construct { constructor(parent, id, props) { super(parent, id); const branchName = props.head?.name ?? 'bump/$VERSION'; const baseBranch = props.base?.name ?? 'master'; const bumpCommand = props.bumpCommand ?? '/bin/sh ./bump.sh'; const versionCommand = props.versionCommand ?? 'git describe'; const title = props.title ?? 'chore(release): $VERSION'; const body = props.body ?? `See [CHANGELOG](https://github.com/${props.repo.owner}/${props.repo.repo}/blob/${branchName}/CHANGELOG.md)`; this.pr = new pr_1.AutoPullRequest(this, 'AutoPullRequest', { ...props, head: { name: branchName, source: props.head?.source, }, title, body, commands: [bumpCommand], exports: { ...props.exports, VERSION: versionCommand, }, // check if base is already released condition: `git describe --exact-match ${baseBranch}`, projectDescription: props.projectDescription ?? `Release ${props.repo.owner}/${props.repo.repo}, branch ${baseBranch}`, }); } } exports.AutoBump = AutoBump; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVtcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImJ1bXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMkNBQXVDO0FBQ3ZDLDZCQUErRDtBQXFGL0QsTUFBYSxRQUFTLFNBQVEsc0JBQVM7SUFPckMsWUFBWSxNQUFpQixFQUFFLEVBQVUsRUFBRSxLQUFvQjtRQUM3RCxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWxCLE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxJQUFJLGVBQWUsQ0FBQztRQUN2RCxNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFLElBQUksSUFBSSxRQUFRLENBQUM7UUFDaEQsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLFdBQVcsSUFBSSxtQkFBbUIsQ0FBQztRQUM3RCxNQUFNLGNBQWMsR0FBRyxLQUFLLENBQUMsY0FBYyxJQUFJLGNBQWMsQ0FBQztRQUM5RCxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxJQUFJLDBCQUEwQixDQUFDO1FBQ3hELE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLElBQUksc0NBQXNDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxTQUFTLFVBQVUsZ0JBQWdCLENBQUM7UUFFeEksSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLG9CQUFlLENBQUMsSUFBSSxFQUFFLGlCQUFpQixFQUFFO1lBQ3JELEdBQUcsS0FBSztZQUNSLElBQUksRUFBRTtnQkFDSixJQUFJLEVBQUUsVUFBVTtnQkFDaEIsTUFBTSxFQUFFLEtBQUssQ0FBQyxJQUFJLEVBQUUsTUFBTTthQUMzQjtZQUNELEtBQUs7WUFDTCxJQUFJO1lBQ0osUUFBUSxFQUFFLENBQUMsV0FBVyxDQUFDO1lBQ3ZCLE9BQU8sRUFBRTtnQkFDUCxHQUFHLEtBQUssQ0FBQyxPQUFPO2dCQUNoQixPQUFPLEVBQUUsY0FBYzthQUN4QjtZQUNELG9DQUFvQztZQUNwQyxTQUFTLEVBQUUsOEJBQThCLFVBQVUsRUFBRTtZQUNyRCxrQkFBa0IsRUFBRSxLQUFLLENBQUMsa0JBQWtCLElBQUksV0FBVyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksWUFBWSxVQUFVLEVBQUU7U0FDdkgsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBbkNELDRCQW1DQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQXV0b1B1bGxSZXF1ZXN0LCBBdXRvUHVsbFJlcXVlc3RPcHRpb25zIH0gZnJvbSAnLi9wcic7XG5pbXBvcnQgeyBXcml0YWJsZUdpdEh1YlJlcG8gfSBmcm9tICcuLi9yZXBvJztcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBjb25maWd1cmluZyB0aGUgaGVhZCBicmFuY2ggb2YgdGhlIGJ1bXAgUFIuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXV0b0J1bXBIZWFkIHtcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgYnJhbmNoLiBXaWxsIGJlIGNyZWF0ZWQgaWYgaXQgZG9lc24ndCBleGlzdC5cbiAgICpcbiAgICogJFZFUlNJT04gd2lsbCBiZSBzdWJzdGl0dXRlZCBieSB0aGUgY3VycmVudCB2ZXJzaW9uIChvYnRhaW5lZCBieSBleGVjdXRpbmcgYHZlcnNpb25Db21tYW5kYCkuXG4gICAqXG4gICAqIEBkZWZhdWx0ICdidW1wLyRWRVJTSU9OJ1xuICAgKi9cbiAgcmVhZG9ubHkgbmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQHNlZSAnc291cmNlJyBwcm9wZXJ0eSBpbiBBdXRvUHVsbFJlcXVlc3QuSGVhZFxuICAgKi9cbiAgcmVhZG9ubHkgc291cmNlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGNvbmZpZ3VyaW5nIGFuIEF1dG8gQnVtcCBwcm9qZWN0LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEF1dG9CdW1wUHJvcHMgZXh0ZW5kcyBBdXRvUHVsbFJlcXVlc3RPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSByZXBvc2l0b3J5IHRvIGNyZWF0ZSBhIFBSIGluLlxuICAgKi9cbiAgcmVwbzogV3JpdGFibGVHaXRIdWJSZXBvO1xuXG4gIC8qKlxuICAgKiBUaGUgY29tbWFuZCB0byBleGVjdXRlIGluIG9yZGVyIHRvIGJ1bXAgdGhlIHJlcG8uXG4gICAqXG4gICAqIFRoZSBidW1wIGNvbW1hbmQgaXMgcmVzcG9uc2libGUgdG8gYnVtcCBhbnkgdmVyc2lvbiBtZXRhZGF0YSwgdXBkYXRlXG4gICAqIENIQU5HRUxPRyBhbmQgY29tbWl0IHRoaXMgdG8gdGhlIHJlcG9zaXRvcnkuXG4gICAqXG4gICAqIEBkZWZhdWx0ICcvYmluL2Jhc2ggLi9idW1wLnNoJ1xuICAgKi9cbiAgYnVtcENvbW1hbmQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBjb21tYW5kIHRvIGRldGVybWluZSB0aGUgY3VycmVudCB2ZXJzaW9uLlxuICAgKlxuICAgKiBUaGlzIGlzIHRoZSB2YWx1ZSB0aGF0IHdpbGwgYmUgdXNlZCB0byBldmFsdWF0ZSAkVkVSU0lPTi5cbiAgICpcbiAgICogQGRlZmF1bHQgJ2dpdCBkZXNjcmliZScgKHRoZSBsYXRlc3QgZ2l0IHRhZyB3aWxsIGJlIHVzZWQgdG8gZGV0ZXJtaW5lIHRoZSBjdXJyZW50IHZlcnNpb24pXG4gICAqL1xuICB2ZXJzaW9uQ29tbWFuZD86IHN0cmluZztcblxuICAvKipcbiAgICogVGl0bGUgb2YgdGhlIFBSLlxuICAgKlxuICAgKiAkVkVSU0lPTiB3aWxsIGJlIHN1YnN0aXR1dGVkIGJ5IHRoZSBjdXJyZW50IHZlcnNpb24gKG9idGFpbmVkIGJ5IGV4ZWN1dGluZyBgdmVyc2lvbkNvbW1hbmRgKS5cbiAgICpcbiAgICogQGRlZmF1bHQnIGNob3JlKHJlbGVhc2UpOiAkVkVSU0lPTidcbiAgICovXG4gIHRpdGxlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBCb2R5IG9mIHRoZSBQUi5cbiAgICpcbiAgICogQGRlZmF1bHQgJ1NlZSBbQ0hBTkdFTE9HXShodHRwczovL2dpdGh1Yi5jb20vJHtwcm9wcy5yZXBvLm93bmVyfS8ke3Byb3BzLnJlcG8ucmVwb30vYmxvYi8ke2hlYWR9L0NIQU5HRUxPRy5tZCknXG4gICAqIChMaW5rIHRvIHRoZSBDSEFOR0VMT0cgZmlsZSBvZiB0aGUgaGVhZCBicmFuY2gpXG4gICAqL1xuICBib2R5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgaGVhZCBicmFuY2ggb2YgdGhlIFBSLlxuICAgKlxuICAgKiAkVkVSU0lPTiB3aWxsIGJlIHN1YnN0aXR1dGVkIGJ5IHRoZSBjdXJyZW50IHZlcnNpb24gKG9idGFpbmVkIGJ5IGV4ZWN1dGluZyBgdmVyc2lvbkNvbW1hbmRgKS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBXaWwgYmUgY3JlYXRlZCBmcm9tIG1hc3RlciBhbmQgbmFtZWQgJ2J1bXAvJFZFUlNJT04nXG4gICAqL1xuICBoZWFkPzogQXV0b0J1bXBIZWFkO1xuXG4gIC8qKlxuICAgKiBEZXNjcmlwdGlvbiBzdHJpbmcgZm9yIHRoZSBDb2RlQnVpbGQgcHJvamVjdFxuICAgKlxuICAgKiBAZGVmYXVsdCAtIEEgZGVmYXVsdCBkZXNjcmlwdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdERlc2NyaXB0aW9uPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgQXV0b0J1bXAgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuXG4gIC8qKlxuICAgKiBUaGUgdW5kZXJseWluZyBBdXRvUHVsbFJlcXVlc3QgY29uc3RydWN0LlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByOiBBdXRvUHVsbFJlcXVlc3Q7XG5cbiAgY29uc3RydWN0b3IocGFyZW50OiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBBdXRvQnVtcFByb3BzKSB7XG4gICAgc3VwZXIocGFyZW50LCBpZCk7XG5cbiAgICBjb25zdCBicmFuY2hOYW1lID0gcHJvcHMuaGVhZD8ubmFtZSA/PyAnYnVtcC8kVkVSU0lPTic7XG4gICAgY29uc3QgYmFzZUJyYW5jaCA9IHByb3BzLmJhc2U/Lm5hbWUgPz8gJ21hc3Rlcic7XG4gICAgY29uc3QgYnVtcENvbW1hbmQgPSBwcm9wcy5idW1wQ29tbWFuZCA/PyAnL2Jpbi9zaCAuL2J1bXAuc2gnO1xuICAgIGNvbnN0IHZlcnNpb25Db21tYW5kID0gcHJvcHMudmVyc2lvbkNvbW1hbmQgPz8gJ2dpdCBkZXNjcmliZSc7XG4gICAgY29uc3QgdGl0bGUgPSBwcm9wcy50aXRsZSA/PyAnY2hvcmUocmVsZWFzZSk6ICRWRVJTSU9OJztcbiAgICBjb25zdCBib2R5ID0gcHJvcHMuYm9keSA/PyBgU2VlIFtDSEFOR0VMT0ddKGh0dHBzOi8vZ2l0aHViLmNvbS8ke3Byb3BzLnJlcG8ub3duZXJ9LyR7cHJvcHMucmVwby5yZXBvfS9ibG9iLyR7YnJhbmNoTmFtZX0vQ0hBTkdFTE9HLm1kKWA7XG5cbiAgICB0aGlzLnByID0gbmV3IEF1dG9QdWxsUmVxdWVzdCh0aGlzLCAnQXV0b1B1bGxSZXF1ZXN0Jywge1xuICAgICAgLi4ucHJvcHMsXG4gICAgICBoZWFkOiB7XG4gICAgICAgIG5hbWU6IGJyYW5jaE5hbWUsXG4gICAgICAgIHNvdXJjZTogcHJvcHMuaGVhZD8uc291cmNlLFxuICAgICAgfSxcbiAgICAgIHRpdGxlLFxuICAgICAgYm9keSxcbiAgICAgIGNvbW1hbmRzOiBbYnVtcENvbW1hbmRdLFxuICAgICAgZXhwb3J0czoge1xuICAgICAgICAuLi5wcm9wcy5leHBvcnRzLFxuICAgICAgICBWRVJTSU9OOiB2ZXJzaW9uQ29tbWFuZCxcbiAgICAgIH0sXG4gICAgICAvLyBjaGVjayBpZiBiYXNlIGlzIGFscmVhZHkgcmVsZWFzZWRcbiAgICAgIGNvbmRpdGlvbjogYGdpdCBkZXNjcmliZSAtLWV4YWN0LW1hdGNoICR7YmFzZUJyYW5jaH1gLFxuICAgICAgcHJvamVjdERlc2NyaXB0aW9uOiBwcm9wcy5wcm9qZWN0RGVzY3JpcHRpb24gPz8gYFJlbGVhc2UgJHtwcm9wcy5yZXBvLm93bmVyfS8ke3Byb3BzLnJlcG8ucmVwb30sIGJyYW5jaCAke2Jhc2VCcmFuY2h9YCxcbiAgICB9KTtcbiAgfVxufVxuIl19