Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .changeset/purple-brooms-shout.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"vercel": minor
---

[cli] add telemetry for --help flag
11 changes: 6 additions & 5 deletions packages/cli/src/commands/alias/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -35,16 +35,17 @@ export default async function alias(client: Client) {
return 1;
}

if (parsedArguments.flags['--help']) {
output.print(help(aliasCommand, { columns: client.stderr.columns }));
return 2;
}

const { subcommand, args, subcommandOriginal } = getSubcommand(
parsedArguments.args.slice(1),
COMMAND_CONFIG
);

if (parsedArguments.flags['--help']) {
telemetryClient.trackCliFlagHelp('alias', subcommand);
output.print(help(aliasCommand, { columns: client.stderr.columns }));
return 2;
}

switch (subcommand) {
case 'ls':
telemetryClient.trackCliSubcommandLs(subcommandOriginal);
Expand Down
1 change: 1 addition & 0 deletions packages/cli/src/commands/bisect/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ export default async function bisect(client: Client): Promise<number> {
});

if (parsedArgs.flags['--help']) {
telemetry.trackCliFlagHelp('bisect');
output.print(help(bisectCommand, { columns: client.stderr.columns }));
return 2;
}
Expand Down
1 change: 1 addition & 0 deletions packages/cli/src/commands/build/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,7 @@ export default async function main(client: Client): Promise<number> {
}

if (parsedArgs.flags['--help']) {
telemetryClient.trackCliFlagHelp('build');
output.print(help(buildCommand, { columns: client.stderr.columns }));
return 2;
}
Expand Down
10 changes: 6 additions & 4 deletions packages/cli/src/commands/certs/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -40,15 +40,17 @@ export default async function main(client: Client) {
return 1;
}

const { subcommand, subcommandOriginal, args } = getSubcommand(
parsedArgs.args.slice(1),
COMMAND_CONFIG
);

if (parsedArgs.flags['--help']) {
telemetry.trackCliFlagHelp('certs', subcommand);
output.print(help(certsCommand, { columns: client.stderr.columns }));
return 2;
}

const { subcommand, subcommandOriginal, args } = getSubcommand(
parsedArgs.args.slice(1),
COMMAND_CONFIG
);
switch (subcommand) {
case 'issue':
telemetry.trackCliSubcommandIssue(subcommandOriginal);
Expand Down
1 change: 1 addition & 0 deletions packages/cli/src/commands/deploy/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,7 @@ export default async (client: Client): Promise<number> => {
}

if (parsedArguments.flags['--help']) {
telemetryClient.trackCliFlagHelp('deploy');
output.print(help(deployCommand, { columns: client.stderr.columns }));
return 2;
}
Expand Down
2 changes: 1 addition & 1 deletion packages/cli/src/commands/dev/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -65,11 +65,11 @@ export default async function main(client: Client) {

telemetry.trackCliFlagConfirm(parsedArgs.flags['--confirm']);
telemetry.trackCliFlagYes(parsedArgs.flags['--yes']);
telemetry.trackCliFlagHelp(parsedArgs.flags['--help']);
telemetry.trackCliOptionPort(parsedArgs.flags['--port']);
telemetry.trackCliOptionListen(parsedArgs.flags['--listen']);

if (parsedArgs.flags['--help']) {
telemetry.trackCliFlagHelp('dev');
output.print(help(devCommand, { columns: client.stderr.columns }));
return 2;
}
Expand Down
10 changes: 6 additions & 4 deletions packages/cli/src/commands/dns/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -40,15 +40,17 @@ export default async function dns(client: Client) {
},
});

const { subcommand, subcommandOriginal, args } = getSubcommand(
parsedArgs.args.slice(1),
COMMAND_CONFIG
);

if (parsedArgs.flags['--help']) {
telemetry.trackCliFlagHelp('dns', subcommand);
output.print(help(dnsCommand, { columns: client.stderr.columns }));
return 2;
}

const { subcommand, subcommandOriginal, args } = getSubcommand(
parsedArgs.args.slice(1),
COMMAND_CONFIG
);
switch (subcommand) {
case 'add':
telemetry.trackCliSubcommandAdd(subcommandOriginal);
Expand Down
10 changes: 6 additions & 4 deletions packages/cli/src/commands/domains/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -45,15 +45,17 @@ export default async function main(client: Client) {
},
});

const { subcommand, args, subcommandOriginal } = getSubcommand(
parsedArgs.args.slice(1),
COMMAND_CONFIG
);

if (parsedArgs.flags['--help']) {
telemetry.trackCliFlagHelp('domains', subcommand);
output.print(help(domainsCommand, { columns: client.stderr.columns }));
return 2;
}

const { subcommand, args, subcommandOriginal } = getSubcommand(
parsedArgs.args.slice(1),
COMMAND_CONFIG
);
switch (subcommand) {
case 'add':
telemetry.trackCliSubcommandAdd(subcommandOriginal);
Expand Down
6 changes: 4 additions & 2 deletions packages/cli/src/commands/env/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -43,13 +43,15 @@ export default async function main(client: Client) {
return 1;
}

const subArgs = parsedArgs.args.slice(1);
const { subcommand, args } = getSubcommand(subArgs, COMMAND_CONFIG);

if (parsedArgs.flags['--help']) {
telemetryClient.trackCliFlagHelp('env', subcommand);
output.print(help(envCommand, { columns: client.stderr.columns }));
return 2;
}

const subArgs = parsedArgs.args.slice(1);
const { subcommand, args } = getSubcommand(subArgs, COMMAND_CONFIG);
const { cwd, config } = client;

const target =
Expand Down
6 changes: 4 additions & 2 deletions packages/cli/src/commands/git/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,11 @@ export default async function main(client: Client) {
},
});

parsedArgs.args = parsedArgs.args.slice(1);
subcommand = parsedArgs.args[0];

if (parsedArgs.flags['--help']) {
telemetry.trackCliFlagHelp('git', subcommand);
output.print(help(gitCommand, { columns: client.stderr.columns }));
return 2;
}
Expand All @@ -49,8 +53,6 @@ export default async function main(client: Client) {
parsedArgs.flags['--yes'] = parsedArgs.flags['--confirm'];
}

parsedArgs.args = parsedArgs.args.slice(1);
subcommand = parsedArgs.args[0];
const args = parsedArgs.args.slice(1);
const autoConfirm = Boolean(parsedArgs.flags['--yes']);
const { cwd } = client;
Expand Down
1 change: 1 addition & 0 deletions packages/cli/src/commands/init/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ export default async function main(client: Client) {
});

if (parsedArgs.flags['--help']) {
telemetry.trackCliFlagHelp('init');
output.print(help(initCommand, { columns: client.stderr.columns }));
return 2;
}
Expand Down
1 change: 1 addition & 0 deletions packages/cli/src/commands/inspect/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ export default async function inspect(client: Client) {
}

if (parsedArguments.flags['--help']) {
telemetry.trackCliFlagHelp('inspect');
print(help(inspectCommand, { columns: client.stderr.columns }));
return 2;
}
Expand Down
7 changes: 7 additions & 0 deletions packages/cli/src/commands/install/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,18 @@ import { help } from '../help';
import { add } from '../integration/add';
import { installCommand } from './command';
import output from '../../output-manager';
import { InstallTelemetryClient } from '../../util/telemetry/commands/install';

export default async function install(client: Client) {
const { args, flags } = parseArguments(client.argv.slice(2));
const telemetry = new InstallTelemetryClient({
opts: {
store: client.telemetryEventStore,
},
});

if (flags['--help']) {
telemetry.trackCliFlagHelp('install');
output.print(help(installCommand, { columns: client.stderr.columns }));
return 2;
}
Expand Down
5 changes: 5 additions & 0 deletions packages/cli/src/commands/integration/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ export default async function main(client: Client) {
const needHelp = flags['--help'];

if (!subcommand && needHelp) {
telemetry.trackCliFlagHelp('integration');
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

integration breaks with normal pattern and handles help display per subcommand.

output.print(help(integrationCommand, { columns: client.stderr.columns }));
return 2;
}
Expand All @@ -56,6 +57,7 @@ export default async function main(client: Client) {
switch (subcommand) {
case 'add': {
if (needHelp) {
telemetry.trackCliFlagHelp('integration', 'add');
printHelp(addSubcommand);
return 2;
}
Expand All @@ -64,6 +66,7 @@ export default async function main(client: Client) {
}
case 'list': {
if (needHelp) {
telemetry.trackCliFlagHelp('integration', 'list');
printHelp(listSubcommand);
return 2;
}
Expand All @@ -72,6 +75,7 @@ export default async function main(client: Client) {
}
case 'open': {
if (needHelp) {
telemetry.trackCliFlagHelp('integration', 'open');
printHelp(openSubcommand);
return 2;
}
Expand All @@ -80,6 +84,7 @@ export default async function main(client: Client) {
}
case 'remove': {
if (needHelp) {
telemetry.trackCliFlagHelp('integration', 'remove');
printHelp(removeSubcommand);
return 2;
}
Expand Down
1 change: 1 addition & 0 deletions packages/cli/src/commands/link/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ export default async function link(client: Client) {
});

if (parsedArgs.flags['--help']) {
telemetry.trackCliFlagHelp('link');
output.print(help(linkCommand, { columns: client.stderr.columns }));
return 2;
}
Expand Down
1 change: 1 addition & 0 deletions packages/cli/src/commands/list/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ export default async function list(client: Client) {
});

if (parsedArgs.flags['--help']) {
telemetry.trackCliFlagHelp('list');
print(help(listCommand, { columns: client.stderr.columns }));
return 2;
}
Expand Down
8 changes: 8 additions & 0 deletions packages/cli/src/commands/login/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ import { updateCurrentTeamAfterLogin } from '../../util/login/update-current-tea
import { getFlagsSpecification } from '../../util/get-flags-specification';
import handleError from '../../util/handle-error';
import output from '../../output-manager';
import { LoginTelemetryClient } from '../../util/telemetry/commands/login';

export default async function login(client: Client): Promise<number> {
// user is not currently authenticated on this machine
Expand All @@ -32,6 +33,12 @@ export default async function login(client: Client): Promise<number> {

const flagsSpecification = getFlagsSpecification(loginCommand.options);

const telemetry = new LoginTelemetryClient({
opts: {
store: client.telemetryEventStore,
},
});

// Parse CLI args
try {
parsedArgs = parseArguments(client.argv.slice(2), flagsSpecification);
Expand All @@ -41,6 +48,7 @@ export default async function login(client: Client): Promise<number> {
}

if (parsedArgs.flags['--help']) {
telemetry.trackCliFlagHelp('login');
output.print(help(loginCommand, { columns: client.stderr.columns }));
return 2;
}
Expand Down
8 changes: 8 additions & 0 deletions packages/cli/src/commands/logout/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import { help } from '../help';
import { logoutCommand } from './command';
import { getFlagsSpecification } from '../../util/get-flags-specification';
import output from '../../output-manager';
import { LogoutTelemetryClient } from '../../util/telemetry/commands/logout';

export default async function main(client: Client): Promise<number> {
const { authConfig, config } = client;
Expand All @@ -20,6 +21,12 @@ export default async function main(client: Client): Promise<number> {

const flagsSpecification = getFlagsSpecification(logoutCommand.options);

const telemetry = new LogoutTelemetryClient({
opts: {
store: client.telemetryEventStore,
},
});

// Parse CLI args
try {
parsedArgs = parseArguments(client.argv.slice(2), flagsSpecification);
Expand All @@ -29,6 +36,7 @@ export default async function main(client: Client): Promise<number> {
}

if (parsedArgs.flags['--help']) {
telemetry.trackCliFlagHelp('logout');
output.print(help(logoutCommand, { columns: client.stderr.columns }));
return 2;
}
Expand Down
11 changes: 6 additions & 5 deletions packages/cli/src/commands/logs/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -54,17 +54,18 @@ export default async function logs(client: Client) {
}
}

if (parsedArguments.flags['--help']) {
print(help(logsCommand, { columns: client.stderr.columns }));
return 2;
}

const telemetry = new LogsTelemetryClient({
opts: {
store: client.telemetryEventStore,
},
});

if (parsedArguments.flags['--help']) {
telemetry.trackCliFlagHelp('logs');
print(help(logsCommand, { columns: client.stderr.columns }));
return 2;
}

if (parsedArguments.args[0] === logsCommand.name) {
parsedArguments.args.shift();
}
Expand Down
9 changes: 5 additions & 4 deletions packages/cli/src/commands/project/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -39,15 +39,16 @@ export default async function main(client: Client) {
return 1;
}

parsedArgs.args = parsedArgs.args.slice(1);
subcommand = parsedArgs.args[0] || 'list';
const args = parsedArgs.args.slice(1);

if (parsedArgs.flags['--help']) {
telemetryClient.trackCliFlagHelp('project', parsedArgs.args[0]);
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Make a helper here to only track known values.

output.print(help(projectCommand, { columns: client.stderr.columns }));
return 2;
}

parsedArgs.args = parsedArgs.args.slice(1);
subcommand = parsedArgs.args[0] || 'list';
const args = parsedArgs.args.slice(1);

const { contextName } = await getScope(client);

switch (subcommand) {
Expand Down
1 change: 1 addition & 0 deletions packages/cli/src/commands/promote/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ export default async (client: Client): Promise<number> => {
});

if (parsedArgs.flags['--help']) {
telemetry.trackCliFlagHelp('promote');
output.print(help(promoteCommand, { columns: client.stderr.columns }));
return 2;
}
Expand Down
Loading