Skip to content

Do NOT require .yml/.yaml extension for include keyword in .gitlab-ci.yml

Problem to solve

Currently Gitlab requires any URL used in the include keyword to end with the .yml or .yaml extension. This is IMHO an unnecessary constraint because:

  1. It prevents use of dynamic urls such as "https://path-to-config?token=mytoken"
  2. It doesn't provide any additional value as only the filename extension is validated.
  3. The yaml itself is already validated

I know that this limit can easily be worked around by appending e.g. &ext=.yml to the URL but it adds confusion and should not be needed.

Intended users

Everyone using Gitlab CI

Further details

Remove complexity, avoid confusion, simplify usage.

Proposal

Just remove the filename extension validation rule. Allow any URL/path to be entered and only validate the HTTP response code and yaml content.

Permissions and Security

N/A

Documentation

N/A

What does success look like, and how can we measure that?

Use an URL with the include keyword that doesn't end in .yml/.yaml and not get an error.

Links / references