Custom instance-level project templates

Tier: Premium, Ultimate Offering: Self-managed

As an administrator, you can configure a group that contains projects available for use as the source of project templates on your instance. You can then create a new project, that starts from the template project’s contents.

To learn more about what is copied from the template project, see What is copied from the templates.

Select a group to manage template projects

Before you make template projects available to your instance, select a group to manage the templates. To prevent any unexpected changes to templates, create a new group for this purpose, rather than reusing an existing group. If you reuse an existing group already in use for development work, users with the Maintainer role might modify the template projects without understanding the side effects.

To select the group to manage the project templates for your instance:

  1. On the left sidebar, at the bottom, select Admin.
  2. Select Settings > Templates.
  3. Expand Custom project templates.
  4. Select a group to use.
  5. Select Save changes.

After the group is configured as a source for project templates, any new projects subsequently added to this group are available for use as templates.

Configure a project for use as a template

After you create a group to manage the templates for your instance, configure the visibility and feature availability of each template project.

Prerequisites:

  • You must be either the administrator of the instance, or a user with a role that allows you to configure the project.
  1. Ensure the project belongs to the group directly, and not through a subgroup. Projects from subgroups of the chosen group can’t be used as templates.
  2. To configure which users can select the project template, set the project’s visibility:
    • Public and Internal projects can be selected by any authenticated user.
    • Private projects can be selected only by members of that project.
  3. Review the project’s feature settings. All enabled project features should be set to Everyone With Access, except GitLab Pages and Security and compliance.

Repository and database information that are copied over to each new project are identical to the data exported with the GitLab Project Import/Export.