feat(dev-infra): standard CLI commands using yargs (#36326)
Creates a standard model for CLI commands provided by ng-dev. Allows for us to have any of the tools/scripts extend to be included in the ng-dev command, or be standalone using the same yargs parser. PR Close #36326
This commit is contained in:

committed by
Kara Erickson

parent
326240eb91
commit
43006bcc45
@ -3,6 +3,7 @@ load("@npm_bazel_typescript//:index.bzl", "ts_library")
|
||||
ts_library(
|
||||
name = "pullapprove",
|
||||
srcs = [
|
||||
"cli.ts",
|
||||
"group.ts",
|
||||
"logging.ts",
|
||||
"parse-yaml.ts",
|
||||
@ -16,9 +17,11 @@ ts_library(
|
||||
"@npm//@types/node",
|
||||
"@npm//@types/shelljs",
|
||||
"@npm//@types/yaml",
|
||||
"@npm//@types/yargs",
|
||||
"@npm//minimatch",
|
||||
"@npm//shelljs",
|
||||
"@npm//tslib",
|
||||
"@npm//yaml",
|
||||
"@npm//yargs",
|
||||
],
|
||||
)
|
||||
|
19
dev-infra/pullapprove/cli.ts
Normal file
19
dev-infra/pullapprove/cli.ts
Normal file
@ -0,0 +1,19 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright Google Inc. All Rights Reserved.
|
||||
*
|
||||
* Use of this source code is governed by an MIT-style license that can be
|
||||
* found in the LICENSE file at https://angular.io/license
|
||||
*/
|
||||
import * as yargs from 'yargs';
|
||||
import {verify} from './verify';
|
||||
|
||||
/** Build the parser for the pullapprove commands. */
|
||||
export function buildPullapproveParser(localYargs: yargs.Argv) {
|
||||
return localYargs.help().strict().demandCommand().command(
|
||||
'verify', 'Verify the pullapprove config', {}, () => verify());
|
||||
}
|
||||
|
||||
if (require.main === module) {
|
||||
buildPullapproveParser(yargs).parse();
|
||||
}
|
Reference in New Issue
Block a user