{"id":15950232,"url":"https://github.com/omerap12/terraform_sqs_lambda","last_synced_at":"2025-04-04T07:22:05.637Z","repository":{"id":202736705,"uuid":"708031426","full_name":"omerap12/Terraform_sqs_lambda","owner":"omerap12","description":null,"archived":false,"fork":false,"pushed_at":"2023-10-27T13:36:07.000Z","size":10,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-09T18:30:04.420Z","etag":null,"topics":["aws","terraform"],"latest_commit_sha":null,"homepage":"","language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/omerap12.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-10-21T10:11:59.000Z","updated_at":"2024-03-30T16:00:20.000Z","dependencies_parsed_at":"2024-10-29T22:34:51.016Z","dependency_job_id":null,"html_url":"https://github.com/omerap12/Terraform_sqs_lambda","commit_stats":null,"previous_names":["omerap12/terraform_sqs_lambda"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/omerap12%2FTerraform_sqs_lambda","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/omerap12%2FTerraform_sqs_lambda/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/omerap12%2FTerraform_sqs_lambda/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/omerap12%2FTerraform_sqs_lambda/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/omerap12","download_url":"https://codeload.github.com/omerap12/Terraform_sqs_lambda/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247135901,"owners_count":20889556,"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","terraform"],"created_at":"2024-10-07T12:58:47.135Z","updated_at":"2025-04-04T07:22:05.619Z","avatar_url":"https://github.com/omerap12.png","language":"HCL","readme":"\n# AWS Lambda Function for Sending SQS Messages\n\nThis Terraform configuration is designed to deploy two AWS Lambda functions, namely `lambda_write_sqs.py` and `lambda_read_sqs.py`, which are responsible for sending and receiving messages to and from an AWS FIFO SQS (Simple Queue Service). These Lambda functions showcase the process of manually triggering events and demonstrate how to exchange messages with an SQS queue using Python and the Boto3 AWS SDK. The configuration utilizes Terraform modules to create essential AWS resources and handle their configurations effectively.\n\n## Prerequisites\nBefore you begin, ensure you have:\n\nAWS credentials configured locally with appropriate permissions.\nTerraform installed on your system.\n\n## Files Included\n### Code:\n* lambda_write_sqs.py: Python code for the Lambda function, sending messages to the SQS queue.\n* lambda_read_sqs.py:  Python code for the Lambda function, receiving messages from the SQS queue.\n\n### Terraform:\n* sqs.tf: Defines the creation of the SQS FIFO queue.\n* write_sqs_lambda.tf: Terraform configuration for the Lambda function responsible for sending messages to SQS.\n* write_policy.tf: Terraform configuration for the permission policies associated with the Lambda function sending messages.\n* read_sqs_lambda.tf: Terraform configuration for the Lambda function responsible for receiving messages from SQS.\n* read_policy.tf: Terraform configuration for the permission policies associated with the Lambda function receiving messages.\n* variables.tf:  Input variables used in the Terraform configuration.\n* outputs.tf: Specifies the outputs of the Terraform configuration.\n\n## How to Use\n1. Clone the Repository:\n```\ngit clone https://github.com/omerap12/Terraform_sqs_lambda.git\ncd Terraform_sqs_lambda\n```\n2. Set Up Terraform:\n```\nterraform init\n```\n3. Configure Variables : Modify variables.tf to adjust the variables according to your requirements, such as function name, queue name, and AWS region.  \n4. Deploy AWS Resources: Apply the Terraform configuration to create the Lambda function, SQS queue, and necessary IAM policies\n```\nterraform apply\n```\n5. Invoke the Lambda Function: After successful deployment, manually invoke the Lambda function to send a message to the SQS queue.\n6. Clean Up: If you want to remove the deployed resources, run:\n```\nterraform destroy\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fomerap12%2Fterraform_sqs_lambda","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fomerap12%2Fterraform_sqs_lambda","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fomerap12%2Fterraform_sqs_lambda/lists"}