build.js•1.18 kB
#!/usr/bin/env node
import { execSync } from 'child_process';
import { existsSync, mkdirSync, copyFileSync } from 'fs';
import { dirname } from 'path';
console.log('Building Gemini MCP Server...');
// Create dist directory if it doesn't exist
if (!existsSync('./dist')) {
mkdirSync('./dist');
}
// Compile TypeScript
try {
console.log('Compiling TypeScript...');
execSync('tsc', { stdio: 'inherit' });
console.log('TypeScript compilation complete.');
} catch (error) {
console.error('TypeScript compilation failed:', error.message);
process.exit(1);
}
// Copy index-modern.js to dist
try {
console.log('Copying index-modern.js to dist directory...');
if (existsSync('./dist/index-modern.js')) {
console.log('dist/index-modern.js already exists, skipping copy.');
} else {
if (existsSync('./index-modern.js')) {
copyFileSync('./index-modern.js', './dist/index-modern.js');
console.log('Copied index-modern.js to dist directory.');
} else {
console.log('index-modern.js not found, skipping copy.');
}
}
} catch (error) {
console.error('Error copying index-modern.js:', error.message);
}
console.log('Build complete!');