Skip to content
Snippets Groups Projects
Commit f3109e89 authored by michael.minelli's avatar michael.minelli
Browse files

Add settings command with set Api Url

parent 17ac98f9
No related branches found
No related tags found
No related merge requests found
Pipeline #34445 passed
...@@ -123,6 +123,7 @@ ${ TextStyle.CODE(' dojo upgrade ') }`, { ...@@ -123,6 +123,7 @@ ${ TextStyle.CODE(' dojo upgrade ') }`, {
TagCommand.registerOnCommand(this.program); TagCommand.registerOnCommand(this.program);
CompletionCommand.registerOnCommand(this.program); CompletionCommand.registerOnCommand(this.program);
UpgradeCommand.registerOnCommand(this.program); UpgradeCommand.registerOnCommand(this.program);
SettingsCommand.registerOnCommand(this.program);
} }
} }
......
import CommanderCommand from '../CommanderCommand.js';
import SettingsApiCommand from './subcommands/SettingsApiCommand';
class SettingsCommand extends CommanderCommand {
protected commandName: string = 'settings';
protected defineCommand() {
this.command
.description('manage Dojo settings');
}
protected defineSubCommands() {
SettingsApiCommand.registerOnCommand(this.command);
}
protected async commandAction(): Promise<void> {
// No action
}
}
export default new SettingsCommand();
\ No newline at end of file
import CommanderCommand from '../../CommanderCommand.js';
import DojoBackendManager from '../../../managers/DojoBackendManager';
import { Option } from 'commander';
class SettingsApiCommand extends CommanderCommand {
protected commandName: string = 'api';
protected defineCommand() {
this.command
.description('change Dojo API URL')
.option('-u, --url <string>', 'specify the url of the Dojo API')
.addOption(new Option('--clean', 'clean the Dojo API settings').conflicts('url'))
.action(this.commandAction.bind(this));
}
protected async commandAction(options: { url: string, clean: boolean }): Promise<void> {
if ( options.clean ) {
await DojoBackendManager.cleanApiUrl();
} else if ( options.url ) {
await DojoBackendManager.setApiUrl(options.url);
} else {
await DojoBackendManager.askApiUrl(true);
}
}
}
export default new SettingsApiCommand();
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment