Should You Use Typescript To Write Terraform? (The Terraform CDK)

Recently, Terraform dropped an interesting new extension to their Terraform toolchain: the Terraform CDK. The new CDK allows you to write Terraform using TypeScript and Python — neat! But is the CDK as good as it seems?

Terraform Written In The CDK

I wanted to jump in to uncover the truth and understand whether writing Terraform in TypeScript really is the future, or whether it’s just another fad.

By the end of this article you’ll understand what the Terraform CDK is, how it works, and ultimately help answer the question: should you use it? 

Terraform: How To Rename (Instead Of Deleting) A Resource

Are you trying to rename or move a Terraform resource and Terraform is now trying to re-create your resource rather than referencing the existing one?

It’s a common issue, and the answer is quite straight-forward. Today we’ll cover how you can move a Terraform resource instead of deleting it.

By the end of this article you’ll understand how to rename, instead of deleting a resource and the reasons for how / why it works. 

The Simplest Possible EC2 Web Server Setup Using Terraform (On AWS)

Are you looking to create a basic AWS instance web server? Maybe you’re learning AWS, trying to get an understanding on Terraform or actually trying to get a pieceof your infrastructure setup. Whatever your reason for needing a simple AWS web server setup, that’s what we’ll be covering today.

Today we’ll walk through (in detail) how to create the simplest possible EC2 web server on AWS using Terraform. We’ll cover all of the fiddly AWS details like AMI’s and user data scripts.

By the end of this article you’ll know how to create a simple Apache based web server on AWS EC2 written in Terraform. 

What is Terraform? A Simple Definition.

So you might have heard of this Terraform thing, but you’re not totally sure what it is, right? Not to fear, we’ve got you covered…

Today we’re going to dive into what Terraform is, why it’s useful, how it compares to other tools, and some of the difficulties of using it.

By the end of this article you’ll understand what Terraform is, why it’s useful and what you’d use it for. 

10 Terraform Best Practices: For Secure & Fast Infrastructure.

If you’ve just started working with Terraform you might be getting that familiar feeling in the back of your mind: “Am I doing this the right way?“.

Terraform Best Practices

Today we’re going to tackle your nagging feelings head on by discussing all the important best practices for Terraform, so that you have the confidence to go full steam ahead with your project.

By the end of this article you’ll understand 10 best practices to follow when implementing Terraform. 

Should You Commit the Terraform .tfstate File to Git?

I’m guessing you’ve started working with Terraform and you’re staring at that weird looking state file Terraform just outputted wondering if it’s safe to commit the file to Git (or some other source control)?

Terraform State

A key to understanding Terraform is understanding how to manage your state. Today we’re going to discuss the in’s and out’s of the state file, and answer the pressing question: Should you commit the Terraform .tfstate file to Git?

By the end of this article you’ll understand what a TF state file is, why Terraform needs it, how you can manage it, and ultimately whether you should commit it to git (or not!)

The Ultimate Terraform Workflow: Setup Terraform (And Remote State) With Github Actions

Running Terraform in a CI Server can be incredibly useful when you’re trying to automate or experiment with cloud resources. One of the easiest, cheapest and most accessible setups I’ve found is using Github Actions and S3 for state.

But learning a new technology can be frustrating especially when the anxiety of: “Am I doing this right?” strikes. In this article I’ll walk you through how to get a Terraform project running in Github Actions from start to finish — with all the details you need to understand what’s happening and why.

By the end of this article you will have a running Terraform project on Github Actions using remote state. 

What Is the Best Way to Learn Terraform?

So you’ve heard about this Terraform thing and want to get in on the action? Learning a new technology such as Terraform can be a daunting task at first. Today we’re going to go through the best way to learn Terraform so that you can break through the fog of uncertainty and start learning today.

Terraform

In this article we’ll discuss the different considerations you should make when learning Terraform, the main features you’ll need to know and the features you can safely ignore (at first) to give you the confidence to start working with Terraform.

By the end of this article you should have an understanding of what Terraform is, and the best way to start to learn it.

Create An AWS S3 Website Using Terraform And Github Actions

We’ve talked a lot recently about infrastructure as code and setting up cloud environments. But nothing beats getting hands on with a technology to help learning. A workflow I’ve used a lot recently is Terraform (and remote state) using a Github Actions pipeline. It’s cheap, straight-forward and a great little workflow for creating cloud resources. Today, let me show you why.

Terraform logo

So I thought setting up a basic workflow for creating a website would be a great hands-on way to get your head around some different topics: AWS, Terraform and Github Actions. Today we’ll go through how to setup an S3 bucket (which could function as a website) in AWS and use a Github Actions pipeline to create the infrastructure and upload our files.

By the end of this article you’ll know how to configure an AWS S3 bucket using Terraform and deploy it using Github Actions. 

What is Immutable Infrastructure?

Ever had to SSH into a production server to manually copy over files, or to run a command? Palms sweaty and shaking. You don’t know what the outcome of the update will be, and if something goes wrong the system could go down? If you haven’t, you’re one of the lucky ones!

Making manual changes onto an existing server means you’re likely operating with “mutable infrastructure” — whether you know it or not. But, there is another way. And that’s immutable infrastructure. And today we’re discussing exactly that, what immutable infrastructure is, the benefits and the tools you can use to implement it.

By the end of this article you’ll have a clear understanding of what immutable infrastructure is and why it’s important, the pro’s, con’s and trade offs.