Gitlab hero border pattern left svg Gitlab hero border pattern right svg

Category Direction - Templates

Last Reviewed: 2020-05-25

Introduction and how you can help

Thanks for visiting the direction page for Templates in GitLab. This page belongs to the Import group of the Manage stage and is maintained by Haris Delalić who can be contacted directly via email. This vision is a work in progress and everyone can contribute. If you'd like to provide feedback or contribute to this vision, please add them as comments in the corresponding epic for this category.

Mission

Project templates make it easy to setup a new project by starting from an existing one that already has all the required configuration, files, and boilerplate. GitLab provides a variety of templates as a starting point for creating new projects and it's also possible to contribute to these; administrators can even configure templates specific to your GitLab instance.

Overview

We already have dozens of templates for common implementations: Project templates, CI YAML templates, Pages templates, and even example projects. Don't see a template that you wish we had? Please consider contributing that template to GitLab.

Competitive landscape

GitHub

GitHub offers "Starter Workflows" to get started with GitHub Actions. These are templates for popular continuous integration workflows written in YAML. The YAML file is dependent on a corresponding .properties.json file that defines the metadata about the workflow.

Jenkins

Jenkins' concept of "pipeline template" involves two other components, libraries and configuration files. The pipeline template defines "stages" which depend on "libraries" to specify the jobs to be executed for each stage, while the configuration file specifies which libraries are used. Reusable templates are consolidated and managed under a governance structure using Jenkins Templating Engine (JTE), a templating plugin.

CircleCI

CircleCI provides sample configuration files (Sample 2.0 config.yml Files) to guide the user, along with CircleCI Orbs' importable jobs as building blocks for creating a configuration file.

What's next & why

The Import group is currently focused on the maintenance and stability fixes for the existing Templates functionality. There are no new features being planned in the short-term.

The long-term strategy includes the following features, which have been identified as priority for this category:

What is not planned right now

While we continuosly evaluate new template ideas, no new templates are being planned at this time. However, we encourage anyone to contribute new templates to GitLab and we will actively support those efforts.

GIT is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license