Creating GitHub integration templates enables teams to quickly and efficiently roll out integrations for their GitHub repositories across an entire portfolio of products. With configuration templates, you can save any GitHub integration you create for a given product to use across your account. This enables others to apply that template to future integrations.
Templates provide a number of benefits versus setting up each integration from scratch.
- Templates make it easy to manage large numbers of integrations
- Templates speed up the process of setting up integrations
- Templates encourage the use of standards across your account
- Templates are particularly helpful when utilizing a single set of credentials
When a single user is also the owner of the GitHub repository they are able to create the first integration using their username and password. From that point on, product owners can use this template every time a new integration is added without having to change or add a username and password. If the username and password needs to be updated in the future, updating the template will refresh the credentials for all integrations utilizing that template.
In addition, when a template is applied to a new GitHub integration, the user that creates the integration can choose to edit any of the configuration options as it relates to their Aha! product. This allows teams to quickly configure multiple integrations while maintaining the flexibility to have unique integrations per product.
Creating a template
You will need to be a product owner in Aha! to create a GitHub integration through the Settings -> Product area of your account. Once on the integration configuration page, click the actions menu.
Selecting “Use as a template” will save the configuration you are working on as a new template.
Once saved, it will be available to use for future integrations your team configures.
Using an existing template
If you choose to use an existing template, its configuration will be applied to your new integration. Each configuration option will have a check box next to it allowing you to uncheck and apply a unique configuration on a per field basis. For example, you can inherit user credentials and feature mapping from a template, but define custom field mappings unique to your product.
Since the templates allow credentials to be used throughout an Aha! account, only users with access to the product containing the template will be able to apply the template.
If someone creates a template for "Product A" in my account, and I do not have access to "Product A", I will not be able to use the template when I configure my own "Product B" integration.
In order to use a template defined on another product, you need at least viewer access on that product. Without full product owner access, the user will be able to use the template but will not have access to edit it. This is particularly important because it allows templates to be configured without the concern of other users editing it and impacting integrations across the account.
Remove a template
To remove a template or delete an integration serving as a template, you first need to switch any integrations using it to a different template. When viewing the template, there will be the option to view all integrations currently using it.
Once all integrations using the template have been removed, the actions menu will allow you to delete the integration or remove it as a template.