Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Terraform Workshop
Search
Orlando Del Aguila
March 11, 2017
Programming
1
150
Terraform Workshop
Intro to Terraform workshop I gave for the Hacker Garage Community day 2017
Orlando Del Aguila
March 11, 2017
Tweet
Share
More Decks by Orlando Del Aguila
See All by Orlando Del Aguila
Open Source + Nonprofits = 💪
orlando
0
69
Web APIs 2019
orlando
0
110
Managing remote teams
orlando
0
59
How to be a Senior Software Engineer
orlando
0
130
Infrastructure as Code with Terraform
orlando
0
270
Concurrencia, Paralelismo y el Event-loop
orlando
0
340
Talking Web Apps
orlando
0
85
Web Launchpad - Chelajs
orlando
0
200
Web Launchpad
orlando
1
310
Other Decks in Programming
See All in Programming
Django for Data Science (Boston Python Meetup, March 2025)
wsvincent
0
320
List とは何か? / PHPerKaigi 2025
meihei3
0
670
AHC045_解説
shun_pi
0
460
Rollupのビルド時間高速化によるプレビュー表示速度改善とバンドラとASTを駆使したプロダクト開発の難しさ
plaidtech
PRO
1
160
Bedrock×MCPで社内ブログ執筆文化を育てたい!
har1101
6
870
Signal-Based Data FetchingWith the New httpResource
manfredsteyer
PRO
0
160
Qiita Bash
mercury_dev0517
1
180
[NG India] Event-Based State Management with NgRx SignalStore
markostanimirovic
0
110
PHPバージョンアップから始めるOSSコントリビュート / how2oss-contribute
dmnlk
1
970
Develop Faster With FrankenPHP
dunglas
2
3.2k
リアルタイムレイトレーシング + ニューラルレンダリング簡単紹介 / Real-Time Ray Tracing & Neural Rendering: A Quick Introduction (2025)
shocker_0x15
1
290
Chrome Extension Techniques from Hell
moznion
1
160
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
19
1.1k
YesSQL, Process and Tooling at Scale
rocio
172
14k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.3k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.1k
Optimizing for Happiness
mojombo
377
70k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
2.9k
GitHub's CSS Performance
jonrohan
1030
460k
Statistics for Hackers
jakevdp
798
220k
It's Worth the Effort
3n
184
28k
We Have a Design System, Now What?
morganepeng
52
7.5k
Unsuck your backbone
ammeep
670
57k
Transcript
Terraform Workshop Orlando Del Aguila Hash U
@orlando @eatcodetravel @eatcodetravel eatcodetravel.com
www.hashlabs.com
Overview
Commands
1. Init 2. Version 3. Get 4. Plan 5. Apply
Providers
Terraform / Provider provider "heroku"{ email = "
[email protected]
" api_key =
"my api key" }
Resources
Terraform / Resources resource "heroku_app" "example" { name = "my-super-heroku-app"
region = "us" }
Data Sources
Terraform / Data sources data "aws_ami" "ubuntu" { most_recent =
true filter { name = "name" values = ["ubuntu/images/hvm-ssd/ubuntu-trusty-*"] } } resource "aws_instance" "example" { ami = "${data.aws_ami.ubuntu.id}" instance_type = "t2.micro" }
Variables
Terraform / Variables variable “app_name" { default = “my-super-app-tf“ }
variable "heroku" { default = { email = “
[email protected]
" api_key = “123123" } } variable "list" { default = [“first”,”second”] }
Variable Interpolation
Terraform / Variables data "aws_ami" "ubuntu" { most_recent = true
filter { name = "name" values = ["ubuntu/images/hvm-ssd/ubuntu-trusty-*"] } } resource "aws_instance" "example" { ami = "${data.aws_ami.ubuntu.id}" instance_type = "t2.micro" }
Interpolation functions
Terraform / Functions resource "heroku_app" "example" { name = "${uuid()}"
region = "us" }
Output Variables
Terraform / Functions output "git_url" "example" { value = "${heroku_app.example.git_url}"
}
Modules
Terraform / Modules variable "app_name" {} module "app"{ source =
"./heroku_app" app_name = "${var.app_name}" region = "us" }
State
Terraform / Modules https://gist.github.com/orlando/ 2fe57ff440d88655732008d731e3be02
Hands on
1. Install Terraform 2. Clone repository 3. Heroku account 4.
Heroku API key 5. Terraform.tfvars