barmolegus / mutlicloud-terraform-demo-terragrunt

A Demo prepared for the Minsk DevOps community open meetup - Terragrunt

Home Page:https://community-z.com/events/rDgeXINGmu

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Multi-Cloud (AWS, Azure and GCP) IaC with Terraform empowered with Terragrunt

Build Status

Diagram

Image

Prerequisites

External

  • AWS Account and generated programmatic credentials.
  • GCP Account and generated programmatic credentials.
  • Azure Account and generated programmatic credentials.
  • CloudFlare account, domain and generated API Token.

Environment

Preparation

  1. Export all programmatic credentials for all clouds \ systems to your environment.
  2. Install dependencies with python pip:
pip install -r requirements.txt

Usage

Generate \ update the target environment

  1. New environment creation
cookiecutter .generator/
  1. Existing environment update
ENV=preprod
cookiecutter .generator/ -f --config-file $ENV/.cookiecutter.yaml

Apply core stack (or any other)

ENV=preprod
cd $ENV/core
terragrunt init
terragrunt apply

Apply all stacks

ENV=preprod
cd $ENV
terragrunt plan-all
terragrunt apply-all

Verify

fqdn=terraform-multicloud-demo-$ENV.dovnar-alexander.xyz
.data/check.sh $fqdn

Apply all stacks with Core

ENV=preprod
cd $ENV
terragrunt destroy-all

About

A Demo prepared for the Minsk DevOps community open meetup - Terragrunt

https://community-z.com/events/rDgeXINGmu

License:MIT License


Languages

Language:HCL 97.5%Language:Shell 2.5%