feat: initial CI/CD pipeline, Dockerfile, K8s manifests, build+test scripts
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
|
||||
const distDir = path.join(__dirname, 'dist');
|
||||
|
||||
// Run build first if dist doesn't exist
|
||||
if (!fs.existsSync(distDir)) {
|
||||
require('./build.js');
|
||||
}
|
||||
|
||||
const indexPath = path.join(distDir, 'index.html');
|
||||
if (!fs.existsSync(indexPath)) {
|
||||
console.error('FAIL: dist/index.html not found');
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
const html = fs.readFileSync(indexPath, 'utf8');
|
||||
const checks = [
|
||||
['title', html.includes('<title>Signal Ledger</title>')],
|
||||
['header', html.includes('<h1>Signal Ledger</h1>')],
|
||||
['footer', html.includes('Signal Ledger is a subsidiary of Jopdorp.')],
|
||||
];
|
||||
|
||||
let failed = false;
|
||||
for (const [name, pass] of checks) {
|
||||
if (pass) {
|
||||
console.log(`PASS: ${name}`);
|
||||
} else {
|
||||
console.error(`FAIL: ${name}`);
|
||||
failed = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (failed) process.exit(1);
|
||||
console.log('All tests passed.');
|
||||
Reference in New Issue
Block a user