Settings Template Repositories for new Projects

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

Release notes

Problem to solve

Currently there is no way to have a project created with default settings within GitLab and having all settings stored at the group level (and cascading down) is not always preferable.

&6671

Intended users

Metrics

User experience goal

Upon project creation, a user is able to provide default "settings" of the project that are able to be set upon instantiation of the project. These settings are separate from the "default project" or "project template" chosen, so as to not directly link the two.

Proposal

Users are able to create a project that has "default" settings stored as YAML in special files. The Top-Level Group Owner and/or Instance Administrator can leverage this project and its project setting definitions.

When the user goes through the project creation process, they can specify which template to use.

Screen_Shot_2021-12-03_at_8.28.26_AM

Further details

This would require decisions on how best to:

  • serialize settings
  • deal with context-specifics (CI Variables, Approval Groups, etc...)

Permissions and Security

Using a single group with multiple files might be best as then the CODEOWNERS approval process could be leveraged to ensure that the right people are approving changes to their specific template.

Documentation

Availability & Testing

Available Tier

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

What is the type of buyer?

Is this a cross-stage feature?

Links / references

This page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.

Edited by 🤖 GitLab Bot 🤖