Skip to content

CodeBrewery IaC : Place for those Terraform scripts, Kubernetes manifests and other configurations for CodeBrewery.

License

Notifications You must be signed in to change notification settings

slashexx/codebrewery-infra

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Terraform Kubernetes GitOps

CodeBrewery Infra

This repository contains all the infrastructure as code (IaC) files, Kubernetes manifests, and other configurations required to manage the infrastructure for CodeBrewery. The application follows a GitOps approach to infrastructure management.


Table of Contents


Overview

CodeBrewery Infra provides all the scripts and manifests to define and manage the infrastructure for CodeBrewery. The repository leverages Terraform for cloud resource provisioning and Kubernetes for application orchestration.

It follows a GitOps model, ensuring infrastructure is declaratively managed, version-controlled, and easily reproducible.


Repository Structure

The repository is organized as follows:

codebrewery-infra/
│
├── k8s/                # Kubernetes manifests for CodeBrewery services
│   ├── deployments/    # Deployment manifests
│   ├── services/       # Service definitions
│   └── configmaps/     # Configuration files for Kubernetes
│
├── terraform/          # Terraform scripts for cloud resource provisioning
│   ├── modules/        # Reusable Terraform modules
│   ├── variables.tf    # Terraform input variables
│   └── main.tf         # Main Terraform configuration
│
├── CONTRIBUTING.md     # Contribution guidelines
└── README.md           # Documentation

Technologies Used

  • Terraform: Infrastructure as Code (IaC) to provision cloud resources.
  • Kubernetes: For container orchestration.
  • GitOps: Version-controlled infrastructure management.
  • HCL: HashiCorp Configuration Language (used with Terraform).

Getting Started

Prerequisites

Make sure you have the following tools installed:

  • Terraform (v1.4+)
  • Kubectl (v1.25+)
  • Kubernetes Cluster (Minikube, k3s, or cloud-managed clusters)
  • Git

Setting Up

  1. Clone the repository:

    git clone https://github.com/slashexx/codebrewery-infra.git
    cd codebrewery-infra
  2. Provision infrastructure with Terraform: Navigate to the terraform/ directory and initialize Terraform:

    cd terraform
    terraform init
    terraform plan
    terraform apply
  3. Deploy Kubernetes manifests: Navigate to the k8s/ directory:

    kubectl apply -f k8s/deployments/
    kubectl apply -f k8s/services/
  4. Verify the deployment:

    kubectl get pods
    kubectl get services

Contributing

We welcome contributions! 🎉

To get started, check out the CONTRIBUTING.md file for details on how to:

  • Report issues and suggest new features
  • Contribute code
  • Follow coding style and guidelines

License

Distributed under the MIT License. See LICENSE for more information.


Questions or Help?

If you have any questions or issues, feel free to open a discussion or raise an issue in this repository.

Let’s build CodeBrewery together! 🚀


About

CodeBrewery IaC : Place for those Terraform scripts, Kubernetes manifests and other configurations for CodeBrewery.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages