PSA/docker-compose.test-citus.yaml
Hermes 284313f908
Some checks are pending
Bidi Control Character Guard / bidi-control-guard (push) Waiting to run
Circular Dependency Check / Check for new circular dependencies (push) Waiting to run
Citus Migration Smoke / Combined migrations on single-node Citus (push) Waiting to run
E2E Fresh Install Tests / fresh-install-e2e (push) Waiting to run
ext-v2 guardrails / Run ext-v2 guard and ESLint (push) Waiting to run
Integration Tests / Check for relevant changes (push) Waiting to run
Integration Tests / ${{ (github.event_name == 'schedule' || github.event.inputs.suite == 'full') && 'Full integration suite' || 'Tier-1 integration subset' }} (push) Blocked by required conditions
Mobile checks / Mobile lint + typecheck (push) Waiting to run
Mobile checks / Mobile unit tests (push) Waiting to run
Mobile checks / Mobile dependency audit (report) (push) Waiting to run
Mobile checks / Mobile reproducibility checks (push) Waiting to run
Secrets guard (env backups) / Ensure no tracked env backup files (push) Waiting to run
Temporal Readiness / fast-readiness (push) Waiting to run
Temporal Readiness / docker-parity (push) Waiting to run
TypeScript Type Check / Nx affected typecheck (push) Waiting to run
Unit Tests / Skipped-test budget (push) Waiting to run
Unit Tests / Nx affected unit tests (push) Waiting to run
Unit Tests / Server unit coverage (informational) (push) Waiting to run
Validate Tenant Management Schema / Check for relevant changes (push) Waiting to run
Validate Tenant Management Schema / Validate Tenant Management Schema (push) Blocked by required conditions
EE Workflows Build Guard / ee-workflows-build-guard (push) Waiting to run
Initial import of AlgaPSA codebase from PSA server
Excluded: .git, node_modules, secrets/, compose.env, assemblyscript tgz

Source: /opt/alga-psa on psa.joliet.tech
2026-06-22 16:12:17 -05:00

113 lines
3.3 KiB
YAML

services:
# Citus Coordinator Node
postgres-citus-coordinator:
image: citusdata/citus:12.1
platform: linux/amd64
container_name: alga_citus_coordinator
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-postgres}
POSTGRES_DB: server_test
CITUS_NODE_TYPE: coordinator
ports:
- "5433:5432"
volumes:
- citus_coordinator_data:/var/lib/postgresql/data
command: |
postgres
-c shared_preload_libraries='citus,pg_stat_statements'
-c citus.shard_count=32
-c citus.shard_replication_factor=1
-c log_statement='all'
-c log_duration=on
networks:
- alga_test_network
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
interval: 10s
timeout: 5s
retries: 5
# Citus Worker Node 1
postgres-citus-worker-1:
image: citusdata/citus:12.1
platform: linux/amd64
container_name: alga_citus_worker_1
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-postgres}
POSTGRES_DB: server_test
CITUS_NODE_TYPE: worker
volumes:
- citus_worker1_data:/var/lib/postgresql/data
command: |
postgres
-c shared_preload_libraries='citus,pg_stat_statements'
networks:
- alga_test_network
depends_on:
postgres-citus-coordinator:
condition: service_healthy
# Citus Worker Node 2
postgres-citus-worker-2:
image: citusdata/citus:12.1
platform: linux/amd64
container_name: alga_citus_worker_2
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-postgres}
POSTGRES_DB: server_test
CITUS_NODE_TYPE: worker
volumes:
- citus_worker2_data:/var/lib/postgresql/data
command: |
postgres
-c shared_preload_libraries='citus,pg_stat_statements'
networks:
- alga_test_network
depends_on:
postgres-citus-coordinator:
condition: service_healthy
# Setup service to configure Citus cluster
citus-setup:
image: citusdata/citus:12.1
platform: linux/amd64
container_name: alga_citus_setup
depends_on:
postgres-citus-coordinator:
condition: service_healthy
postgres-citus-worker-1:
condition: service_started
postgres-citus-worker-2:
condition: service_started
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-postgres}
PGPASSWORD: ${POSTGRES_PASSWORD:-postgres}
networks:
- alga_test_network
command: |
bash -c "
echo 'Waiting for workers to be ready...'
sleep 10
echo 'Adding worker nodes to coordinator...'
psql -h postgres-citus-coordinator -U postgres -d server_test -c \"SELECT citus_add_node('postgres-citus-worker-1', 5432);\" || true
psql -h postgres-citus-coordinator -U postgres -d server_test -c \"SELECT citus_add_node('postgres-citus-worker-2', 5432);\" || true
echo 'Verifying cluster setup...'
psql -h postgres-citus-coordinator -U postgres -d server_test -c \"SELECT * FROM citus_get_active_worker_nodes();\"
echo 'Citus cluster setup complete!'
"
volumes:
citus_coordinator_data:
citus_worker1_data:
citus_worker2_data:
networks:
alga_test_network:
driver: bridge