OpenTofu modules for setting up cloud resources required by Massdriver integrations.
These modules create the necessary cloud infrastructure for Massdriver to integrate with your cloud accounts. Each module follows the principle of least privilege, granting only the minimal permissions required.
| Integration | Cloud | Documentation |
|---|---|---|
| AWS Cost and Usage Reports | AWS | docs.massdriver.cloud/integrations/aws-cost-and-usage-reports |
| Azure Cost Management Exports | Azure | docs.massdriver.cloud/integrations/azure-cost-management-exports |
- Clone this repository
- Navigate to the integration directory
- Follow the README for that integration
git clone https://github.com/massdriver-cloud/integrations.git
cd integrations/<integration-name>
tofu init
tofu apply- OpenTofu >= 1.0 (or Terraform >= 1.0)
- Cloud provider CLI authenticated (AWS CLI, Azure CLI)
- Appropriate permissions to create the required resources
- OpenTofu >= 1.0 (or Terraform >= 1.0)
- pre-commit installed
This repository uses pre-commit hooks to automatically format and validate OpenTofu code before commits. To set up pre-commit hooks:
-
Install pre-commit:
# Using pip pip install pre-commit # Using Homebrew (macOS) brew install pre-commit # Using conda conda install -c conda-forge pre-commit
-
Install the git hooks:
pre-commit install
-
(Optional) Run pre-commit on all files:
pre-commit run --all-files
The pre-commit hooks will automatically:
- Format OpenTofu files using
tofu fmt - Validate OpenTofu configuration files
- Check for common issues
You can also run formatting and validation manually:
# Format all OpenTofu files
tofu fmt -recursive
# Validate a specific module
cd aws-cost-and-usage-reports
tofu init -backend=false
tofu validateFor questions or issues, contact support@massdriver.cloud.