mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-12 21:56:21 +00:00
Render the S3 objectstore config (templates/config/objectstore.config.php.j2) into NC's config dir before install, gated on objstore.enabled — NC cannot switch an already-installed instance to objectstore primary storage, so it must be present at install time. Add the SeaweedFS consumer storage Playwright test (files/playwright/test-seaweedfs.js, playwright.env.j2 SEAWEEDFS_* vars, spec wiring; drop the playwright-service-flag nocheck for the seaweedfs service) plus the shared runSeaweedfsStorageCheck helper (admin logs into the Filer once, counts bucket objects via the Filer JSON listing, asserts growth) and the seaweedfs-consumer integration lint. web-app-seaweedfs: bind weed to 0.0.0.0 (-ip.bind) so the multi-homed gateway is reachable by consumers that resolve the service name to its IP on the shared network. nextcloud_install: classify 'was not found on the appstore' as unavailable (skippable, non-fatal) so a plugin without a release for the pinned NC version does not abort the whole deploy. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Playwright Parity Tests 🎭
Integration tests that pin the meta/services.yml ↔ templates/playwright.env.j2 ↔ files/playwright/playwright.spec.js parity contract: every enabled service surfaces as <NAME>_SERVICE_ENABLED=, every env line is consumed by a gating helper in the spec, and # nocheck: playwright-service-flag / # nocheck: playwright-service-gate are the only suppressions.
Tests in this directory MUST only cover Playwright env-template / spec parity. The dashboard-scope sub-rule MUST live under dashboard/.
For framework and make test-integration usage see integration.md.