https://github.com/raphaelbh/terraform-localstack
https://github.com/raphaelbh/terraform-localstack
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/raphaelbh/terraform-localstack
- Owner: raphaelbh
- Created: 2024-06-24T18:17:06.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2024-06-28T13:56:26.000Z (11 months ago)
- Last Synced: 2025-01-25T20:11:27.674Z (4 months ago)
- Language: HCL
- Size: 3.91 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Terraform + Localstack
[](#)
Create aws resources using localstack
## Requirements
[](https://www.docker.com/)
[](https://registry.terraform.io/)
[](https://aws.amazon.com/)## Installation
```bash
# aws cli - config (~/.aws/config)
[default]
region = us-east-1
output = json
endpoint_url=http://localhost:4566# aws cli - credentials (~/.aws/credentials)
[default]
aws_access_key_id = localstack
aws_secret_access_key = localstack
``````bash
# localstack
$ docker-compose up -d --build
``````bash
# terraform
$ (cd main && terraform init)
$ (cd main && terraform plan)
$ (cd main && terraform apply -auto-approve)
```## Test
```bash
# check if bucket was created
$ aws s3 ls
# check available website on
$ https://website.s3-website.localhost.localstack.cloud:4566/
```## Utils
```bash
# providers.tf
# add s3_use_path_style = true
# add skip_credentials_validation = true
# add skip_metadata_api_check = true
# add skip_requesting_account_id = true
# add localstack endpoints_url for servicesprovider "aws" {
access_key = var.access_key
secret_key = var.secret_access
region = var.regions3_use_path_style = true
skip_credentials_validation = true
skip_metadata_api_check = true
skip_requesting_account_id = trueendpoints {
apigateway = var.endpoints_url
apigatewayv2 = var.endpoints_url
cloudformation = var.endpoints_url
cloudwatch = var.endpoints_url
dynamodb = var.endpoints_url
ec2 = var.endpoints_url
es = var.endpoints_url
elasticache = var.endpoints_url
firehose = var.endpoints_url
iam = var.endpoints_url
kinesis = var.endpoints_url
lambda = var.endpoints_url
rds = var.endpoints_url
redshift = var.endpoints_url
route53 = var.endpoints_url
s3 = var.endpoints_url
secretsmanager = var.endpoints_url
ses = var.endpoints_url
sns = var.endpoints_url
sqs = var.endpoints_url
ssm = var.endpoints_url
stepfunctions = var.endpoints_url
sts = var.endpoints_url
}
}
```## Tech Stack
[](https://www.docker.com/)
[](https://registry.terraform.io/)
[](https://aws.amazon.com/)## Reference
- https://docs.aws.amazon.com/cli/latest/reference/
- https://registry.terraform.io/
- https://www.localstack.cloud/
- https://github.com/localstack-samples/localstack-terraform-samples/tree/master## Feedback
If you have any feedback, please contact me at [email protected]
[](https://github.com/raphaelbh)
[](https://www.linkedin.com/in/raphaelbh/)