depends_on: - test when: event: push branch: main clone: git: image: woodpeckerci/plugin-git settings: remote: http://10.43.73.77:3000/admin/stonks-oracle.git steps: build-broker-adapter: image: woodpeckerci/plugin-docker-buildx privileged: true settings: repo: registry.celestium.life/stonks-oracle/broker-adapter registry: registry.celestium.life buildx_image: registry.celestium.life/dockerhub-cache/moby/buildkit:buildx-stable-1 add_host: registry.celestium.life:10.1.1.12 buildx_flags: --driver-opt network=host insecure: true buildkit_config: | [registry."registry.celestium.life"] insecure = true [registry."docker.io"] mirrors = ["registry.celestium.life/v2/dockerhub-cache"] [registry."ghcr.io"] mirrors = ["registry.celestium.life/v2/ghcr-cache"] http_proxy: "" https_proxy: "" no_proxy: "" logins: - registry: https://registry.celestium.life username: from_secret: harbor_username password: from_secret: harbor_password tags: - ${CI_COMMIT_SHA} - latest dockerfile: docker/Dockerfile no_cache: true context: . build_args: - CACHE_BUST=${CI_COMMIT_SHA} - SERVICE_CMD=python -m services.adapters.broker_adapter backend_options: kubernetes: resources: requests: memory: 1Gi cpu: 1000m limits: memory: 2Gi cpu: 4000m depends_on: [] build-lake-publisher: image: woodpeckerci/plugin-docker-buildx privileged: true settings: repo: registry.celestium.life/stonks-oracle/lake-publisher registry: registry.celestium.life buildx_image: registry.celestium.life/dockerhub-cache/moby/buildkit:buildx-stable-1 add_host: registry.celestium.life:10.1.1.12 buildx_flags: --driver-opt network=host insecure: true buildkit_config: | [registry."registry.celestium.life"] insecure = true [registry."docker.io"] mirrors = ["registry.celestium.life/v2/dockerhub-cache"] [registry."ghcr.io"] mirrors = ["registry.celestium.life/v2/ghcr-cache"] http_proxy: "" https_proxy: "" no_proxy: "" logins: - registry: https://registry.celestium.life username: from_secret: harbor_username password: from_secret: harbor_password tags: - ${CI_COMMIT_SHA} - latest dockerfile: docker/Dockerfile no_cache: true context: . build_args: - CACHE_BUST=${CI_COMMIT_SHA} - SERVICE_CMD=python -m services.lake_publisher.worker backend_options: kubernetes: resources: requests: memory: 1Gi cpu: 1000m limits: memory: 2Gi cpu: 4000m depends_on: [] build-query-api: image: woodpeckerci/plugin-docker-buildx privileged: true settings: repo: registry.celestium.life/stonks-oracle/query-api registry: registry.celestium.life buildx_image: registry.celestium.life/dockerhub-cache/moby/buildkit:buildx-stable-1 add_host: registry.celestium.life:10.1.1.12 buildx_flags: --driver-opt network=host insecure: true buildkit_config: | [registry."registry.celestium.life"] insecure = true [registry."docker.io"] mirrors = ["registry.celestium.life/v2/dockerhub-cache"] [registry."ghcr.io"] mirrors = ["registry.celestium.life/v2/ghcr-cache"] http_proxy: "" https_proxy: "" no_proxy: "" logins: - registry: https://registry.celestium.life username: from_secret: harbor_username password: from_secret: harbor_password tags: - ${CI_COMMIT_SHA} - latest dockerfile: docker/Dockerfile no_cache: true context: . build_args: - CACHE_BUST=${CI_COMMIT_SHA} - SERVICE_CMD=uvicorn services.api.app:app --host 0.0.0.0 --port 8000 backend_options: kubernetes: resources: requests: memory: 1Gi cpu: 1000m limits: memory: 2Gi cpu: 4000m depends_on: [] build-trading-engine: image: woodpeckerci/plugin-docker-buildx privileged: true settings: repo: registry.celestium.life/stonks-oracle/trading-engine registry: registry.celestium.life buildx_image: registry.celestium.life/dockerhub-cache/moby/buildkit:buildx-stable-1 add_host: registry.celestium.life:10.1.1.12 buildx_flags: --driver-opt network=host insecure: true buildkit_config: | [registry."registry.celestium.life"] insecure = true [registry."docker.io"] mirrors = ["registry.celestium.life/v2/dockerhub-cache"] [registry."ghcr.io"] mirrors = ["registry.celestium.life/v2/ghcr-cache"] http_proxy: "" https_proxy: "" no_proxy: "" logins: - registry: https://registry.celestium.life username: from_secret: harbor_username password: from_secret: harbor_password tags: - ${CI_COMMIT_SHA} - latest dockerfile: docker/Dockerfile no_cache: true context: . build_args: - CACHE_BUST=${CI_COMMIT_SHA} - SERVICE_CMD=uvicorn services.trading.app:app --host 0.0.0.0 --port 8000 backend_options: kubernetes: resources: requests: memory: 1Gi cpu: 1000m limits: memory: 2Gi cpu: 4000m depends_on: [] npm-install-dashboard: image: registry.celestium.life/dockerhub-cache/library/node:24-alpine environment: NODE_OPTIONS: "--dns-result-order=ipv4first" commands: - echo "=== DNS diagnostics ===" - cat /etc/resolv.conf - echo "=== Testing IPv4 connectivity to registry.npmjs.org ===" - wget -4 --timeout=10 --spider https://registry.npmjs.org/ 2>&1 || echo "IPv4 wget FAILED" - echo "=== Testing IPv6 connectivity (expect failure) ===" - wget -6 --timeout=5 --spider https://registry.npmjs.org/ 2>&1 || echo "IPv6 wget FAILED (expected)" - echo "=== npm/node versions ===" - node --version - npm --version - echo "=== Setting npm to IPv4-only ===" - npm config set prefer-ip-address-family 4 - npm config set fetch-timeout 60000 - npm config set loglevel http - echo "=== Starting npm ci ===" - cd frontend && npm ci backend_options: kubernetes: resources: requests: memory: 1Gi cpu: 1000m limits: memory: 2Gi cpu: 4000m depends_on: [] build-dashboard: image: woodpeckerci/plugin-docker-buildx privileged: true settings: repo: registry.celestium.life/stonks-oracle/dashboard registry: registry.celestium.life buildx_image: registry.celestium.life/dockerhub-cache/moby/buildkit:buildx-stable-1 add_host: registry.celestium.life:10.1.1.12 buildx_flags: --driver-opt network=host insecure: true buildkit_config: | [registry."registry.celestium.life"] insecure = true [registry."docker.io"] mirrors = ["registry.celestium.life/v2/dockerhub-cache"] [registry."ghcr.io"] mirrors = ["registry.celestium.life/v2/ghcr-cache"] http_proxy: "" https_proxy: "" no_proxy: "" logins: - registry: https://registry.celestium.life username: from_secret: harbor_username password: from_secret: harbor_password tags: - ${CI_COMMIT_SHA} - latest dockerfile: frontend/Dockerfile context: frontend no_cache: true backend_options: kubernetes: resources: requests: memory: 1Gi cpu: 1000m limits: memory: 2Gi cpu: 4000m depends_on: - npm-install-dashboard build-superset: image: woodpeckerci/plugin-docker-buildx privileged: true settings: repo: registry.celestium.life/stonks-oracle/superset registry: registry.celestium.life buildx_image: registry.celestium.life/dockerhub-cache/moby/buildkit:buildx-stable-1 add_host: registry.celestium.life:10.1.1.12 buildx_flags: --driver-opt network=host insecure: true buildkit_config: | [registry."registry.celestium.life"] insecure = true [registry."docker.io"] mirrors = ["registry.celestium.life/v2/dockerhub-cache"] [registry."ghcr.io"] mirrors = ["registry.celestium.life/v2/ghcr-cache"] http_proxy: "" https_proxy: "" no_proxy: "" logins: - registry: https://registry.celestium.life username: from_secret: harbor_username password: from_secret: harbor_password tags: - ${CI_COMMIT_SHA} - latest dockerfile: docker/Dockerfile.superset context: docker backend_options: kubernetes: resources: requests: memory: 1Gi cpu: 1000m limits: memory: 2Gi cpu: 4000m depends_on: []