Explanation Azure Pipelines offers two kinds of templates: includes and extends. Included templates behave like #include in C++: it's as if you paste thetemplate's code right into the outer file, which references it. To continue the C++ metaphor, extends templates are more like inheritance: the template provides the outer structure of the pipeline and a set of places where the template consumer can make targeted alterations. Example: extends: template: template.yml@templates parameters: usersteps: - script: echo This is my first step - script: echo This is my second step Reference: https://docs.microsoft.com/en-us/azure/devops/pipelines/security/templates