Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/miquido/terraform-app-mesh-service


https://github.com/miquido/terraform-app-mesh-service

Last synced: 5 days ago
JSON representation

Awesome Lists containing this project

README

        

[![Miquido][logo]](https://www.miquido.com/)

# terraform-app-mesh-service
Provide service to use in appmesh
---
**Terraform Module**
## Usage

```hcl
module "appmesh" {
source = "git::ssh://[email protected]/miquido/terraform/terraform-app-mesh-service.git"
app_health_check_path = ...
app_port = ...
appmesh_domain = ...
appmesh_name = ...
appmesh_service_name = ...
cloud_map_dns = ...
cloud_map_hosted_zone_id = ...
cloud_map_namespace_name = ...
map_id = aws_service_discovery_private_dns_namespace.map.id
tags = var.tags
task_role_name = module.ecs-alb-task.task_role_name
zone_id = aws_route53_zone.mesh_private_zone.zone_id
}
```

## Makefile Targets
```text
Available targets:

help Help screen
help/all Display help for all targets
help/short This help short screen
lint Lint Terraform code

```

## Requirements

| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 0.13 |
| [aws](#requirement\_aws) | ~> 3.0 |

## Providers

| Name | Version |
|------|---------|
| [aws](#provider\_aws) | ~> 3.0 |

## Modules

No modules.

## Resources

| Name | Type |
|------|------|
| [aws_appmesh_virtual_node.service](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/appmesh_virtual_node) | resource |
| [aws_appmesh_virtual_service.service](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/appmesh_virtual_service) | resource |
| [aws_iam_role_policy.ecs_service_task](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/iam_role_policy) | resource |
| [aws_route53_record.service_alias](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/route53_record) | resource |
| [aws_service_discovery_service.service](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/service_discovery_service) | resource |
| [aws_iam_policy_document.envoy_proxy_authorization](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/iam_policy_document) | data source |

## Inputs

| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [app\_health\_check\_path](#input\_app\_health\_check\_path) | App health check port | `string` | `null` | no |
| [app\_port](#input\_app\_port) | Appmesh port | `string` | n/a | yes |
| [appmesh\_cloud\_map\_dns\_ttl](#input\_appmesh\_cloud\_map\_dns\_ttl) | cloud map dns ttl | `number` | `60` | no |
| [appmesh\_domain](#input\_appmesh\_domain) | Appmesh domain | `string` | n/a | yes |
| [appmesh\_name](#input\_appmesh\_name) | Appmesh name | `string` | n/a | yes |
| [appmesh\_service\_name](#input\_appmesh\_service\_name) | service name in appmesh | `string` | n/a | yes |
| [cloud\_map\_dns](#input\_cloud\_map\_dns) | Cloud map dns | `string` | n/a | yes |
| [cloud\_map\_hosted\_zone\_id](#input\_cloud\_map\_hosted\_zone\_id) | Cloud map hosted zone id | `string` | n/a | yes |
| [cloud\_map\_namespace\_name](#input\_cloud\_map\_namespace\_name) | Cloud map namespace name | `string` | n/a | yes |
| [map\_id](#input\_map\_id) | cloud map id | `string` | n/a | yes |
| [tags](#input\_tags) | Default tags to apply on all created resources | `map(string)` | `{}` | no |
| [task\_role\_name](#input\_task\_role\_name) | ECS task role name | `string` | n/a | yes |
| [zone\_id](#input\_zone\_id) | Route 53 Cloud map zone id | `string` | n/a | yes |

## Outputs

| Name | Description |
|------|-------------|
| [appmesh-resource-arn](#output\_appmesh-resource-arn) | n/a |
| [aws\_service\_discovery\_service\_arn](#output\_aws\_service\_discovery\_service\_arn) | n/a |

## Developing

1. Make changes in terraform files

2. Regenerate documentation

```bash
bash <(git archive [email protected]:miquido/terraform/terraform-readme-update.git master update.sh | tar -xO)
```

3. Run lint

```
make lint
```

## Copyright

Copyright © 2017-2022 [Miquido](https://miquido.com)

### Contributors

| [![Marek Mościchowski][marekmoscichowski_avatar]][marekmoscichowski_homepage]
[Marek Mościchowski][marekmoscichowski_homepage] |
|---|

[marekmoscichowski_homepage]: https://github.com/marekmoscichowski
[marekmoscichowski_avatar]: https://github.com/marekmoscichowski.png?size=150

[logo]: https://www.miquido.com/img/logos/logo__miquido.svg
[website]: https://www.miquido.com/
[gitlab]: https://gitlab.com/miquido
[github]: https://github.com/miquido
[bitbucket]: https://bitbucket.org/miquido