Files
openapi-clean-arch-gen/src/utils/openapi-generator.ts

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);
}
}