/terraform-infrastructure

This module serves as the foundation for the infrastructure of my personal projects. It leverages Terraform, a popular Infrastructure as Code (IaC) tool, to provision and manage resources in an automated, consistent, and manageable manner.

Primary LanguageHCLMIT LicenseMIT

Terraform Infrastructure

Terraform

This module serves as the foundation for the infrastructure of my personal projects. It leverages Terraform, a popular Infrastructure as Code (IaC) tool, to provision and manage resources in an automated, consistent, and manageable manner.

The module is designed to create the following resources:

  • Workload Identity Pool (Github): This resource allows your GitHub actions to authenticate with Google Cloud services. It provides a secure way to manage and authorize my GitHub workflows.

Modules Docs

Requirements

Name Version
terraform ~> 1.6
google ~>5.4

Providers

Name Version
google 5.10.0

Modules

Name Source Version
github-identity-federation ./modules/github-identity-federation n/a
mlops ./modules/vertex-ai n/a

Resources

Name Type
google_project_iam_member.github-actions-artifacts-binding resource

Inputs

Name Description Type Default Required
federated_github_users The Github users to federate.
map(object({
name = string
display_name = string
description = string
allowed-repositories = list(string)
}))
n/a yes
gcp_region The region in which the resources will be provisioned. string "us-central1" no
landing_identity_pool_id The ID of the Identity pool. string n/a yes
landing_identity_provider_id The ID of the Identity pool provider. string n/a yes
landing_project_id The ID of the project in which the resources will be provisioned. string n/a yes
mlops_project_id The ID of the project in which the resources will be provisioned. string n/a yes

Outputs

No outputs.