{"id":22620062,"url":"https://github.com/cms-enterprise/batcave-tf-serverless","last_synced_at":"2025-08-05T20:32:12.785Z","repository":{"id":209920954,"uuid":"506668865","full_name":"CMS-Enterprise/batcave-tf-serverless","owner":"CMS-Enterprise","description":"batCAVE Serverless Terraform module","archived":false,"fork":false,"pushed_at":"2024-09-16T19:34:54.000Z","size":27,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":5,"default_branch":"main","last_synced_at":"2024-09-17T00:49:58.764Z","etag":null,"topics":["aws-lambda","batcave","serverless","terraform","terraform-module"],"latest_commit_sha":null,"homepage":"https://cloud.cms.gov/batcave-platform-service","language":"HCL","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CMS-Enterprise.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-06-23T14:15:48.000Z","updated_at":"2024-01-05T15:37:42.000Z","dependencies_parsed_at":"2024-04-08T20:42:41.620Z","dependency_job_id":"f15481aa-fc7c-4eed-92f9-3d8eee72499e","html_url":"https://github.com/CMS-Enterprise/batcave-tf-serverless","commit_stats":null,"previous_names":["cms-enterprise/batcave-tf-serverless"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CMS-Enterprise%2Fbatcave-tf-serverless","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CMS-Enterprise%2Fbatcave-tf-serverless/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CMS-Enterprise%2Fbatcave-tf-serverless/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CMS-Enterprise%2Fbatcave-tf-serverless/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CMS-Enterprise","download_url":"https://codeload.github.com/CMS-Enterprise/batcave-tf-serverless/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228799862,"owners_count":17973968,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws-lambda","batcave","serverless","terraform","terraform-module"],"created_at":"2024-12-08T22:11:46.343Z","updated_at":"2024-12-08T22:11:50.176Z","avatar_url":"https://github.com/CMS-Enterprise.png","language":"HCL","funding_links":[],"categories":[],"sub_categories":[],"readme":"# batcave-tf-serverless\n\n\u003c!-- BEGINNING OF PRE-COMMIT-TERRAFORM DOCS HOOK --\u003e\n## Requirements\n\n| Name | Version |\n|------|---------|\n| \u003ca name=\"requirement_terraform\"\u003e\u003c/a\u003e [terraform](#requirement\\_terraform) | \u003e= 1.2 |\n| \u003ca name=\"requirement_aws\"\u003e\u003c/a\u003e [aws](#requirement\\_aws) | \u003e= 4.61.0 |\n\n## Providers\n\n| Name | Version |\n|------|---------|\n| \u003ca name=\"provider_aws\"\u003e\u003c/a\u003e [aws](#provider\\_aws) | \u003e= 4.61.0 |\n\n## Modules\n\n| Name | Source | Version |\n|------|--------|---------|\n| \u003ca name=\"module_alb\"\u003e\u003c/a\u003e [alb](#module\\_alb) | terraform-aws-modules/alb/aws | ~\u003e 6.0 |\n| \u003ca name=\"module_lambda\"\u003e\u003c/a\u003e [lambda](#module\\_lambda) | terraform-aws-modules/lambda/aws | ~\u003e 3.1 |\n\n## Resources\n\n| Name | Type |\n|------|------|\n| [aws_lambda_permission.alb_to_lambda](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lambda_permission) | resource |\n| [aws_lb_target_group_attachment.alb_to_lambda](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_target_group_attachment) | resource |\n| [aws_route53_record.dns](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/route53_record) | resource |\n| [aws_security_group.lambda](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group) | resource |\n| [aws_security_group_rule.egress](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource |\n| [aws_security_group_rule.https-ingress](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource |\n| [aws_security_group_rule.ingress_cidrs](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource |\n| [aws_security_group_rule.ingress_prefix_list](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource |\n| [aws_acm_certificate.acm_certificate](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/acm_certificate) | data source |\n| [aws_route53_zone.dns](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/route53_zone) | data source |\n\n## Inputs\n\n| Name | Description | Type | Default | Required |\n|------|-------------|------|---------|:--------:|\n| \u003ca name=\"input_alb_access_logs\"\u003e\u003c/a\u003e [alb\\_access\\_logs](#input\\_alb\\_access\\_logs) | Map of aws\\_lb access\\_log config | `map(any)` | `{}` | no |\n| \u003ca name=\"input_base_domain\"\u003e\u003c/a\u003e [base\\_domain](#input\\_base\\_domain) | The base domain of the services the lambda should be requesting to.  eg: 'batcave.internal.cms.gov' | `string` | n/a | yes |\n| \u003ca name=\"input_create_custom_domain\"\u003e\u003c/a\u003e [create\\_custom\\_domain](#input\\_create\\_custom\\_domain) | Optionally create a custom domain for this serverless service | `bool` | `false` | no |\n| \u003ca name=\"input_custom_subdomain\"\u003e\u003c/a\u003e [custom\\_subdomain](#input\\_custom\\_subdomain) | Subdomain for the optionally created dns records | `string` | `\"status\"` | no |\n| \u003ca name=\"input_frontend_subnets\"\u003e\u003c/a\u003e [frontend\\_subnets](#input\\_frontend\\_subnets) | List of subnet ids to house the front-end of this lambda (such as Shared subnet or Transport subnet) | `list(any)` | n/a | yes |\n| \u003ca name=\"input_iam_role_path\"\u003e\u003c/a\u003e [iam\\_role\\_path](#input\\_iam\\_role\\_path) | n/a | `string` | `\"/delegatedadmin/developer/\"` | no |\n| \u003ca name=\"input_iam_role_permissions_boundary\"\u003e\u003c/a\u003e [iam\\_role\\_permissions\\_boundary](#input\\_iam\\_role\\_permissions\\_boundary) | n/a | `string` | `\"\"` | no |\n| \u003ca name=\"input_ingress_cidrs\"\u003e\u003c/a\u003e [ingress\\_cidrs](#input\\_ingress\\_cidrs) | List of CIDR Blocks to attach to ALB Security Group | `list(any)` | \u003cpre\u003e[\u003cbr\u003e  \"10.0.0.0/8\"\u003cbr\u003e]\u003c/pre\u003e | no |\n| \u003ca name=\"input_ingress_prefix_lists\"\u003e\u003c/a\u003e [ingress\\_prefix\\_lists](#input\\_ingress\\_prefix\\_lists) | List of prefix lists to attach to ALB Security Group | `list(any)` | `[]` | no |\n| \u003ca name=\"input_ingress_sgs\"\u003e\u003c/a\u003e [ingress\\_sgs](#input\\_ingress\\_sgs) | A list of security groups in which https ingress rules will be created | `list(string)` | `[]` | no |\n| \u003ca name=\"input_lambda_environment\"\u003e\u003c/a\u003e [lambda\\_environment](#input\\_lambda\\_environment) | Environment variables used by the lambda function. | `map(string)` | `null` | no |\n| \u003ca name=\"input_lambda_handler\"\u003e\u003c/a\u003e [lambda\\_handler](#input\\_lambda\\_handler) | The entry point of the lambda (i.e. the fully qualified name of the function to be invoked: file-or-module-name.function-name) | `string` | n/a | yes |\n| \u003ca name=\"input_lambda_path\"\u003e\u003c/a\u003e [lambda\\_path](#input\\_lambda\\_path) | Path to the lambda code | `string` | `\"lambda\"` | no |\n| \u003ca name=\"input_lambda_runtime\"\u003e\u003c/a\u003e [lambda\\_runtime](#input\\_lambda\\_runtime) | The runtime environment to use for this lambda (e.g. 'python3.9' or 'nodejs16.x') | `string` | `\"nodejs16.x\"` | no |\n| \u003ca name=\"input_lambda_timeout\"\u003e\u003c/a\u003e [lambda\\_timeout](#input\\_lambda\\_timeout) | The number of seconds the lambda will be allowed to execute before timing out | `number` | `3` | no |\n| \u003ca name=\"input_private_subnets\"\u003e\u003c/a\u003e [private\\_subnets](#input\\_private\\_subnets) | List of subnet ids where the lambda will execute | `list(any)` | n/a | yes |\n| \u003ca name=\"input_route53_zone_type\"\u003e\u003c/a\u003e [route53\\_zone\\_type](#input\\_route53\\_zone\\_type) | Optionally create DNS records, and lookup either 'private' or 'public' r53 zone | `string` | `\"private\"` | no |\n| \u003ca name=\"input_service_name\"\u003e\u003c/a\u003e [service\\_name](#input\\_service\\_name) | Name of the serverless service | `string` | `\"batcave-status\"` | no |\n| \u003ca name=\"input_vpc_id\"\u003e\u003c/a\u003e [vpc\\_id](#input\\_vpc\\_id) | VPC ID where the lambda will execute | `string` | n/a | yes |\n\n## Outputs\n\nNo outputs.\n\u003c!-- END OF PRE-COMMIT-TERRAFORM DOCS HOOK --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcms-enterprise%2Fbatcave-tf-serverless","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcms-enterprise%2Fbatcave-tf-serverless","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcms-enterprise%2Fbatcave-tf-serverless/lists"}