Downstream variables should take precedence over upstream ones

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

  • Close this issue

Summary

The expected behaviour was that locally (downstream) defined variables will have precedence over upstream defined variables. But that is not the case.

Steps to reproduce

upstream project

variables:
    STATIC_GLOBAL: "I am global upstream"
    
downstream:
    variables:
        STATIC_JOB: "I am static upstream"
    trigger: user/downstream

downstream project

variables:
    STATIC_GLOBAL: "I am global downstream"
    STATIC_JOB: "I am static downstream"
    
build:
    script:
        - echo "$STATIC_GLOBAL"
        - echo "$STATIC_JOB"

What is the current bug behavior?

Skipping Git submodules setup
$ echo "$STATIC_GLOBAL"
I am global upstream
$ echo "$STATIC_JOB"
I am static upstream
Job succeeded

What is the expected correct behavior?

Skipping Git submodules setup
$ echo "$STATIC_GLOBAL"
I am global downstream
$ echo "$STATIC_JOB"
I am static downstream
Job succeeded
Edited Aug 19, 2025 by 🤖 GitLab Bot 🤖
Assignee Loading
Time tracking Loading