sns-lambda-notify-slack
cloudposse/sns-lambda-notify-slack/aws
Terraform module to provision a lambda function that subscribes to SNS and notifies to Slack.
Terraform module to provision a lambda function that subscribes to SNS and notifies to Slack. > [!TIP] > #### 👽 Use Atmos with Terraform > Cloud Posse uses atmos to easily orchestrate multiple environments using Terraform. > Works with Github Actions, Atlantis, or Spacelift. > > > Watch demo of using Atmos with Terraform > > Example of running atmos to manage infrastructure from our Quick Start tutorial. > Usage ``hcl module "notify_slack" { source = "git::https://github.com/cloudposse/terraform-aws-sns-lambda-notify-slack?ref=tags/0.1.0" namespace = "eg" stage = "staging" name = "app" slack_webhook_url = "https://hooks.slack.com/services/AAAAAAAA/BBBBBBBB/CCCCCCC" slack_channel = "aws-services" slack_username = "reporter" } `` > [!IMPORTANT] > In Cloud Posse's examples, we avoid pinning m
| Name | Type | Description | Default |
|---|---|---|---|
| slack_channel | string | The name of the channel in Slack for notifications | required |
| slack_webhook_url | string | The URL of Slack webhook | required |
| slack_username | string | The username that will appear on Slack messages | required |
| labels_as_tags | set(string) | Set of labels (ID elements) to include as tags in the `tags` output. Default is | [
"default"
] |
| tags | map(string) | Additional tags (e.g. `{'BusinessUnit': 'XYZ'}`). Neither the tag keys nor the t | {} |
| descriptor_formats | any | Describe additional descriptors to be output in the `descriptors` output map. Ma | {} |
| slack_emoji | string | A custom emoji that will appear on Slack messages | ":aws:" |
| vpc_security_group_ids | list(string) | List of security group ids when the notifying Lambda Function should run in the | null |
| lambda_source_path | string | The source path of the custom Lambda function | null |
| environment | string | ID element. Usually used for region e.g. 'uw2', 'us-west-2', OR role 'prod', 'st | null |
| attributes | list(string) | ID element. Additional attributes (e.g. `workers` or `cluster`) to add to `id`, | [] |
| label_order | list(string) | The order in which the labels (ID elements) appear in the `id`. Defaults to ["na | null |
| sns_topic_name | string | Name of the SNS topic to subscribe to. | "" |
| vpc_subnet_ids | list(string) | List of subnet ids when the notifying Lambda Function should run in the VPC. Usu | null |
| context | any | Single object for setting entire context at once. See description of individual | {
"additional_tag_map": {},
"attribu |
| stage | string | ID element. Usually used to indicate role, e.g. 'prod', 'staging', 'source', 'bu | null |
| delimiter | string | Delimiter to be used between ID elements. Defaults to `-` (hyphen). Set to `""` | null |
| regex_replace_chars | string | Terraform regular expression (regex) string. Characters matching the regex will | null |
| label_key_case | string | Controls the letter case of the `tags` keys (label names) for tags generated by | null |
| create_sns_topic | bool | Whether to create new SNS topic | true |
| kms_key_arn | string | ARN of the KMS key used for decrypting slack webhook url | "" |
| enabled | bool | Set to false to prevent the module from creating any resources | null |
| namespace | string | ID element. Usually an abbreviation of your organization name, e.g. 'eg' or 'cp' | null |
notify_slack_lambda_function_version — Latest published version of your Lambda functionlambda_cloudwatch_log_group_arn — The Amazon Resource Name (ARN) specifying the log groupslack_topic_arn — The ARN of the SNS topic from which messages will be sent to Slacklambda_iam_role_arn — The ARN of the IAM role used by Lambda functionlambda_iam_role_name — The name of the IAM role used by Lambda functionnotify_slack_lambda_function_arn — The ARN of the Lambda functionnotify_slack_lambda_function_invoke_arn — The ARN to be used for invoking Lambda function from API Gatewaynotify_slack_lambda_function_name — The name of the Lambda functionnotify_slack_lambda_function_last_modified — The date Lambda function was last modifiedAzure landing zones Terraform module
Terraform supermodule for the Terraform platform engineering for Azure
Terraform module to deploy landing zone subscriptions (and much more) in Azure
Terraform Module to define a consistent naming convention by (namespace, stage,