Manage Allowed Templates
Allowed templates are the templates that project members are allowed to use when creating resources in a project.
Adding Templates
Only project admins or global admins can add more templates to a project.
Select the project you'd like to configure using the drop down menu. Click on Settings.
Click on Allowed Templates.
Select which resource you want to add more templates to.
In the "Allowed" section, click on the input and select the name of the template to add. If you wish to change this manually, you may edit the YAML directly.
Once all project options have been specified, click the .
Instead of adding every template, a special selection named All Templates
can be used to give all templates of the platform to the project. Use this option with caution.
Setting a Default Template
A default template can be selected for a project, so that the template is automatically selected when creating the resource. The default template is not enforced during resource creation.
Select the project you'd like to configure using the drop down menu. Click on Settings.
Click on Allowed Templates.
Select which resource you want to set a default template.
Select the name of the template to set the default template. If you wish to change this manually, you may edit the YAML directly.
Once all project options have been specified, click the .
Advanced: Setting a Namespace Pattern
When creating a resource, it can be repetitive to specify a spec.clusterRef. namespace
in each resource. Namespace patterns provide a template to use when creating namespaces for resources. These can be used to save time or enforce a naming convention.
For example, the namespace pattern {{.Values.loft.project}}-{{.Values.loft.name}}
would result in a namespace with
name my-project-space-1
being created for the space instance named space-1
for a project named my-project
.
Select the project you'd like to configure using the drop down menu. Click on Settings.
Click on Allowed Templates.
Expand the Advanced Options section.
Click on the Namespace Pattern input and enter a namespace pattern. If you wish to change this manually, you may edit the YAML directly.
Once all project options have been specified, click the .
Available Variables for Virtual Clusters
The variables available for templating namespacePattern.virtualCluster
are:
.Values.loft.user.name
: The name of the owner, if the owner is a user.Values.loft.team.name
: The name of the owner, if the owner is a team.Values.loft.name
: The name of the space or virtual cluster instance.Values.loft.project
: The name of the project.Values.loft.space
: The name of the space containing the virtual cluster.Values.loft.cluster
: The name of the connected cluster the space is scheduled to.Values.loft.virtualClusterName
: The name of the virtual cluster.Values.loft.virtualClusterNamespace
: The name of the space containing the virtual cluster
Available Variables for Spaces
The variables available for templating namespacePattern.space
are:
.Values.loft.user.name
: The name of the owner, if the owner is a user.Values.loft.team.name
: The name of the owner, if the owner is a team.Values.loft.name
: The name of the space or virtual cluster instance.Values.loft.project
: The name of the project.Values.loft.cluster
: The name of the connected cluster the space is scheduled to