Last updated Dec 13, 2024

About templates

Speed up and standardize software component creation with reusable, customizable templates that integrate best practices and adhere to your organization’s standards.

Using a base Git repository, create templates that include boilerplate code and CI/CD pipelines, preset information, and webhooks. Then use those templates to quickly create software components that automate repetitive tasks and orchestrate the rest of your tools and systems.


The Compass Templates page, showing templates created by a software team

Benefits

Ensure consistency and quality

Engineering teams can use templates to:

  • standardize code structures, best practices, and continuous integration/continuous deployment (CI/CD) configurations, to drive more reliable software releases

  • improve code quality and security, to reduce bugs and make code easier to maintain

Develop faster

Developers can use templates to streamline their workflows, minimizing time spent on repetitive tasks, and freeing up time to focus on unique parts of their code.

Use as an education resource

New team members can reference templates to understand how their team structures and implements software projects.

Automate workflows

Add parameters and webhooks to templates, to automatically notify another part of your toolchain when a component is created from that template.

Parameters allow you to collect more information from template users when a component is being created from the template. This could be additional configuration data for the component or administrative information that needs to be tracked in other tools you use. For example, you may want to ask your developers and engineers "What line of business or domain does this new component belong to?", "Does it require SOX deployments?", "Which cloud account should this service be provisioned in?", or "Which port is the container listening on?".

Compass will send an HTTP POST request to the webhook, sharing a JSON payload that describes the new component including all parameters and values. This webhook can be used to continue automation or orchestration of a new software component in your development environment.

Catalog as components

Templates are cataloged as components alongside the rest of your software architecture in Compass, because:

  • repository links indicate the code that’s forked when new components are created from a template

  • owner teams let people know who to contact if they need help using a template

  • documentation helps people know how to use the template in more detail

  • lifecycle stages indicate whether the template is ready to use or not

  • dependencies create relationships between templates and components created from them, so announcements and changes can be communicated effectively

  • scorecards track a template’s health, so you can see if it’s performing well or needs improvement

Get started

Coming soon

We're working on improving templates with the following features:

  • GitLab support.

  • Edit templates after they’re created.

  • Validate webhooks as templates are created.

  • Additional parameter types, such as single select and multi-select.

  • Customize webhook events to call third-party APIs when components are created from templates (for example, create a new service in Opsgenie each time a component is created from a template).

Rate this page: