feat: add initial tofu image
Closes #114 (closed)
Summary:
- Docker changes:
- Renamed existing Dockerfile to Dockerfile.terraform to differentiate it
- Created new Dockerfile.tofu for the new image. This uses the apk repository to install tofu, so it's much easier than the old TF image that required a manual download.
-
gitlab-terraform
utility script- There's a very small change in this script. The script makes a check to determine which version of terraform is being run by reading the output of
terraform -version
and parsing the output. This doesn't work with tofu since the output is different, but luckily it doesn't matter since the version check is so old. I added a check if tofu is on the path, and essentially skip the check if it is.
- There's a very small change in this script. The script makes a check to determine which version of terraform is being run by reading the output of
- CI/CD changes
- There are a LOT of large file changes here, but most of it is copy/paste so it looks deceptively large.
- The main change here is I removed the "unit" tests from the main CI/CD file and moved them into
.gitlab/terraform-test.gitlab-ci.yml
to make it much easier to read. This was then effectively copied intotofu-test.gitlab-ci.yml
with a lot of the outputs and images changed to ensure they are testing the right output. - Example:
tofu-test-without-implicit-init
expects error text, which needs to be changed from the terraform test since it expects different test output.
Edited by Patrick Rice