https://github.com/plus3it/terraform-aws-codecommit-pr-reminders
Terraform module that deploys a lambda function which will publish open pull requests to Slack
https://github.com/plus3it/terraform-aws-codecommit-pr-reminders
aws lambda terraform
Last synced: 11 months ago
JSON representation
Terraform module that deploys a lambda function which will publish open pull requests to Slack
- Host: GitHub
- URL: https://github.com/plus3it/terraform-aws-codecommit-pr-reminders
- Owner: plus3it
- License: apache-2.0
- Created: 2019-07-24T21:12:19.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2025-06-17T05:27:03.000Z (12 months ago)
- Last Synced: 2025-06-17T06:27:29.771Z (12 months ago)
- Topics: aws, lambda, terraform
- Language: HCL
- Homepage:
- Size: 2.12 MB
- Stars: 3
- Watchers: 6
- Forks: 8
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
## terraform-aws-codecommit-pr-reminders
Terraform module to deploy a lambda function that will enumerate CodeCommit repositories and publish the Open PRs to slack
## Testing
Manual testing:
```
# Replace "xxx" with an actual AWS profile, then execute the integration tests.
export AWS_PROFILE=xxx
make terraform/pytest PYTEST_ARGS="-v --nomock"
```
For automated testing, PYTEST_ARGS is optional and no profile is needed:
```
make mockstack/up
make terraform/pytest PYTEST_ARGS="-v"
make mockstack/clean
```
## Requirements
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 0.12 |
## Providers
| Name | Version |
|------|---------|
| [aws](#provider\_aws) | n/a |
## Resources
| Name | Type |
|------|------|
| [aws_iam_policy_document.this](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/iam_policy_document) | data source |
## Inputs
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [hook\_url](#input\_hook\_url) | Slack webhook URL; see | `string` | n/a | yes |
| [dry\_run](#input\_dry\_run) | toggle to control dryrun output of the lambda function | `bool` | `false` | no |
| [lambda](#input\_lambda) | Object of optional attributes passed on to the lambda module |
object({
artifacts_dir = optional(string, "builds")
build_in_docker = optional(bool, false)
create_package = optional(bool, true)
ephemeral_storage_size = optional(number)
ignore_source_code_hash = optional(bool, true)
local_existing_package = optional(string)
memory_size = optional(number, 128)
recreate_missing_package = optional(bool, false)
runtime = optional(string, "python3.12")
s3_bucket = optional(string)
s3_existing_package = optional(map(string))
s3_prefix = optional(string)
store_on_s3 = optional(bool, false)
timeout = optional(number, 300)
}) | `{}` | no |
| [log\_level](#input\_log\_level) | The log level of the lambda function | `string` | `"INFO"` | no |
| [name](#input\_name) | (Optional) Name to associate with the lambda function | `string` | `"codecommit-pr-reminders"` | no |
| [schedule](#input\_schedule) | (Optional) Schedule expression for CloudWatch event; see | `string` | `"cron(0 7 ? * MON-FRI *)"` | no |
| [tags](#input\_tags) | Tags to add to the supported resources | `map(any)` | `{}` | no |
## Outputs
No outputs.