Skip to main content

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.

  1. Select the project you'd like to configure using the drop down menu. Click on Settings.

  2. Click on Allowed Templates.

  3. Select which resource you want to add more templates to.

  4. 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.

  5. Once all project options have been specified, click the .

All Templates

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.

  1. Select the project you'd like to configure using the drop down menu. Click on Settings.

  2. Click on Allowed Templates.

  3. Select which resource you want to set a default template.

  4. Select the name of the template to set the default template. If you wish to change this manually, you may edit the YAML directly.

  5. 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.

  1. Select the project you'd like to configure using the drop down menu. Click on Settings.

  2. Click on Allowed Templates.

  3. Expand the Advanced Options section.

  4. Click on the Namespace Pattern input and enter a namespace pattern. If you wish to change this manually, you may edit the YAML directly.

  5. 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