32 lines
883 B
JavaScript
32 lines
883 B
JavaScript
// scripts/parse-comin.js
|
|
import { execSync } from 'child_process';
|
|
import { writeFileSync } from 'fs';
|
|
|
|
try {
|
|
const output = execSync('comin status').toString();
|
|
|
|
// Extract commit ID
|
|
const commitMatch = output.match(/Commit ID (\b[0-9a-f]{40}\b)/);
|
|
const commitId = commitMatch ? commitMatch[1].substring(0, 7) : 'unknown';
|
|
|
|
// Check build success
|
|
const buildSuccess = output.includes('Evaluation succeeded') &&
|
|
output.includes('Built');
|
|
|
|
const result = {
|
|
commitId,
|
|
buildSuccess,
|
|
timestamp: new Date().toISOString()
|
|
};
|
|
|
|
writeFileSync('./src/lib/build-info.json', JSON.stringify(result, null, 2));
|
|
console.log('Build info saved:', result);
|
|
|
|
} catch (error) {
|
|
console.error('Error parsing comin status:', error);
|
|
writeFileSync('./src/lib/build-info.json', JSON.stringify({
|
|
commitId: 'error',
|
|
buildSuccess: false,
|
|
timestamp: new Date().toISOString()
|
|
}));
|
|
}
|