Skip to content

A Terraform infrastructure repository to manage cloud resources for testing.

helmless/gcp-infrastructure

Repository files navigation

helmless-gcp-infrastructure

This repository contains the Terraform code to create the infrastructure for the helmless GCP project using Terramate.

Prerequisites

All tools in this project are managed using asdf. You must install asdf and the required plugins before you can use the tools in this project.

brew install asdf
asdf plugin add terraform
asdf plugin add terramate
asdf plugin add tflint
asdf plugin add pre-commit

Then run the following command to install the required versions of the tools:

asdf install

And finally, install the pre-commit hooks:

pre-commit install

Project Structure

The project is structured into the following stacks:

  • stacks/project-factory: Contains the base infrastructure and GCP project setup, including the state bucket.
  • stacks/github-federation: Contains the Github integration setup to allow the pipelines to authenticate with GCP.
  • stacks/e2e-tests: Contains Cloud Run Services for the e2e tests in helmless/helmless.

Usage

To plan changes for all stacks, run the following command:

NOTE
You must commit all changes before running this command.
The command will fail if there are uncommitted changes.
To work around this, you can set export TM_DISABLE_SAFEGUARDS=git

Authenticate with GCP:

gcloud auth application-default login

Plan the changes:

terramate script run plan

And to apply the changes, run the following command:

terramate script run apply

About

A Terraform infrastructure repository to manage cloud resources for testing.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages