ci(web): run the server suite before building the image

The build job now needs: test, so an image cannot be published with the suite in
red — which is the whole point of this phase. Both jobs live in the same file
because needs: only links jobs within one workflow.

settings-ci.json is committed and contains no secrets: settings-development.json
is gitignored, so CI had nothing to pass to --settings. The one test that cannot
work without a secret is the node-red iron fixture, sealed with the deployment's
own ironPassword; it now reports itself as skipped instead of failing on an hmac
mismatch, and still runs locally against settings-development.json.

Measured locally: 22s and a ~2.0 GB peak for the whole `meteor test` run (its own
mongod included), hence --memory=3g. The meteor-tool download is not cached yet;
the note in the workflow says what that would take.
This commit is contained in:
vjrj 2026-08-01 18:02:31 +02:00
parent e61efc681c
commit 3b04ebceb3
4 changed files with 174 additions and 3 deletions

View file

@ -4,7 +4,8 @@
"scripts": {
"start": "QT_QPA_PLATFORM='' MONGO_URL=mongodb://fuegos:fuegos@localhost:27017/fuegos meteor --settings settings-development.json",
"test": "meteor test --once --driver-package meteortesting:mocha --settings settings-development.json --port 3100",
"test-watch": "TEST_WATCH=1 meteor test --driver-package meteortesting:mocha --settings settings-development.json --port 3100"
"test-watch": "TEST_WATCH=1 meteor test --driver-package meteortesting:mocha --settings settings-development.json --port 3100",
"test:ci": "meteor test --once --driver-package meteortesting:mocha --settings settings-ci.json --port 3100"
},
"dependencies": {
"@babel/runtime": "^7.29.7",