REX

at


ressource summary "paris_hashicorp_user_group" {
type = "meetup"
date = "11/07/2017"
parts = [
"Intro",
"Why Terraform ?",
"Implementation",
"Terraform in the delivery pipeline",
"So Terraform ?"
]
}


Intro
R&D tinyclues team is split in 4 feature teams
My feature team is: Tools & Productivity
our mission is to provide tools and best practices in tinyclues engineering


Intro
Text



Why Terraform ?


Why Terraform ?

Iso prod

Why Terraform ?

Fast Simple

Why Terraform ?
Directed Acyclic Graph


Implementation


Software Factory
Implementation
When another team use also Terraform ...


Implementation
How to use Terraform at Scale ?


Split your code in multiple part
Implementation




Implementation
How to use Terraform at Scale ?


Implementation
How to use Terraform at Scale ?





Implementation
How to use Terraform at Scale ?



Implementation
How to use Terraform at Scale ?



Implementation
How to use Terraform at Scale ?


Implementation
How to use Terraform at Scale ?


Implementation
How to use Terraform at Scale ?


make plan ENV=production STACK=root
make apply ENV=production STACK=root
make shellImplementation
How to use Terraform at Scale ?


Implementation
How to use Terraform at Scale ?


Implementation
How to use Terraform at Scale ?


Implementation
How to use Terraform at Scale ?



Terraform in the delivery pipeline




Terraform in the delivery pipeline



Terraform in the delivery pipeline


Mistral
Terraform in the delivery pipeline
variable "service0" {
type = "map"
default = {
version = "32"
image = "service0"
registry = "my_awesome_registry.com"
}
}


Terraform in the delivery pipeline






What we deployed with terraform ?


So Terraform ?


Terraform, what's next ?
So Terraform ?

| + | - |
|---|---|
| Directed Acyclic Graph | Understand the language (Not real structure control) |
| Declarative language | Not simple to use with existing resources |
| Awesome interpolation functions | Some language limitations |
| Encourage good design practices | |
| Separate the planning phase from the execution phase |

ressource tinyclues_questions "questions" {
}
ressource tinyclues_recruitment "recruitment" {
who = "Jean-Yves Rivallan"
}Ressources
- https://charity.wtf/2016/02/23/two-weeks-with-terraform/
- https://github.com/segmentio/terraform-docs
- https://github.com/gruntwork-io/terragrunt
- https://blog.gruntwork.io/terraform-tips-tricks-loops-if-statements-and-gotchas-f739bbae55f9
- https://www.youtube.com/watch?v=RldRDryLiX

REX
By Damien Goldenberg
REX
- 555