openvibers/openvibe.host Commits

Complete Compare stateless lifecycle declaration (#379)

OP OpenVibers committed 2 days ago · 152ae5ca8e · 2 files, +2 −1

Changes

ddiff --git a/scripts/register-compare.py b/scripts/register-compare.py
iindex 2364dc1..34fe510 100644
---- a/scripts/register-compare.py
++++ b/scripts/register-compare.py
@@@ -26,6 +26,7 @@ def entry():
'shutdown': {'signal': 'SIGTERM', 'deadlineSeconds': 10, 'drains': ['HTTP server closed']},
'startupRecovery': {'resumes': [{'kind': 'state', 'what': 'Refetch public sources after ten-minute cache reset'}]},
'rollback': {'conditions': ['Ready probe fails'], 'window': 'Any time', 'blockers': {'none': 'Stateless; no migrations'}},
++ 'contracts': {'none': 'Stateless public reads; no runtime Contracts dependency. Comparison schema release is held separately.'},
'leases': {'none': 'No workers or writes'},
},
}
ddiff --git a/test/compare-registration.test.js b/test/compare-registration.test.js
iindex 85c5f67..e3428a4 100644
---- a/test/compare-registration.test.js
++++ b/test/compare-registration.test.js
@@@ -3,7 +3,7 @@ const assert=require('node:assert/strict'),fs=require('node:fs'),os=require('nod
const dir=fs.mkdtempSync(path.join(os.tmpdir(),'compare-inventory-')),file=path.join(dir,'host.json');
try {
const run=()=>spawnSync('python3',[path.join(__dirname,'../scripts/register-compare.py'),file],{encoding:'utf8'});
-- fs.writeFileSync(file,JSON.stringify({services:{existing:{port:5000}}}));assert.equal(run().status,0);let d=JSON.parse(fs.readFileSync(file));assert.equal(d.services.existing.port,5000);assert.equal(d.services.compare.port,5280);assert.deepEqual(d.services.compare.databases,[]);assert.equal(run().status,0);
++ fs.writeFileSync(file,JSON.stringify({services:{existing:{port:5000}}}));assert.equal(run().status,0);let d=JSON.parse(fs.readFileSync(file));assert.equal(d.services.existing.port,5000);assert.equal(d.services.compare.port,5280);assert.deepEqual(d.services.compare.databases,[]);assert.deepEqual(require('../lib/lifecycle').check(d.services.compare.lifecycle,{runs:true}),[]);assert.equal(run().status,0);
fs.writeFileSync(file,JSON.stringify({services:{collision:{port:5280}}}));assert.notEqual(run().status,0);assert(!JSON.parse(fs.readFileSync(file)).services.compare);
console.log('compare registration: preserves inventory, idempotent, rejects port collision');
} finally {fs.rmSync(dir,{recursive:true,force:true});}