feat(dev-infra): Allow local user ng-dev configuration to disable commit message wizard (#38701)
As not all users, particularly contributors consistently contributing with a deep understanding of our commit message guidelines, will not want to rely on the commit message wizard, we allow a user to opt out of using this wizard during commit message creation. PR Close #38701
This commit is contained in:
parent
1ed6913b8b
commit
1373a98e25
@ -7,7 +7,8 @@
|
|||||||
*/
|
*/
|
||||||
import {writeFileSync} from 'fs';
|
import {writeFileSync} from 'fs';
|
||||||
|
|
||||||
import {info} from '../utils/console';
|
import {getUserConfig} from '../utils/config';
|
||||||
|
import {debug, info} from '../utils/console';
|
||||||
|
|
||||||
import {buildCommitMessage} from './builder';
|
import {buildCommitMessage} from './builder';
|
||||||
|
|
||||||
@ -25,10 +26,15 @@ const defaultCommitMessage = `<type>(<scope>): <summary>
|
|||||||
|
|
||||||
export async function runWizard(
|
export async function runWizard(
|
||||||
args: {filePath: string, source?: PrepareCommitMsgHookSource, commitSha?: string}) {
|
args: {filePath: string, source?: PrepareCommitMsgHookSource, commitSha?: string}) {
|
||||||
// TODO(josephperrott): Add support for skipping wizard with local untracked config file
|
if (getUserConfig().commitMessage?.disableWizard) {
|
||||||
|
debug('Skipping commit message wizard due to enabled `commitMessage.disableWizard` option in');
|
||||||
|
debug('user config.');
|
||||||
|
process.exitCode = 0;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (args.source !== undefined) {
|
if (args.source !== undefined) {
|
||||||
info(`Skipping commit message wizard due because the commit was created via '${
|
info(`Skipping commit message wizard because the commit was created via '${
|
||||||
args.source}' source`);
|
args.source}' source`);
|
||||||
process.exitCode = 0;
|
process.exitCode = 0;
|
||||||
return;
|
return;
|
||||||
|
@ -120,7 +120,7 @@ function readConfigFile(configPath: string, returnEmptyObjectOnError = false): o
|
|||||||
debug(e);
|
debug(e);
|
||||||
return {};
|
return {};
|
||||||
}
|
}
|
||||||
error(`Could not read configuration file at ${configPath}.'`);
|
error(`Could not read configuration file at ${configPath}.`);
|
||||||
error(e);
|
error(e);
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
}
|
}
|
||||||
@ -158,7 +158,7 @@ export function getRepoBaseDir() {
|
|||||||
* defined.
|
* defined.
|
||||||
*
|
*
|
||||||
* @returns The user configuration object, or an empty object if no user configuration file is
|
* @returns The user configuration object, or an empty object if no user configuration file is
|
||||||
* present. The object is a untyped object as there are no required user configurations.
|
* present. The object is an untyped object as there are no required user configurations.
|
||||||
*/
|
*/
|
||||||
export function getUserConfig() {
|
export function getUserConfig() {
|
||||||
// If the global config is not defined, load it from the file system.
|
// If the global config is not defined, load it from the file system.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user