Project Types
Imagine you're managing multiple projects with varying infrastructure needs. Instead of manually setting up base blueprint every time, Project Types lets you standardize and reuse existing base blueprint, ensuring faster setup, consistency, and fewer errors across your projects.
Think of it as taking your custom-configured project template for your custom use case and turning it into a reusable starting point for your team. Create a template once, reuse it forever.
Overview
With Project Types, you can:
- Create standardised templates from existing projects or Git repositories.
- Control resources list for a Project.
- Automatically configure cloud provider settings for new projects.
- Maintain consistent project setups across teams and reduce manual configuration time.
- Track which templates are used by which projects.
Prerequisites
Permission to edit Project Types and familiarity with your organization's project types and resource requirements.
Creating Your First Project Type
From the Dashboard
- Navigate to Ops Center.
- Locate and click on the Project Type option.
- This will take you to the Project Type Dashboard page, where you can:
- View all existing project types.
- See associated projects and respective creators.
- Track which projects are using which Project Type.
- Delete project types that are not linked to any existing projects.
Now to create a new Project Type:
- Click on the Create Project Type button.
- Fill in the following details:
- Name: Enter a unique name for the project type.
- Description: A brief description of the project type's purpose.
- Project Source: Choose the source for the project type configuration. You have two ways to do it:
- Existing Project: Select from a dropdown of existing projects. The respective Git configuration will be automatically imported from the selected project.
- Custom Git Linking: Configure the project type using a custom Git repository.
- Git Account: Select the associated Git account.
- Git Repository URL: Provide the repository’s URL.
- Git Ref: Specify the exact commit ID or branch to be used.
- Relative Path: Define the path to the project configuration within the repository.
- Allowed Clouds: The cloud provider which will host your project.
- After filling in the details, click Create to save the project type.
Map Resources to Project Type
Post Project Type creation, you can define exactly which resources are mapped to respective project type, ensuring only selected resources are accessible within the resource list of the Project.
Steps to Map Resources :
- Click Manage Resources to view all existing modules, including all published custom modules
Note: By default, all resources are selected for a project type and Preview modules are not visible in this list.
- Select or deselect intents and flavors according to requirements.
- Save your configuration to apply changes.
Example Use Case:
Suppose you want to restrict the use of a specific MongoDB flavor, like Atlas, in projects tied to a particular project type. In that case you can navigate to the Project Types list screen, click on "Manage Resources" of the respective project type and uncheck the Atlas flavor under the MongoDB intent, save your changes, and you’re set.
Later, if that flavor is needed, you can always edit the resource list linked to that project type to re-include it.
See It in Action
Using Project Types
Once project type is created, one can now
- While creating a new project, select a pre-configured project type from the dropdown menu during Create Project Flow. You can also see which resources are mapped to the respective project type by clicking on the "i" button next to it.
- The system will automatically populate the allowed cloud environments for the project based on the selected project type.
- Based on the chosen project type, the Allowed Clouds for the project will be auto-populated, ensuring compliance with the template's configurations which you can modify based on your Project Requirements.
See it in Action :
No more manual setup. No more forgetting critical settings. Just consistent, reliable project creation every time
Best Practices
- Use descriptive names for project types to easily identify their purpose.
- Maintain detailed descriptions for better team understanding.
- Remove unused project types to keep the system organized.
FAQs
Can I edit an existing Project Type?
Currently, project types cannot be edited. You can create a new project type or delete an existing one (if it’s not linked to any projects) and recreate it.
Why I am unable to delete a Project Type?
Verify that no projects are currently using the project type. To unlink a project type from a Project you have to delete the very Project to begin with. Additionally, do check your administrative permissions.
What is the purpose of the Git Ref field?
The Git Ref allows you to specify a particular commit ID or branch from the repository. This ensures that the correct version of the project files is used.
Can I change a Project Type’s mapped resources later?
Yes, except for the default type—you can anytime come to Project Types and update instantly.
What if a resource isn’t listed in My Project when it is there in Project Type?
The resources list within Project reflects allowed clouds and along with Project Type—check those settings if something’s missing.
Support
For additional support or questions about Project Types, contact the Facets support team
Updated about 14 hours ago