What's New in Terraform 1.4 - Exploring the terraform_data resource and -or-create flag

preview_player
Показать описание
Terraform 1.4 was released a few weeks ago with some excellent new features. Two of the features that caught my eye are the terraform_data managed resource and the -or-create flag for terraform workspace select. In particular, I'm curious to see how folks use terraform_data outside of the two use cases HashiCorp has identified.

There is a new Terraform managed resource called terraform_data that replaces the null_resource and makes the null provider unnecessary. The terraform_data resource lives in the special builtin provider in the Terraform binary, which is a special provider type we'll get into. The resource can also be used with the replace_triggered_by argument in a lifecycle block to trigger a recreation on an arbitrary value.

The other interesting feature is a new flag for the terraform workspace select command. Previously, if you ran terraform workspace select on a workspace name that did not exist, terraform would throw an error. This was a constant headache for anyone trying to automate terraform deployments in a pipeline with workspaces. The new -or-create flag used in conjunction with terraform workspace select will create the named workspace if it doesn't exist. That's a quality of life improvement I can get behind!

In the video we'll cover the following:

🌮 Terraform workspace select command
🌮 Builtin provider overview and history
🌮 Using terraform_data as a replacement for null_resource
🌮 Using terraform_data with the replace_triggered_by lifecycle argument

You can follow along by using the code found here:

Thank you so much for watching! Subscribe if you think I’ve earned it. Hit the bell as well if you’re feeling swell.❤️&🌮

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
🌮 Other videos to check out:

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
🌮 Timestamps:

⌚ 0:00 Intro
⌚ 1:08 Using terraform workspace select with -or-create
⌚ 4:25 Terraform's builtin provider
⌚ 7:57 Null provider background
⌚ 10:27 Replace the null_resource with terraform_data
⌚ 14:03 Using terraform_data with replace_triggered_by
⌚ 18:48 But why terraform_data?

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
#terraform #hashicorp #devops #cloudengineer #techlearning
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
⭐ CONNECT WITH ME 🏃🦖

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬

🌮 About Me 🌮

Ned is a curious human with a knack for creating entertaining and informative content. With over 20 years in the industry, Ned brings real-world experience to all his creative endeavours, whether that's pontificating on a podcast, delivering live instruction, writing certification guides, or producing technical training videos. He has been a helpdesk operator, systems administrator, cloud architect, and product manager. In his newest incarnation, Ned is the Founder of Ned in the Cloud LLC. As a one-man-tech juggernaut, he develops courses for Pluralsight, runs two podcasts (Day Two Cloud and Chaos Lever, and creates original content for technology vendors.

Ned has been a Microsoft MVP since 2017 and a HashiCorp Ambassador since 2020, and he holds a bunch of industry certifications that have no bearing on anything beyond his exceptional ability to take exams and pass them. When not in front of the camera, keyboard, and microphone, you can find Ned running the scenic trails of Pennsylvania or rocking out to live music in his hometown of Philadelphia. Ned has three guiding principles: Embrace discomfort, Fail often, and Be kind.
Рекомендации по теме
Комментарии
Автор

What use cases do you have for terraform_data? It seems like a really flexible resource, but I can't think of anything off the top of my head.

NedintheCloud
Автор

I would like to hear more about your opinion on provisioners.

pitrp
Автор

Hi Thanks for explaining Terraform_data resource. I have question:

I want to run a python script and it willl output in one textfile and that txt file text I want to use as variable. I have used Terraform _data to run python script with local_exec provisioner but i am failed put that text file data in variable. can you please suggest what to do?

SantoshPatil-ldyg
Автор

It appears to me that hashicorp just moved null_resource into TF core and renamed it to terraform_data. It works same, no?

OctavianFox
Автор

Can you compare terraform and Terraspace

SatinderSingh
Автор

you should make a separate playlist terraform 1.0+ and post all new updates into it...

KoljaMineralka