Skip to content

Create and normalize ci_build_execution_config table for config options and run values

Goals

normalize those columns per-pipeline or per-project. This is a lot of duplication that we do today for options. Think about the case where we have 50 the same jobs.

If we have a good de-duplication pattern, we could move options as well and significantly reduce the load.

Design

  • we add ci_build_execution_config
    • we add (jsonb_)run_steps in this table
  • ci_build.execution_config_id FK
  • when we retry we don't copy ci_build_execution_config, only copy value of execution_config_id

Approach

The ci_build_execution_config table will be created to store run value in its own column called run_steps with (jsonb_) datatype.

Related Work

Group Issue Link
backend 👈 You are here
backend Add support for a job-level `run` keyword (#440487 - closed)