fix(ci): add optional: true to all needs references
When a commit doesn't touch source code (e.g. infra-only changes), the changes: filters exclude build jobs from the pipeline. Without optional: true, downstream jobs (train, deploy) fail with "needs X job but X does not exist in the pipeline". Now all needs entries use optional: true so pipelines succeed even when upstream jobs are filtered out by changes: rules. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
111
.gitlab-ci.yml
111
.gitlab-ci.yml
@@ -302,7 +302,9 @@ compile-services:
|
||||
# --------------------------------------------------------------------------
|
||||
.kaniko-base:
|
||||
stage: build
|
||||
needs: [compile-services]
|
||||
needs:
|
||||
- job: compile-services
|
||||
optional: true
|
||||
image:
|
||||
name: gcr.io/kaniko-project/executor:debug
|
||||
entrypoint: [""]
|
||||
@@ -462,7 +464,9 @@ build-training:
|
||||
|
||||
train-validate-rl:
|
||||
extends: .train-validate-base
|
||||
needs: [build-training]
|
||||
needs:
|
||||
- job: build-training
|
||||
optional: true
|
||||
script:
|
||||
- |
|
||||
/usr/local/bin/train_baseline_rl \
|
||||
@@ -492,7 +496,9 @@ train-validate-rl:
|
||||
|
||||
train-validate-tft:
|
||||
extends: .train-validate-base
|
||||
needs: [build-training]
|
||||
needs:
|
||||
- job: build-training
|
||||
optional: true
|
||||
script:
|
||||
- /usr/local/bin/train_baseline_supervised
|
||||
--model tft
|
||||
@@ -517,7 +523,9 @@ train-validate-tft:
|
||||
|
||||
hyperopt-ppo:
|
||||
extends: .train-validate-base
|
||||
needs: [build-training]
|
||||
needs:
|
||||
- job: build-training
|
||||
optional: true
|
||||
timeout: 4h
|
||||
script:
|
||||
- /usr/local/bin/hyperopt_baseline_rl
|
||||
@@ -557,7 +565,9 @@ hyperopt-ppo:
|
||||
|
||||
train-validate-mamba2:
|
||||
extends: .train-validate-base
|
||||
needs: [build-training]
|
||||
needs:
|
||||
- job: build-training
|
||||
optional: true
|
||||
script:
|
||||
- /usr/local/bin/train_baseline_supervised
|
||||
--model mamba2
|
||||
@@ -582,7 +592,9 @@ train-validate-mamba2:
|
||||
|
||||
train-validate-liquid:
|
||||
extends: .train-validate-base
|
||||
needs: [build-training]
|
||||
needs:
|
||||
- job: build-training
|
||||
optional: true
|
||||
script:
|
||||
- /usr/local/bin/train_baseline_supervised
|
||||
--model liquid
|
||||
@@ -607,7 +619,9 @@ train-validate-liquid:
|
||||
|
||||
train-validate-tggn:
|
||||
extends: .train-validate-base
|
||||
needs: [build-training]
|
||||
needs:
|
||||
- job: build-training
|
||||
optional: true
|
||||
script:
|
||||
- /usr/local/bin/train_baseline_supervised
|
||||
--model tggn
|
||||
@@ -632,7 +646,9 @@ train-validate-tggn:
|
||||
|
||||
train-validate-tlob:
|
||||
extends: .train-validate-base
|
||||
needs: [build-training]
|
||||
needs:
|
||||
- job: build-training
|
||||
optional: true
|
||||
script:
|
||||
- /usr/local/bin/train_baseline_supervised
|
||||
--model tlob
|
||||
@@ -657,7 +673,9 @@ train-validate-tlob:
|
||||
|
||||
train-validate-kan:
|
||||
extends: .train-validate-base
|
||||
needs: [build-training]
|
||||
needs:
|
||||
- job: build-training
|
||||
optional: true
|
||||
script:
|
||||
- /usr/local/bin/train_baseline_supervised
|
||||
--model kan
|
||||
@@ -682,7 +700,9 @@ train-validate-kan:
|
||||
|
||||
train-validate-xlstm:
|
||||
extends: .train-validate-base
|
||||
needs: [build-training]
|
||||
needs:
|
||||
- job: build-training
|
||||
optional: true
|
||||
script:
|
||||
- /usr/local/bin/train_baseline_supervised
|
||||
--model xlstm
|
||||
@@ -707,7 +727,9 @@ train-validate-xlstm:
|
||||
|
||||
train-validate-diffusion:
|
||||
extends: .train-validate-base
|
||||
needs: [build-training]
|
||||
needs:
|
||||
- job: build-training
|
||||
optional: true
|
||||
script:
|
||||
- /usr/local/bin/train_baseline_supervised
|
||||
--model diffusion
|
||||
@@ -734,7 +756,9 @@ train-validate-diffusion:
|
||||
|
||||
hyperopt-dqn:
|
||||
extends: .train-validate-base
|
||||
needs: [build-training]
|
||||
needs:
|
||||
- job: build-training
|
||||
optional: true
|
||||
timeout: 4h
|
||||
script:
|
||||
- |
|
||||
@@ -779,7 +803,9 @@ hyperopt-dqn:
|
||||
|
||||
hyperopt-tft:
|
||||
extends: .train-validate-base
|
||||
needs: [build-training]
|
||||
needs:
|
||||
- job: build-training
|
||||
optional: true
|
||||
timeout: 4h
|
||||
script:
|
||||
- /usr/local/bin/hyperopt_baseline_supervised
|
||||
@@ -816,7 +842,9 @@ hyperopt-tft:
|
||||
|
||||
hyperopt-mamba2:
|
||||
extends: .train-validate-base
|
||||
needs: [build-training]
|
||||
needs:
|
||||
- job: build-training
|
||||
optional: true
|
||||
timeout: 4h
|
||||
script:
|
||||
- /usr/local/bin/hyperopt_baseline_supervised
|
||||
@@ -853,7 +881,9 @@ hyperopt-mamba2:
|
||||
|
||||
hyperopt-liquid:
|
||||
extends: .train-validate-base
|
||||
needs: [build-training]
|
||||
needs:
|
||||
- job: build-training
|
||||
optional: true
|
||||
timeout: 4h
|
||||
script:
|
||||
- /usr/local/bin/hyperopt_baseline_supervised
|
||||
@@ -890,7 +920,9 @@ hyperopt-liquid:
|
||||
|
||||
hyperopt-tggn:
|
||||
extends: .train-validate-base
|
||||
needs: [build-training]
|
||||
needs:
|
||||
- job: build-training
|
||||
optional: true
|
||||
timeout: 4h
|
||||
script:
|
||||
- /usr/local/bin/hyperopt_baseline_supervised
|
||||
@@ -927,7 +959,9 @@ hyperopt-tggn:
|
||||
|
||||
hyperopt-tlob:
|
||||
extends: .train-validate-base
|
||||
needs: [build-training]
|
||||
needs:
|
||||
- job: build-training
|
||||
optional: true
|
||||
timeout: 4h
|
||||
script:
|
||||
- /usr/local/bin/hyperopt_baseline_supervised
|
||||
@@ -964,7 +998,9 @@ hyperopt-tlob:
|
||||
|
||||
hyperopt-kan:
|
||||
extends: .train-validate-base
|
||||
needs: [build-training]
|
||||
needs:
|
||||
- job: build-training
|
||||
optional: true
|
||||
timeout: 4h
|
||||
script:
|
||||
- /usr/local/bin/hyperopt_baseline_supervised
|
||||
@@ -1001,7 +1037,9 @@ hyperopt-kan:
|
||||
|
||||
hyperopt-xlstm:
|
||||
extends: .train-validate-base
|
||||
needs: [build-training]
|
||||
needs:
|
||||
- job: build-training
|
||||
optional: true
|
||||
timeout: 4h
|
||||
script:
|
||||
- /usr/local/bin/hyperopt_baseline_supervised
|
||||
@@ -1038,7 +1076,9 @@ hyperopt-xlstm:
|
||||
|
||||
hyperopt-diffusion:
|
||||
extends: .train-validate-base
|
||||
needs: [build-training]
|
||||
needs:
|
||||
- job: build-training
|
||||
optional: true
|
||||
timeout: 4h
|
||||
script:
|
||||
- /usr/local/bin/hyperopt_baseline_supervised
|
||||
@@ -1113,7 +1153,9 @@ infra-apply:
|
||||
image: ${INFRA_RUNNER_IMAGE}
|
||||
tags:
|
||||
- kapsule
|
||||
needs: [infra-plan]
|
||||
needs:
|
||||
- job: infra-plan
|
||||
optional: true
|
||||
rules:
|
||||
- if: $CI_COMMIT_BRANCH == "main" && $CI_PIPELINE_SOURCE == "push"
|
||||
changes:
|
||||
@@ -1179,15 +1221,24 @@ deploy:
|
||||
tags:
|
||||
- kapsule
|
||||
needs:
|
||||
- build-trading-service
|
||||
- build-api-gateway
|
||||
- build-broker-gateway
|
||||
- build-ml-training
|
||||
- build-backtesting
|
||||
- build-trading-agent
|
||||
- build-data-acquisition
|
||||
- build-web-gateway
|
||||
- build-training
|
||||
- job: build-trading-service
|
||||
optional: true
|
||||
- job: build-api-gateway
|
||||
optional: true
|
||||
- job: build-broker-gateway
|
||||
optional: true
|
||||
- job: build-ml-training
|
||||
optional: true
|
||||
- job: build-backtesting
|
||||
optional: true
|
||||
- job: build-trading-agent
|
||||
optional: true
|
||||
- job: build-data-acquisition
|
||||
optional: true
|
||||
- job: build-web-gateway
|
||||
optional: true
|
||||
- job: build-training
|
||||
optional: true
|
||||
rules:
|
||||
- if: $CI_COMMIT_BRANCH == "main" && $CI_PIPELINE_SOURCE == "push"
|
||||
- if: $CI_PIPELINE_SOURCE == "web" || $CI_PIPELINE_SOURCE == "api"
|
||||
|
||||
Reference in New Issue
Block a user