I am a few months into working with the official Terraform provider for OCI and my opinion is that Oracle still has a lot of work ahead of them. I honestly don’t understand how some things are as bad as they are. That might sound a bit scathing but let’s remember that Oracle has no […]
My work frequently involves using remote, ephemeral, containers to run scripts/code/whatever for DevOps type automation. Typically these containers are running some flavor of Linux. My work also frequently involves designing these automations for Azure and using Terraform for IaC. On occasion though, I find the need to drop out of “declarative” mode and utilize scripted […]
Working with Terraform to build VM’s in Azure for proof-of-concept work, I often opt to use Ubuntu for my Linux systems. Up until 18.04 everything worked fine but when I tried to go to 20.04 or later my Terraform deployment would error out with: Failure sending request: StatusCode=404 — Original Error: Code="PlatformImageNotFound" Message="The platform image […]
If you thought the title of this article was just a bunch of mental word vomit, well, it kind of is. But the words all have meaning and I wanted to quickly talk about a key issue that I have continued to come across in my journey with Terraform… namely, getting things to apply consistently […]
I have been working on a project that requires me to interact with upwards of 10 separate repositories at once, typically referencing a handful of them and while actively making changes and commits across three of them. A lot of my time is eaten up with switching between windows in an attempt to find the […]
Apparently a handful of customers using Cloudflare for DNS, and specifically CNAME records experienced a brief outage of name resolution services on New Year’s. I found the reason why to be rather interesting. Devs at cloudflare assumed time can’t move backwards… An understandable assumption but actually faulty because of leap seconds… Anyhow, if you do […]
A lot of my bash scripting experience has been, in one sense, relatively simple. I have several scripts that span several hundred lines and do fairly complex things across multiple systems. From that perspective they aren’t necessarily simple. However it wasn’t until recently that I had to really starting thinking about managing when scripts run […]
I am working on a project where I need to generate a random value and assign it to a variable… Initially I was doing this: var=$(date +%s | sha512sum | base64 | head -c 12 ; echo) Which was okay until I started executing my script more than once in a short period of time. […]
To make this comparison we need to first consider the problem that both approaches help us to solve. When programming any system you are essentially dealing with data and the code that changes that data. These two fundamental aspects of programming are handled quite differently in procedural systems compared with object oriented systems, and these […]