Moving Terraform State from OpenStack Swift to GitLab

5 minute read Published: Author: Colan Schwartz

For our cloud computing, we typically use an OpenStack provider because of its open-source nature: There’s no vendor lock-in, and the IaaS code is peer-reviewed unlike providers such as AWS, Azure, GCP, etc. (Shout out to Vexxhost for having great support!) As such, we’ve been using OpenStack’s Swift object storage service for storing Terraform’s state, which allows Terraform to track all of the resources it manages for automating infrastructure.

Recently, however, …

Setting Deployment Environments' Terraform State Backends with Environment Variables

4 minute read Published: Author: Colan Schwartz

Terraform is an essential tool for automating cloud-computing infrastructure and storing it in code (IaC). While there are several ways to navigate between deployment environments (e.g. Dev, Staging & Prod), I’d like to talk about how this can be done with environment variables, and explain why it can’t be done more naturally with Terraform variables.

I originally wrote this as a comment on the feature request Using variables in terraform backend config block, which explains …

Protecting your cloud networks with WireGuard VPN and Ansible

6 minute read Published: Author: Colan Schwartz

Within cloud computing, there are various types of sites and services not meant for public consumption (e.g. analytics software, databases, log servers, etc.). For security reasons, it’s best to keep these accesssible only via the private network, which is behind the firewall.

To provide access to these resources, a virtual private network (VPN) should be used, with network access granted only to trusted individuals within the organization.

Traditionally, OpenVPN, IPsec and other …