Does retrying a job pull in changes to an included CI template?

I’m working on some CI templates. Those templates live in one project (on a branch that hasn’t been merged yet) and the project I’m testing them with (call it app) is separate. So app has a .gitlab-ci.yml file that looks a bit like

  - project: .../gitlab-ci-templates
    file: template1.yml
  - project: .../gitlab-ci-templates
    file: template2.yml
    ref: duvall/test

  - extends: .template2

and the .template2 template, living in gitlab-ci-templates (on the branch duvall/test):

  image: ...

My template doesn’t work yet, so my app jobs are failing. I want to just hit the retry button after I’ve updated the template and pushed to gitlab-ci-templates, but the log of the new job suggests that the changes haven’t been picked up yet. If I make an arbitrary change to app and push it, the corresponding pipeline run definitely does pick up the change. So does the job retry use a cached copy of the included files? Is there something else I should be doing instead?

This is on


Hi @dhduvall

retry button would use the same ref all the time. You need to start a new pipeline to use newer ref of included files.

Thanks. I finally found the “Run pipeline” button so I don’t have to make dummy changes to the including project, but I’m a bit sad that I have to run the entire pipeline rather than just the section of it I’m working on. That said, it shouldn’t be hard to work around with temporary rules.