Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 35 additions & 4 deletions modules/docker/codezero/vendor/.env
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,17 @@ AQUILA_BACKEND_UNARY_TIMEOUT_SECS=10
AQUILA_GRPC_HOST=0.0.0.0
AQUILA_GRPC_PORT=8081
AQUILA_GRPC_HEALTH_SERVICE=false
DRACO_REST_PORT=8084
DRACO_REST_HOST=127.0.0.1
REST_ACTION_PORT=8084

TAURUS_AQUILA_TOKEN=taurus
DRACO_REST_AQUILA_TOKEN=draco-rest
DRACO_CRON_AQUILA_TOKEN=draco-cron
AQUILA_ACTION_REST_IDENTIFIER=rest-action
AQUILA_ACTION_REST_TOKEN=rest-action
AQUILA_ACTION_CRON_IDENTIFIER=cron-action
AQUILA_ACTION_CRON_TOKEN=cron-action

# Image config for centaurus actions (rest-action, cron-action, ...)
ACTION_IMAGE_REGISTRY=ghcr.io/code0-tech/centaurus/ci-builds
ACTION_IMAGE_TAG=

AQUILA_GRPC_CONNECT_TIMEOUT_SECS=2
AQUILA_GRPC_REQUEST_TIMEOUT_SECS=10
Expand All @@ -50,6 +55,11 @@ SAGITTARIUS_DB_ENCRYPTION_DETERMINISTIC_KEY=jgTaxTqzM15ved1S8HdXrqrjfCfF5R0h
SAGITTARIUS_DB_ENCRYPTION_KEY_DERIVATION_SALT=Z6zcLTgobXLYjXUslRsLMKxvXKq3j6DJ
SAGITTARIUS_RAILS_SECRET_KEY_BASE=MVMD6CtQwEWrQ28TdokQakbG2FG5abOn

# Sagittarius gateway
SAGITTARIUS_GATEWAY_LOG_LEVEL=info
SAGITTARIUS_GATEWAY_JWT_SECRET=12a216bf2e5fb54e4f97dc74f222bfb8
SAGITTARIUS_GATEWAY_JWT_TTL_SECONDS=300

# Velorum config
# VELORUM_ENABLED=false (override, default checks if COMPOSE_PROFILES contains ide_velorum)
VELORUM_HOST=velorum
Expand All @@ -70,13 +80,34 @@ VELORUM_JWT_SECRET=088cfc7a7fc2b07696d8ee5e1ea9d642
# token cost multiplier for this model
# VELORUM_MODEL_GPT5_TOKEN_COST=1

# OpenTelemetry
OPENTELEMETRY_ENABLED=false
OPENTELEMETRY_GRPC_HOST=http://localhost:4317
OPENTELEMETRY_LOGS_HTTP_ENDPOINT=http://localhost:4318/v1/logs
OPENTELEMETRY_METRICS_HTTP_ENDPOINT=http://localhost:4318/v1/metrics
OPENTELEMETRY_TRACES_HTTP_ENDPOINT=http://localhost:4318/v1/traces
OPENTELEMETRY_LOGS_CLIENTSIDE_HTTP_ENDPOINT=http://localhost:4318/v1/logs
OPENTELEMETRY_METRICS_CLIENTSIDE_HTTP_ENDPOINT=http://localhost:4318/v1/metrics
OPENTELEMETRY_TRACES_CLIENTSIDE_HTTP_ENDPOINT=http://localhost:4318/v1/traces

OPENTELEMETRY_SERVICE_NAME_SAGITTARIUS_WEB=sagittarius-web
OPENTELEMETRY_SERVICE_NAME_SAGITTARIUS_CABLE=sagittarius-cable
OPENTELEMETRY_SERVICE_NAME_SAGITTARIUS_GRPC=sagittarius-grpc
OPENTELEMETRY_SERVICE_NAME_SAGITTARIUS_BACKGROUND=sagittarius-background
OPENTELEMETRY_SERVICE_NAME_SAGITTARIUS_GATEWAY=sagittarius-gateway
OPENTELEMETRY_SERVICE_NAME_NGINX=nginx
OPENTELEMETRY_SERVICE_NAME_SCULPTOR=sculptor
OPENTELEMETRY_SERVICE_NAME_SCULPTOR_CLIENTSIDE=sculptor-clientside

# Internal config options
SAGITTARIUS_RAILS_HOST=sagittarius-rails-web
SAGITTARIUS_RAILS_PORT=3000
SAGITTARIUS_CABLE_HOST=sagittarius-rails-cable
SAGITTARIUS_CABLE_PORT=3000
SAGITTARIUS_GRPC_HOST=sagittarius-grpc
SAGITTARIUS_GRPC_PORT=50051
SAGITTARIUS_GATEWAY_HOST=sagittarius-gateway
SAGITTARIUS_GATEWAY_PORT=50051
SAGITTARIUS_LOG_LEVEL=info
# web threads and grpc threads must be lower than db pool size
SAGITTARIUS_RAILS_WEB_THREADS=3
Expand Down
117 changes: 68 additions & 49 deletions modules/docker/codezero/vendor/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,13 +40,9 @@ services:
INITIAL_ROOT_PASSWORD: ${INITIAL_ROOT_PASSWORD}
INITIAL_ROOT_MAIL: ${INITIAL_ROOT_MAIL}
INITIAL_RUNTIME_TOKEN: ${INITIAL_RUNTIME_TOKEN}
SAGITTARIUS_CONFIG_FILES: /tmp/generated-configs/sagittarius.sagittarius.yml,/tmp/generated-configs/sagittarius.sagittarius-web.yml
volumes:
- generated-configs:/tmp/generated-configs:ro
entrypoint: |
sh -c "
cp /tmp/generated-configs/sagittarius.sagittarius.yml config/sagittarius.yml
exec bin/docker-entrypoint ./bin/rails server
"
restart: unless-stopped
healthcheck:
test: ["CMD-SHELL", "curl --fail http://localhost:3000/health/liveness"]
Expand All @@ -63,11 +59,12 @@ services:
condition: service_healthy
volumes:
- generated-configs:/tmp/generated-configs:ro
entrypoint: |
sh -c "
cp /tmp/generated-configs/sagittarius.sagittarius.yml config/sagittarius.yml
exec bin/docker-entrypoint bundle exec good_job
"
environment:
SAGITTARIUS_CONFIG_FILES: /tmp/generated-configs/sagittarius.sagittarius.yml,/tmp/generated-configs/sagittarius.sagittarius-background.yml
command:
- bundle
- exec
- good_job
restart: unless-stopped
profiles:
- ide
Expand All @@ -79,11 +76,23 @@ services:
condition: service_healthy
volumes:
- generated-configs:/tmp/generated-configs:ro
entrypoint: |
sh -c "
cp /tmp/generated-configs/sagittarius.sagittarius.yml config/sagittarius.yml
exec bin/docker-entrypoint ./bin/grpc_server
"
environment:
SAGITTARIUS_CONFIG_FILES: /tmp/generated-configs/sagittarius.sagittarius.yml,/tmp/generated-configs/sagittarius.sagittarius-grpc.yml
command:
- bin/grpc_server
restart: unless-stopped
profiles:
- ide

sagittarius-gateway:
image: ${IMAGE_REGISTRY}/sagittarius-gateway:${IMAGE_TAG}
depends_on:
sagittarius-grpc:
condition: service_started
volumes:
- generated-configs:/tmp/generated-configs:ro
environment:
GATEWAY_CONFIG_PATH: /tmp/generated-configs/sagittarius-gateway.gateway.yml
restart: unless-stopped
profiles:
- ide
Expand All @@ -95,18 +104,39 @@ services:
condition: service_healthy
volumes:
- generated-configs:/tmp/generated-configs:ro
entrypoint: |
sh -c "
cp /tmp/generated-configs/sagittarius.sagittarius.yml config/sagittarius.yml
exec bin/docker-entrypoint bundle exec puma config.cable.ru
"
environment:
SAGITTARIUS_CONFIG_FILES: /tmp/generated-configs/sagittarius.sagittarius.yml,/tmp/generated-configs/sagittarius.sagittarius-cable.yml
command:
- bundle
- exec
- puma
- config.cable.ru
restart: unless-stopped
profiles:
- ide

sculptor:
image: ${IMAGE_REGISTRY}/sculptor:${IMAGE_TAG}-${IMAGE_EDITION}
restart: unless-stopped
environment:
OPENTELEMETRY_ENABLED: ${OPENTELEMETRY_ENABLED:-false}
OTEL_SERVICE_NAME: ${OPENTELEMETRY_SERVICE_NAME_SCULPTOR}
OTEL_LOGS_ENDPOINT: ${OPENTELEMETRY_LOGS_HTTP_ENDPOINT}
OTEL_METRICS_ENDPOINT: ${OPENTELEMETRY_METRICS_HTTP_ENDPOINT}
OTEL_TRACES_ENDPOINT: ${OPENTELEMETRY_TRACES_HTTP_ENDPOINT}
NEXT_PUBLIC_OTEL_SERVICE_NAME: ${OPENTELEMETRY_SERVICE_NAME_SCULPTOR_CLIENTSIDE}
NEXT_PUBLIC_OTEL_LOGS_ENDPOINT: ${OPENTELEMETRY_LOGS_CLIENTSIDE_HTTP_ENDPOINT}
NEXT_PUBLIC_OTEL_METRICS_ENDPOINT: ${OPENTELEMETRY_METRICS_CLIENTSIDE_HTTP_ENDPOINT}
NEXT_PUBLIC_OTEL_TRACES_ENDPOINT: ${OPENTELEMETRY_TRACES_CLIENTSIDE_HTTP_ENDPOINT}
entrypoint: |
sh -c "
if [ \"$$OPENTELEMETRY_ENABLED\" != 'true' ]; then
echo 'UNSET OTEL'
unset OTEL_SERVICE_NAME OTEL_LOGS_ENDPOINT OTEL_METRICS_ENDPOINT OTEL_TRACES_ENDPOINT
unset NEXT_PUBLIC_OTEL_SERVICE_NAME NEXT_PUBLIC_OTEL_LOGS_ENDPOINT NEXT_PUBLIC_OTEL_METRICS_ENDPOINT NEXT_PUBLIC_OTEL_TRACES_ENDPOINT
fi
exec npm run start
"
profiles:
- ide

Expand All @@ -130,15 +160,15 @@ services:
- ide_velorum

nginx:
image: nginx:1.31.1-alpine-slim
image: nginx:1.31.3-alpine-otel
depends_on:
config-generator:
condition: service_completed_successfully
sagittarius-rails-web:
condition: service_started
sagittarius-rails-cable:
condition: service_started
sagittarius-grpc:
sagittarius-gateway:
condition: service_started
sculptor:
condition: service_started
Expand All @@ -148,6 +178,10 @@ services:
entrypoint: |
sh -c "
cp /tmp/generated-configs/nginx.default.conf /etc/nginx/conf.d/default.conf
if [ -s /tmp/generated-configs/nginx.otel.conf ]; then
sed -i '1i load_module modules/ngx_otel_module.so;' /etc/nginx/nginx.conf
cp /tmp/generated-configs/nginx.otel.conf /etc/nginx/conf.d/otel.conf
fi
nginx -t
exec nginx -g 'daemon off;'
"
Expand All @@ -159,7 +193,7 @@ services:
- ide

nats:
image: nats:2.14.1
image: nats:2.14.4
command:
- -js
restart: unless-stopped
Expand Down Expand Up @@ -194,50 +228,35 @@ services:
MODE: dynamic
AQUILA_URL: 'http://aquila:8081'
NATS_URL: nats://nats:4222
DEFINITION_PATH: '/definitions'
AQUILA_TOKEN: "${TAURUS_AQUILA_TOKEN}"
AQUILA_GRPC_CONNECT_TIMEOUT_SECS: "${AQUILA_GRPC_CONNECT_TIMEOUT_SECS}"
AQUILA_GRPC_REQUEST_TIMEOUT_SECS: "${AQUILA_GRPC_REQUEST_TIMEOUT_SECS}"
restart: unless-stopped
profiles:
- runtime

draco-rest:
rest-action:
depends_on:
- nats
image: ${IMAGE_REGISTRY}/draco:${IMAGE_TAG}-rest
- aquila
image: ${ACTION_IMAGE_REGISTRY}/rest-action:${ACTION_IMAGE_TAG}
environment:
MODE: dynamic
AQUILA_URL: 'http://aquila:8081'
NATS_URL: nats://nats:4222
NATS_BUCKET: 'flow_store'
DEFINITION_PATH: '/definitions'
HERCULES_AQUILA_URL: 'http://aquila:8081'
HERCULES_AUTH_TOKEN: "${AQUILA_ACTION_REST_TOKEN}"
HTTP_SERVER_PORT: 8084
HTTP_SERVER_HOST: "0.0.0.0"
EXTERNAL_HTTP_SERVER_PORT: "${DRACO_REST_PORT}"
EXTERNAL_HTTP_SERVER_HOST: "${DRACO_REST_HOST}"
AQUILA_TOKEN: "${DRACO_REST_AQUILA_TOKEN}"
AQUILA_GRPC_CONNECT_TIMEOUT_SECS: "${AQUILA_GRPC_CONNECT_TIMEOUT_SECS}"
AQUILA_GRPC_REQUEST_TIMEOUT_SECS: "${AQUILA_GRPC_REQUEST_TIMEOUT_SECS}"
ports:
- "${DRACO_REST_PORT}:8084"
- "${REST_ACTION_PORT}:8084"
restart: unless-stopped
profiles:
- runtime

draco-cron:
cron-action:
depends_on:
- nats
image: ${IMAGE_REGISTRY}/draco:${IMAGE_TAG}-cron
- aquila
image: ${ACTION_IMAGE_REGISTRY}/cron-action:${ACTION_IMAGE_TAG}
environment:
MODE: dynamic
AQUILA_URL: 'http://aquila:8081'
NATS_URL: nats://nats:4222
NATS_BUCKET: 'flow_store'
DEFINITION_PATH: '/definitions'
AQUILA_TOKEN: "${DRACO_CRON_AQUILA_TOKEN}"
AQUILA_GRPC_CONNECT_TIMEOUT_SECS: "${AQUILA_GRPC_CONNECT_TIMEOUT_SECS}"
AQUILA_GRPC_REQUEST_TIMEOUT_SECS: "${AQUILA_GRPC_REQUEST_TIMEOUT_SECS}"
HERCULES_AQUILA_URL: 'http://aquila:8081'
HERCULES_AUTH_TOKEN: "${AQUILA_ACTION_CRON_TOKEN}"
restart: unless-stopped
profiles:
- runtime
Expand Down
4 changes: 2 additions & 2 deletions vendir.lock.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ apiVersion: vendir.k14s.io/v1alpha1
directories:
- contents:
- git:
commitTitle: 'fix: correct file path for aquila config'
sha: 31806fcb5b983282045c3ff32e9b2c1d732b90cd
commitTitle: 'Merge pull request #1047 from code0-tech/pyxis/update/taurus...'
sha: e6a8f00b518e4f1f778ada5fb6bbc15a92e854cd
path: .
path: modules/docker/codezero/vendor
kind: LockConfig