This repository contains reusable Terraform modules for Fides infrastructure.
Each module is versioned independently using a version.json file in the module directory. When changes are pushed to the main branch, our CI pipeline automatically tags modules that have updated version numbers.
Tags follow the format {module-name}/v{version}, for example: fides-aws-ecs/v1.0.0
To use a module in your Terraform configuration:
module "fides_aws_ecs" {
source = "github.com/ethyca/fides-terraform//fides-aws-ecs?ref=fides-aws-ecs/v1.0.0"
# Module inputs here
}Note the double slash (//) in the source URL, which is required when referencing a subdirectory in a Git repository.
- fides-aws-ecs: Deploys Fides on AWS ECS
- Clone the repository
- Install the Terraform version specified in the
.terraform-versionfile a. You can usebrew install tfenvto installtfenvif you don't have it already. b. You can usetfenv useto install the correct version. - Run
terraform initto install the correct version of Terraform providers
- Make your changes to the module
- Update the
versionfield in the module'sversion.jsonfile according to semantic versioning - Create a PR and merge to the
mainbranch - The GitHub Actions workflow will automatically create a tag for the new version
Each module should include:
version.json- Contains module metadata and versionREADME.md- Module documentation- Terraform files, including at least a
main.tf,variables.tf, andoutputs.tf
The Fides ecosystem of tools are licensed under the Apache Software License Version 2.0. Fides tools are built on fideslang, the Fides language specification, which is licensed under CC by 4.
Fides is created and sponsored by Ethyca: a developer tools company building the trust infrastructure of the internet. If you have questions or need assistance getting started, let us know at fides@ethyca.com!