37 lines
1.1 KiB
Bash
Executable File
37 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
node --input-type=module <<'NODE'
|
|
import fs from 'node:fs';
|
|
|
|
const readJson = (path) => JSON.parse(fs.readFileSync(path, 'utf8'));
|
|
|
|
const checks = {
|
|
packageVersion: readJson('/app/package.json').version,
|
|
interfacesVersion: readJson('/app/node_modules/@serve.zone/interfaces/package.json').version,
|
|
remoteingressVersion: readJson('/app/node_modules/@serve.zone/remoteingress/package.json').version,
|
|
hasCli: fs.existsSync('/app/cli.js'),
|
|
hasWebBundle: fs.existsSync('/app/dist_serve/bundle.js'),
|
|
};
|
|
|
|
await import('/app/dist_ts/index.js');
|
|
|
|
if (checks.packageVersion !== '13.25.0') {
|
|
throw new Error(`Unexpected dcrouter package version ${checks.packageVersion}`);
|
|
}
|
|
if (checks.interfacesVersion !== '5.4.6') {
|
|
throw new Error(`Unexpected interfaces version ${checks.interfacesVersion}`);
|
|
}
|
|
if (checks.remoteingressVersion !== '4.17.1') {
|
|
throw new Error(`Unexpected remoteingress version ${checks.remoteingressVersion}`);
|
|
}
|
|
if (!checks.hasCli) {
|
|
throw new Error('Missing cli.js');
|
|
}
|
|
if (!checks.hasWebBundle) {
|
|
throw new Error('Missing web bundle');
|
|
}
|
|
|
|
console.log(JSON.stringify(checks));
|
|
NODE
|