UNPKG

bitbucket-server-utils-cli

Version:

[![NPM](https://img.shields.io/npm/v/bitbucket-server-utils-cli.svg?style=flat-square)](https://www.npmjs.com/package/bitbucket-server-utils-cli)

106 lines 5.52 kB
#!/usr/bin/env node "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 (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); __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 }); var commander_1 = require("commander"); var bitbucket_service_1 = __importDefault(require("./bitbucketserver/bitbucket-service")); var format_string_1 = __importDefault(require("./format-string/format-string")); var gather_1 = __importDefault(require("./state/gather")); var storage_1 = require("./state/storage"); var log_1 = __importStar(require("./utils/log")); var post_pr_comment_1 = __importDefault(require("./post-pr-comment/post-pr-comment")); var delete_pr_comment_1 = __importDefault(require("./delete-pr-comment/delete-pr-comment")); var post_pull_request_comment_if_open_pull_requests_1 = __importDefault(require("./post-pull-request-comment-if-open-pull-requests/post-pull-request-comment-if-open-pull-requests")); var pkgJson = require('../package.json'); function commaSeparatedList(value) { return value.split(','); } var program = new commander_1.Command() .version(pkgJson.version) .command(pkgJson.name) .option('-at, --access-token <token>', 'Bitbucket Server access token') .option('-u, --username <username>', 'Bitbucket Server username') .option('-p, --password <password>', 'Bitbucket Server password') .option('-u, --url <url>', 'Bitbucket Server to use for REST integration (https://bitbucket-server/rest/api/latest)') .option('-p, --projects <projects>', 'Bitbucket Server projects. Example: PROJ_1,PROJ_2,PROJ_3', commaSeparatedList) .option('-rs, --repository-slug <rs>') .option('-prid, --pull-request <prid>') .option('-prtf, --pull-request-title-filter <regexp>', 'Only include pull requests with title matching this regexp.', '.*') .option('-prcid, --pull-request-comment-id <id>') .option('-prcv, --pull-request-comment-version <version>') .option('-sf, --state-file <filename>', 'File to read, and write, state to.') .option('-t, --template <string>', 'String containing Handlebars template.') .option('-sev, --severity <rs>', 'BLOCKER or NORMAL', 'NORMAL') .option('-ck, --comment-key <rs>', 'Some string that identifies the comment. Will ensure same comment is not re-posted if unchanged and replaced if changed.') .option('--log-level <level>', 'Log level DEBUG, INFO or ERROR', 'INFO') .option('-s, --sleep-time <milliseconds>', 'Milliseconds to sleep between HTTP requests.', '300') .option('-dr, --dry-run', 'Dry run, no POST/PUT/DELETE requests.', false) .option('-ias, --ignore-authors-slug <authors>', 'Ignore authors by slug. Example: abc,def,fgh', commaSeparatedList, []) /** * Main actions */ .option('-gs, --gather-state', 'Gather state from Bitbucket Server and store it in a file.') .option('-fc, --format-string', 'Format a string by rendering a Handlebars-template with the state as context.') .option('-pprc, --post-pull-request-comment <comment>', 'Post a pull-request comment') .option('-pprciopr, --post-pull-request-comment-if-open-pull-requests', 'Post pull-request comment if author has open pull-requests to review') .option('-dprc, --delete-pull-request-comment', 'Delete pull-request comment with given ID'); program.parse(process.argv); var options = program.opts(); (0, log_1.setLogLevel)(options.logLevel); (0, log_1.default)('DEBUG', options); var bitbucketService = new bitbucket_service_1.default({ personalAccessToken: options.accessToken, username: options.username, password: options.password, url: options.url, sleepTime: options.sleepTime, dryRun: options.dryRun, }); if (options.gatherState) { (0, gather_1.default)(bitbucketService, options).then(function (state) { (0, storage_1.saveState)(state, options.stateFile); }); } else if (options.formatString) { (0, format_string_1.default)(options); } else if (options.postPullRequestComment) { (0, post_pr_comment_1.default)(bitbucketService, options); } else if (options.deletePullRequestComment) { (0, delete_pr_comment_1.default)(bitbucketService, options); } else if (options.postPullRequestCommentIfOpenPullRequests) { (0, post_pull_request_comment_if_open_pull_requests_1.default)(bitbucketService, options); } else { console.error(JSON.stringify(options)); console.error(program.help()); process.exit(1); } //# sourceMappingURL=cli.js.map