Welcome! We’re Operating Ops, and we deploy applications to cloud infrastructure. Today, that means building pipelines to automate what Operators and System Administrators used to do by hand. Pipelines and their components come in many flavors. Our favorites are Terraform, Docker, and Azure DevOps.
We’ve benefited a lot from the work the open source community has shared, and we try to return that investment. When we find a best practice or solve a tricky problem, we write it up here. If you run in to the same problems, hopefully we can help!
- Not getting what you need from the conditional syntax in Azure Pipelines? Try these patterns.
- Need to pass parameters from your CI pipeline into your Docker image builds? Here’s how we do it.
- Does the terraform under your pipeline say it succeeded even though your application isn’t working? Validating with a table of terratests can help make deployment errors more visible.
- Need a terraform data resource that doesn’t exist yet? Here’s a quick and clean pattern to build a custom one.
- Tired of writing complex parsing logic for your log output? Try structuring your logs as JSON.
- Like PowerShell DSC but need to figure out how to run it on ephemeral cloud instances? Here’s how we do it.
If you need more than you find in these articles, we’re also available to consult.