Custom instance-level project templates (PREMIUM SELF)
Introduced in GitLab 11.2.
GitLab administrators can set a group to be the source of project templates that are selectable when a new project is created on the instance. These templates can be selected when you go to New project > Create from template and select the Instance tab.
Every project in the group, but not its subgroups, can be selected when a new project is created, based on the user's access permissions:
- Public projects can be selected by any authenticated user as a template for a new project, if all enabled project features except for GitLab Pages and Security and Compliance are set to Everyone With Access. The same applies to internal projects.
- Private projects can be selected only by users who are members of the projects.
The Metrics Dashboard is set to Only Project Members when you create a new project. Make sure you change it to Everyone With Access before making it a project template.
Repository and database information that are copied over to each new project are identical to the data exported with the GitLab Project Import/Export.
To set project templates at the group level, see Custom group-level project templates.
Select instance-level project template group
To select the group to use as the source for the project templates:
- On the top bar, navigate to Main menu > Admin > Settings > Templates.
- Expand Custom project templates.
- Select a group to use.
- Select Save changes.
Projects in subgroups of the template group are not included in the template list.
What is copied from the templates
The entire custom instance-level project templates repository is copied, including:
- Branches
- Commits
- Tags
If the user:
- Has the Owner role on the custom instance-level project templates project or is a GitLab administrator, all project settings are copied over to the new project.
- Doesn't have the Owner role or is not a GitLab administrator, project deploy keys and project webhooks aren't copied over because they contain sensitive data.
To learn more about what is migrated, see Items that are exported.