Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rafaumeu/multicloud-iac-journey
🚀 Infrastructure as Code (IaC) journey exploring GCP, Azure, and AWS using Terraform. Features Compute Engine, Cloud Functions, and more.
https://github.com/rafaumeu/multicloud-iac-journey
aws azure cloud-computing cloud-infrastructure devops gcp infrastructure-as-code multicloud terraform terraform-modules
Last synced: 3 days ago
JSON representation
🚀 Infrastructure as Code (IaC) journey exploring GCP, Azure, and AWS using Terraform. Features Compute Engine, Cloud Functions, and more.
- Host: GitHub
- URL: https://github.com/rafaumeu/multicloud-iac-journey
- Owner: rafaumeu
- Created: 2025-02-07T14:04:00.000Z (14 days ago)
- Default Branch: main
- Last Pushed: 2025-02-17T09:30:48.000Z (4 days ago)
- Last Synced: 2025-02-17T10:22:41.833Z (4 days ago)
- Topics: aws, azure, cloud-computing, cloud-infrastructure, devops, gcp, infrastructure-as-code, multicloud, terraform, terraform-modules
- Language: HCL
- Size: 13.7 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🚀 MultiCloud IaC Journey
A modern infrastructure as code project exploring multiple cloud providers (GCP, Azure, AWS) using Terraform.
[](https://www.terraform.io/)
[](https://cloud.google.com/)
[](https://azure.microsoft.com/)
[](LICENSE)---
## 📖 Table of Contents
| [Tech Stack](#-tech-stack) | [Features](#-features) | [Prerequisites](#-prerequisites) |
|---------------------------|------------------------|----------------------------------|
| [Setup](#️-setup) | [Project Structure](#️-project-structure) | [Environment Variables](#-environment-variables) |---
### ⚡ Tech Stack


---
## 🚀 Features
- **Multi-Cloud Support**:
- GCP resource management
- Azure resource management
- Provider-specific configurations
- Resource tagging and organization
- **GCP Configuration**:
- Compute Engine instances
- Network configuration
- Zone and region management
- Resource tagging- **Azure Configuration**:
- Resource Group management
- Virtual Network setup
- Region configuration
- Resource tagging- **Infrastructure Management**:
- Terraform state management
- Provider configuration
- Resource organization
- Multi-environment support## 📦 Prerequisites
- Terraform 1.0+
- GCloud CLI configured
- Azure CLI configured
- GCP account with appropriate permissions
- Azure subscription with appropriate permissions
- Basic understanding of cloud concepts## 🛠️ Setup
1. Clone the repository:
```bash
git clone https://github.com/rafaumeu/multicloud-iac-journey.git
cd multicloud-iac-journey
```2. Initialize Terraform:
```bash
terraform init
```3. Plan the infrastructure:
```bash
terraform plan
```4. Apply the configuration:
```bash
terraform apply
```## 📝 Contributing
### Commit Convention
We follow the [Conventional Commits](https://www.conventionalcommits.org/) specification:
```bash
():[optional body]
[optional footer(s)]
```#### Types
- `feat`: A new feature
- `fix`: A bug fix
- `docs`: Documentation only changes
- `style`: Changes that do not affect the meaning of the code
- `refactor`: A code change that neither fixes a bug nor adds a feature#### Scopes
- `gcp`: Changes to GCP configuration
- `azure`: Changes to Azure configuration
- `aws`: Changes to AWS configuration
- `docs`: Changes to documentation
- `ci`: Changes to CI/CD pipeline## 🏗️ Project Structure
```
multicloud-iac-journey/
├── main.tf # Main configuration file
├── providers.tf # Cloud providers configuration
├── variables.tf # Variable definitions
└── .github/
├── workflows/ # GitHub Actions workflows
└── labeler.yml # PR labeler configuration
```## 🔧 Environment Variables
```bash
# GCP Configuration
GOOGLE_CLOUD_PROJECT="rafael-450215"
GOOGLE_CREDENTIALS="path/to/credentials.json"
```## 📤 Outputs
After applying the infrastructure, you'll get:
- Compute Engine instance details
- Network configuration information
- Resource IDs and names---
Made with ❤️ by Rafael Dias Zendron![]()
[](https://www.linkedin.com/in/rafael-dias-zendron-528290132/)
[](https://github.com/rafaumeu)