This page contains all my posts about Terraform in chronological order.
Avoid “Warning: Additional provider information from registry” for OCI Terraform Provider
After updating my main development workstation to Fedora 36 including all the tools I regularly use I noticed a change when working with Terraform code. The call to terraform init succeeded but was accompanied by a warning: $ terraform version -no-color Terraform v1.2.3 on linux_amd64 $ terraform init -no-color Initializing the backend… Initializing provider plugins……
Keep readingRetrieving passwords from OCI Vault for use in Terraform
This post is written with the intention to complement the excellent “A comprehensive guide to managing secrets in your Terraform code” by Yevgeniy Brikman. Its aim is to detail how Oracle Cloud Infrastructure Vault (OCI Vault) can be used to securely store credentials and subsequently use them in Terraform scripts. If you haven’t done so…
Keep readingCreate an OCI bastion service via Terraform
Maintaining bastion hosts (a “jump box” or other network entry point directly exposed to the Internet) is somewhat frowned upon by security conscious architects, for good reasons. In my opinion the only way to connect on-premises systems to the cloud is by means of a dedicated, low-latency/high-bandwidth, and most importantly well-secured link. I never liked…
Keep readingDevice name persistence in the cloud: OCI + Terraform
This is a really short post (by my standards at least) demonstrating how I ensure device name persistence in Oracle Cloud Infrastructure (OCI). Device name persistence matters for many reasons, not the least for my Ansible scripts expecting a given block device to be of a certain size and used for a specific purpose. And…
Keep readingOracle Database Cloud Service: Create a database from backup using Terraform
A common DBA task is to ensure that a development-type environment is refreshed. In a typical on-premises case a “dev refresh” involves quite a bit of scripting in various programming languages. Whilst that’s a perfectly fine approach, it can be done a lot simpler when you consider the use of the cloud. My example uses…
Keep readingTerraform tips’n’tricks: debugging data sources and testing interpolations
I have previously blogged about the use of Terraform data sources to fetch information concerning Oracle Cloud Infrastructure (OCI) resources. The documentation is pretty good, but sometimes you may want to know more about the data returned. This post describes a potential way to debug output of a data source and to evaluate interpolations. Do…
Keep readingTerraform tips’n’tricks: getting the latest Oracle Linux 8 image OCID programatically
This post is a direct follow up to the previous one where I shared how I used a Terraform data source to fetch the latest Oracle-provided Oracle Linux 7 cloud image identifier. This time around I’d like to fetch the latest Oracle Cloud ID (OCID) for Oracle Linux 8. It’s a different approach and instead…
Keep readingTerraform tips’n’tricks: getting the latest Oracle Linux 7 image OCID programatically
As with all cloud providers you need to specify an operating system image when creating virtual machines using Terraform in Oracle Cloud Infrastructure (OCI). This can either be an Oracle supplied image, or a custom image you built. This post describes how to fetch the most recent Oracle-provided image for Oracle Linux 7 in Terraform.…
Keep readingTerraforming the Oracle Cloud: choosing and using an image family
For a few times now I have presented about “cloud deployments done the cloud way”, sharing lessons learned in the changing world I find myself in. It’s a lot of fun and so far I have been far too busy to blog about things I learned by trial and error. Working with Terraform turned out…
Keep reading