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 of a single article covering both Oracle Linux versions I decided to use a more the search-engine friendly method of splitting the topics.
I’m still using Terraform 0.14.5/OCI provider 4.10.0.
Referring back to the documentation the latest Oracle-provided Oracle Linux 8 image at the time of writing is Oracle-Linux-8.3-2021.01.12-0. As my home region is eu-frankfurt-1
and I want to create an always-free VM I need to go with this OCID:
ocid1.image.oc1.eu-frankfurt-1.aaaaaaaa3qkhrcj4xo5beoffschi2ofagkufpc6bp2mnkcglpsq4pivxp2dq
So now let’s try to get the same OCID via Terraform’s data source. Here’s the code snippet I used in Cloud Shell:
# using Instance Principal for authentication provider "oci" { auth = "InstancePrincipal" region = var.oci_region } data "oci_core_images" "ol8_latest" { compartment_id = var.compartment_ocid operating_system = "Oracle Linux" operating_system_version = "8" shape = "VM.Standard.E2.1.Micro" } output "latest_ol8_image" { value = data.oci_core_images.ol8_latest.images.0.id }
Note that unlike with Oracle Linux 7 you don’t specify the “dot” release. Doing so will raise an error with Terraform 0.14.5/OCI provider 4.10.0.
Let’s run the code:
$ terraform apply Apply complete! Resources: 0 added, 0 changed, 0 destroyed. Outputs: latest_ol8_image = "ocid1.image.oc1.eu-frankfurt-1.aaaaaaaa3qkhrcj4xo5beoffschi2ofagkufpc6bp2mnkcglpsq4pivxp2dq"
A quick comparison reveals that my code fetched the intended OCID; QED.
I really like not having to specify the dot release with Oracle’s provided OL8 as it’s more future-proof. As soon as Oracle Releases Oracle Linux 8.4 in their cloud, I don’t need to change a single line of code to use it.
On the other hand, if my code requires a different (more specific) image, some trickery is needed. I’ll write about a possible solution in another post.
Full name
Martin Bach
My company
http://www.enkitec.com
Recent comments
3 years 5 weeks ago
3 years 17 weeks ago
3 years 22 weeks ago
3 years 23 weeks ago
3 years 27 weeks ago
3 years 48 weeks ago
4 years 16 weeks ago
4 years 46 weeks ago
5 years 30 weeks ago
5 years 31 weeks ago