Common Tooling

In order to work with the Vetspire infrastructure, you will need to install the following tooling (click the links for all installation instructions):

  • kubectl - the Kubernetes CLI tool for running commands against clusters.

  • kustomize - this Kubernetes-native tool provides template-free configuration management.

  • gcloud - this CLI tool is for accessing the GCP APIs.

  • psql - our DBs use PostgreSQL and so the client is needed to access them.

  • cloud-sql-proxy - our CloudSQL instances are private which means they cannot be accessed outside of the GCP network. The only way to connect to them is via IAM and the CloudSQL Auth Proxy.

  • terraform/tfenv - our infrastructure is managed using infrastructure-as-code. We use Terraform for this and we recommend using tfenv to manage the installation of Terraform.

  • terragrunt - Terragrunt is a thin wrapper around Terraform that we use to add many features to our infrastructure as code, the most important being making our code more DRY.

Devcontainer

Another method of installing the above and managing the tooling used and development environment is to use our VSCode devcontainer. This can be found in this repo.

This tooling requires you use VSCode as your IDE of choice and that you have Docker installed in some way but allows you to automatically have all the required tooling when you need it when opening the repo.

Last updated