mirror of
https://github.com/hcengineering/platform.git
synced 2026-08-21 03:42:24 +02:00
git-subtree-dir: foundations/communication git-subtree-mainline:43fb903924git-subtree-split:f65deaa24b
263 lines
8.9 KiB
JSON
263 lines
8.9 KiB
JSON
/**
|
|
* This configuration file defines custom commands for the "rush" command-line.
|
|
* More documentation is available on the Rush website: https://rushjs.io
|
|
*/
|
|
{
|
|
"$schema": "https://developer.microsoft.com/json-schemas/rush/v5/command-line.schema.json",
|
|
|
|
"phases": [
|
|
{
|
|
"name": "_phase:build",
|
|
"dependencies": {
|
|
"upstream": ["_phase:build"]
|
|
},
|
|
"ignoreMissingScript": true,
|
|
"allowWarningsOnSuccess": false
|
|
},
|
|
{
|
|
"name": "_phase:validate",
|
|
"dependencies": {
|
|
"self": ["_phase:build"],
|
|
"upstream": ["_phase:validate", "_phase:build"]
|
|
},
|
|
"ignoreMissingScript": true,
|
|
"allowWarningsOnSuccess": false
|
|
},
|
|
{
|
|
"name": "_phase:bundle",
|
|
"dependencies": {
|
|
"self": ["_phase:build"]
|
|
},
|
|
"ignoreMissingScript": true,
|
|
"allowWarningsOnSuccess": false
|
|
},
|
|
{
|
|
"name": "_phase:test",
|
|
"dependencies": {
|
|
"self": ["_phase:build"],
|
|
"upstream": ["_phase:validate"]
|
|
},
|
|
"ignoreMissingScript": true,
|
|
"allowWarningsOnSuccess": true
|
|
}
|
|
],
|
|
"commands": [
|
|
{
|
|
"commandKind": "global",
|
|
"name": "coverage",
|
|
"summary": "Run tests, merge LCOV and generate HTML coverage",
|
|
"description": "Run 'rush test', then merge per-package LCOV files and generate HTML coverage in coverage/html",
|
|
"safeForSimultaneousRushProcesses": true,
|
|
"shellCommand": "rush test && node scripts/merge-coverage.js && node scripts/generate-coverage-html.js coverage/lcov.info coverage/html"
|
|
},
|
|
{
|
|
"commandKind": "phased",
|
|
"summary": "Do testing",
|
|
"name": "test",
|
|
"phases": ["_phase:build", "_phase:test"],
|
|
"enableParallelism": true,
|
|
"incremental": true
|
|
},
|
|
{
|
|
"commandKind": "phased",
|
|
"name": "build",
|
|
"summary": "build",
|
|
"phases": ["_phase:build"],
|
|
"enableParallelism": true,
|
|
"incremental": true,
|
|
"watchOptions": {
|
|
"alwaysWatch": false,
|
|
"watchPhases": ["_phase:build"]
|
|
}
|
|
},
|
|
{
|
|
"commandKind": "phased",
|
|
"name": "validate",
|
|
"phases": ["_phase:validate"],
|
|
"summary": "validate",
|
|
"enableParallelism": true,
|
|
"incremental": true
|
|
},
|
|
{
|
|
"commandKind": "bulk",
|
|
"name": "format",
|
|
"summary": "Format",
|
|
"description": "Perform a formatting",
|
|
"enableParallelism": true,
|
|
"incremental": false,
|
|
"ignoreMissingScript": true,
|
|
"safeForSimultaneousRushProcesses": true,
|
|
"disableBuildCache": true
|
|
},
|
|
{
|
|
"commandKind": "bulk",
|
|
"name": "lint",
|
|
"summary": "Lint",
|
|
"description": "Linting",
|
|
"enableParallelism": true,
|
|
"incremental": false,
|
|
"ignoreMissingScript": true,
|
|
"safeForSimultaneousRushProcesses": true,
|
|
"disableBuildCache": true
|
|
},
|
|
{
|
|
"commandKind": "bulk",
|
|
"name": "lint:fix",
|
|
"summary": "Lint & fix",
|
|
"description": "Linting and fixing",
|
|
"enableParallelism": true,
|
|
"incremental": false,
|
|
"ignoreMissingScript": true,
|
|
"safeForSimultaneousRushProcesses": true,
|
|
"disableBuildCache": true
|
|
},
|
|
{
|
|
"commandKind": "global",
|
|
"name": "bump-changes",
|
|
"summary": "Bump changes from tag",
|
|
"description": "Bump changes from previous tag",
|
|
"safeForSimultaneousRushProcesses": true,
|
|
"shellCommand": "./common/scripts/node_modules/.bin/bump-changes-from-tag"
|
|
}
|
|
],
|
|
/**
|
|
* Custom "parameters" introduce new parameters for specified Rush command-line commands.
|
|
* For example, you might define a "--production" parameter for the "rush build" command.
|
|
*/
|
|
"parameters": [
|
|
{
|
|
"parameterKind": "flag",
|
|
"longName": "--lite",
|
|
"shortName": "-l",
|
|
"description": "Enable Heft lite building option, will skip some phases.",
|
|
"associatedCommands": ["build"]
|
|
},
|
|
{
|
|
"parameterKind": "flag",
|
|
"longName": "--clean",
|
|
"description": "Enable Heft clean building option",
|
|
"associatedCommands": ["build"]
|
|
}
|
|
// {
|
|
// /**
|
|
// * (Required) Determines the type of custom parameter.
|
|
// * A "flag" is a custom command-line parameter whose presence acts as an on/off switch.
|
|
// */
|
|
// "parameterKind": "flag",
|
|
//
|
|
// /**
|
|
// * (Required) The long name of the parameter. It must be lower-case and use dash delimiters.
|
|
// */
|
|
// "longName": "--my-flag",
|
|
//
|
|
// /**
|
|
// * An optional alternative short name for the parameter. It must be a dash followed by a single
|
|
// * lower-case or upper-case letter, which is case-sensitive.
|
|
// *
|
|
// * NOTE: The Rush developers recommend that automation scripts should always use the long name
|
|
// * to improve readability. The short name is only intended as a convenience for humans.
|
|
// * The alphabet letters run out quickly, and are difficult to memorize, so *only* use
|
|
// * a short name if you expect the parameter to be needed very often in everyday operations.
|
|
// */
|
|
// "shortName": "-m",
|
|
//
|
|
// /**
|
|
// * (Required) A long description to be shown in the command-line help.
|
|
// *
|
|
// * Whenever you introduce commands/parameters, taking a little time to write meaningful
|
|
// * documentation can make a big difference for the developer experience in your repo.
|
|
// */
|
|
// "description": "A custom flag parameter that is passed to the scripts that are invoked when building projects",
|
|
//
|
|
// /**
|
|
// * (Required) A list of custom commands and/or built-in Rush commands that this parameter may
|
|
// * be used with. The parameter will be appended to the shell command that Rush invokes.
|
|
// */
|
|
// "associatedCommands": ["build", "rebuild"]
|
|
// },
|
|
//
|
|
// {
|
|
// /**
|
|
// * (Required) Determines the type of custom parameter.
|
|
// * A "string" is a custom command-line parameter whose value is a simple text string.
|
|
// */
|
|
// "parameterKind": "string",
|
|
// "longName": "--my-string",
|
|
// "description": "A custom string parameter for the \"my-global-command\" custom command",
|
|
//
|
|
// "associatedCommands": ["my-global-command"],
|
|
//
|
|
// /**
|
|
// * The name of the argument, which will be shown in the command-line help.
|
|
// *
|
|
// * For example, if the parameter name is '--count" and the argument name is "NUMBER",
|
|
// * then the command-line help would display "--count NUMBER". The argument name must
|
|
// * be comprised of upper-case letters, numbers, and underscores. It should be kept short.
|
|
// */
|
|
// "argumentName": "SOME_TEXT",
|
|
//
|
|
// /**
|
|
// * If true, this parameter must be included with the command. The default is false.
|
|
// */
|
|
// "required": false
|
|
// },
|
|
//
|
|
// {
|
|
// /**
|
|
// * (Required) Determines the type of custom parameter.
|
|
// * A "choice" is a custom command-line parameter whose argument must be chosen from a list of
|
|
// * allowable alternatives.
|
|
// */
|
|
// "parameterKind": "choice",
|
|
// "longName": "--my-choice",
|
|
// "description": "A custom choice parameter for the \"my-global-command\" custom command",
|
|
//
|
|
// "associatedCommands": ["my-global-command"],
|
|
//
|
|
// /**
|
|
// * If true, this parameter must be included with the command. The default is false.
|
|
// */
|
|
// "required": false,
|
|
//
|
|
// /**
|
|
// * Normally if a parameter is omitted from the command line, it will not be passed
|
|
// * to the shell command. this value will be inserted by default. Whereas if a "defaultValue"
|
|
// * is defined, the parameter will always be passed to the shell command, and will use the
|
|
// * default value if unspecified. The value must be one of the defined alternatives.
|
|
// */
|
|
// "defaultValue": "vanilla",
|
|
//
|
|
// /**
|
|
// * (Required) A list of alternative argument values that can be chosen for this parameter.
|
|
// */
|
|
// "alternatives": [
|
|
// {
|
|
// /**
|
|
// * A token that is one of the alternatives that can be used with the choice parameter,
|
|
// * e.g. "vanilla" in "--flavor vanilla".
|
|
// */
|
|
// "name": "vanilla",
|
|
//
|
|
// /**
|
|
// * A detailed description for the alternative that can be shown in the command-line help.
|
|
// *
|
|
// * Whenever you introduce commands/parameters, taking a little time to write meaningful
|
|
// * documentation can make a big difference for the developer experience in your repo.
|
|
// */
|
|
// "description": "Use the vanilla flavor (the default)"
|
|
// },
|
|
//
|
|
// {
|
|
// "name": "chocolate",
|
|
// "description": "Use the chocolate flavor"
|
|
// },
|
|
//
|
|
// {
|
|
// "name": "strawberry",
|
|
// "description": "Use the strawberry flavor"
|
|
// }
|
|
// ]
|
|
// }
|
|
]
|
|
}
|