serve.zone Testing

Whole-system integration scenarios for serve.zone components.

Fast package tests stay in each component repo. This repo is for stateful cross-component tests that need Docker, Swarm, Cloudly, Coreflow, registry behavior, and later Coretraffic routing.

Scenarios

  • registry-deploy-on-push: starts Cloudly with isolated Mongo/S3 helpers, connects Coreflow as a cluster, pushes a Docker image to Cloudly's built-in registry, verifies Cloudly metadata updates, verifies Coreflow creates the workload service, verifies Coretraffic HTTPS routing, then pushes the same tag again and verifies service recreation and routing through the new digest.

Host Run

Requires Docker with Swarm already active.

pnpm bootstrap:components
pnpm scenario:registry-deploy-on-push

Vagrant Run

Requires Vagrant plus a provider on the host. The Vagrant VM installs Docker, Node.js, pnpm, initializes Docker Swarm, and mounts the full serve.zone directory at /serve.zone.

pnpm vagrant:up
pnpm vagrant:test
pnpm vagrant:destroy

Provider options:

  • VirtualBox: install vagrant and virtualbox on the host.
  • libvirt: install vagrant, libvirt, and the vagrant-libvirt plugin on the host.

Useful environment variables:

  • SERVEZONE_ROOT: host path mounted as /serve.zone.
  • SERVEZONE_VAGRANT_BOX: defaults to bento/ubuntu-24.04.
  • SERVEZONE_VAGRANT_CPUS: defaults to 4.
  • SERVEZONE_VAGRANT_MEMORY: defaults to 8192.
S
Description
No description provided
Readme 177 KiB
Languages
TypeScript 98.7%
Shell 1.3%