25 lines
815 B
TypeScript
25 lines
815 B
TypeScript
import { execSync } from 'child_process';
|
|
import { logStep, logSuccess, logError } from './logger';
|
|
|
|
/** Checks whether `openapi-generator-cli` is available on the PATH. */
|
|
export function checkOpenApiGenerator(): boolean {
|
|
try {
|
|
execSync('openapi-generator-cli version', { stdio: 'ignore' });
|
|
return true;
|
|
} catch (_error) {
|
|
return false;
|
|
}
|
|
}
|
|
|
|
/** Installs `@openapitools/openapi-generator-cli` globally via npm. */
|
|
export function installOpenApiGenerator(): void {
|
|
logStep('Installing @openapitools/openapi-generator-cli...');
|
|
try {
|
|
execSync('npm install -g @openapitools/openapi-generator-cli', { stdio: 'inherit' });
|
|
logSuccess('OpenAPI Generator CLI installed successfully');
|
|
} catch (_error) {
|
|
logError('Error installing OpenAPI Generator CLI');
|
|
process.exit(1);
|
|
}
|
|
}
|