This Terraform module is designed to connect your GitHub organization with Cloud Pipelines Service by Puzl. One Integration scopes one team or department within your organization and enables its owner or maintainer to set up and manage runners for executing their jobs.
Administrator (owner of Puzl account) creates Integrations in their Puzl root namespace, which can be found in Puzl dashboard after account creation. The detailed description of the fields used in this module can be found in the related GitHub Actions Integration documentation.
- Management of GitHub Actions Integrations.
- Support for multiple GitHub organizations via owner IDs.
- Support for GitHub Enterprise Server instances.
- Outputs the name of Claim Namespace where the GitHub Runners can be claimed.
- Configurable cache retention time for persistent storage.
- Terraform v1.3.0 or higher.
- Puzl kubernetes provider v2.38.0 or higher.
- Puzl application installed in your GitHub organization(s).
To use this module in your Terraform environment, add the following configuration:
locals {
integration_name = "github-team-integration"
root_namespace = "root-cysexkwsk57xtlabdkyn3zpybzslt2l7frtwj5arfodtz"
}
module "integration" {
source = "puzl-cloud/githubactionsintegration/puzl"
name = local.integration_name
namespace = local.root_namespace
github_url = local.github_url
owner_ids = [] # Leave empty to serve all organizations where app is installed
service_account_permissions = {
read_job_namespace_secrets = true
manage_claim_namespace_secrets = false
}
resources = {
persistentStorage = {
cacheRetentionTime = 30 # days
}
}
}