GitOps Catalogs
Distribute reusable infrastructure modules, application components, and complete environment stacks across your organization's clusters using GitOps Catalogs.
What Are GitOps Catalogs?
GitOps Catalogs are reusable templates stored in your organization's GitOps repository that enable standardized deployment of infrastructure resources and applications. Teams can deploy catalog items with custom configurations while maintaining consistency across environments.
Key Concepts
- GitOps Catalog: Reusable template stored in the
catalog/directory of your GitOps repository - Catalog Types: YAML (applications), IAC (infrastructure), or Hybrid (both combined)
- Catalog Deployment: Instance of a catalog template deployed with custom parameter values
- Deployment Path: Location in GitOps repository where catalog generates resources
Catalog Types
Konstruct supports three types of catalogs:
| Type | Use Cases | Technologies | Deploys To |
|---|---|---|---|
| YAML | Applications, monitoring agents, platform tools | Helm, ArgoCD | Application GitOps repo |
| IAC | Cloud infrastructure, databases, networks | Terraform, Crossplane | Platform GitOps repo |
| Hybrid | Full-stack solutions combining apps and infrastructure | Both Helm and Terraform | Both repositories |
YAML Catalogs
Deploy Kubernetes applications and platform tools using Helm charts and ArgoCD Applications.
Common use cases:
- Monitoring agents (Datadog, Prometheus)
- Security tools (Cert-Manager, External Secrets)
- Developer tools (Argo Workflows, Tekton)
- Application services
Deployment location: registry/environments/<env>/<cluster>/
IAC Catalogs
Provision cloud infrastructure resources using Terraform via Crossplane's Terraform provider.
Common use cases:
- Cloud storage (S3 buckets, Azure Storage)
- Databases (RDS, Azure SQL, Cloud SQL)
- Networking (VPCs, subnets, load balancers)
- IAM roles and policies
Deployment location: registry/clusters/<cluster>/components/iac/
Hybrid Catalogs
Combine infrastructure provisioning and application deployment in a single catalog.
Common use cases:
- Database with management application
- Monitoring infrastructure with collection agents
- Complete application stacks
- Multi-tier architectures
Deployment location: Both application and platform repositories
Getting Started
Follow these steps to start using GitOps Catalogs:
- Review catalog prerequisites
- Understand catalog types and choose the right type
- Create your first catalog:
- Create a YAML catalog for applications
- Create an IAC catalog for infrastructure
- Create a Hybrid catalog for combined deployments
- Deploy catalog items to your clusters and environments
Common Use Cases
Standardize Monitoring
Create a Datadog YAML catalog to deploy monitoring agents consistently across all clusters with environment-specific configurations.
Provision Cloud Resources
Create an S3 bucket IAC catalog to provision storage with standardized security settings, versioning, and encryption.
Deploy Full Environments
Create a Hybrid catalog that provisions a PostgreSQL database and deploys your application with proper connection configuration.
What's Next?
- Understand catalog types in detail
- Review catalog prerequisites
- Learn about catalog annotations for YAML catalogs
- View catalog examples
- Explore dynamic environment provisioning with catalogs