{"id":20763220,"url":"https://github.com/subhamay-cloudworks/0069-celosia-cft","last_synced_at":"2026-05-27T21:31:16.083Z","repository":{"id":172862285,"uuid":"649885950","full_name":"subhamay-cloudworks/0069-celosia-cft","owner":"subhamay-cloudworks","description":"Transfer Data Records (Lambda, DynamoDB, Amazon SQS) - Step Function using AWS CloudFormation","archived":false,"fork":false,"pushed_at":"2023-06-06T13:26:11.000Z","size":18,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-13T06:46:54.680Z","etag":null,"topics":["aws-cloudformation","aws-cloudwatch","aws-iam-policies","aws-iam-roles","aws-kms","aws-lambda-python","aws-sns-topic","aws-sqs","aws-step-functions"],"latest_commit_sha":null,"homepage":"","language":"Python","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/subhamay-cloudworks.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-06-05T21:21:51.000Z","updated_at":"2023-06-10T19:57:34.000Z","dependencies_parsed_at":null,"dependency_job_id":"c95aac41-9ede-48ff-ae79-fff4cbe4e46c","html_url":"https://github.com/subhamay-cloudworks/0069-celosia-cft","commit_stats":null,"previous_names":["subhamay-cloudworks/0069-celosia-cft"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/subhamay-cloudworks/0069-celosia-cft","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subhamay-cloudworks%2F0069-celosia-cft","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subhamay-cloudworks%2F0069-celosia-cft/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subhamay-cloudworks%2F0069-celosia-cft/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subhamay-cloudworks%2F0069-celosia-cft/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/subhamay-cloudworks","download_url":"https://codeload.github.com/subhamay-cloudworks/0069-celosia-cft/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subhamay-cloudworks%2F0069-celosia-cft/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33585203,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-27T02:00:06.184Z","response_time":53,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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-cloudformation","aws-cloudwatch","aws-iam-policies","aws-iam-roles","aws-kms","aws-lambda-python","aws-sns-topic","aws-sqs","aws-step-functions"],"created_at":"2024-11-17T10:43:22.023Z","updated_at":"2026-05-27T21:31:16.064Z","avatar_url":"https://github.com/subhamay-cloudworks.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Project Celosia: A Setp Function Demo - Transfer Data Records (Lambda, DynamoDB, Amazon SQS)\n\nThis is a simple demo of an AWS Step function using Lambda, DynamoDB, SQS Queue to show looping within a workflow.\n\n## Description\n\nThis is a demo of a step function to loop through a list of items. In the first state a Lambda function inserts some quotes (with is passed as an input) to the DynamoDB table and returns a list of patrtition keys. The state machine then loops through the list and in each iteration fetches the quote from the DynamoDB table and pushes it to a SQS Queue.\n\nThe entire stack is created using CloudFormation.\n\n![Project Celosia - Design Diagram](https://subhamay-projects-repository-us-east-1.s3.amazonaws.com/0069-celosia/celosia-architecture-diagram.png?)\n\n![Project Celosia - Services Used](https://subhamay-projects-repository-us-east-1.s3.amazonaws.com/0069-celosia/celosia-services-used-cft.png?)\n\n![Project Celosia - Workflow](https://subhamay-projects-repository-us-east-1.s3.amazonaws.com/0069-celosia/celosia-step-function.png?)\n\n### Installing\n\n* Clone the repository.\n* Create a S3 bucket and make it public.\n* Create the folders - celosia/cft/nested-stacks, celosia/code\n* Upload the following YAML templates to celosia/cft/nested-stacks\n    * cloudwatch-stack.yaml\n    * dynamodb-stack.yaml\n    * iam-role-stack.yaml\n    * lambda-function-stack.yaml\n    * sns-stack.yaml\n    * sqs-stack.yaml\n* Upload the following YAML templates to celosia/cft/\n    * celosia-root-stack.yaml\n* Zip and Upload the Python file celosia_code.zip to celosia/code/python\n* Create the entire using by using the root stack template celosia-root-stack.yaml and passing the required parameters.\n\n### Executing program\n\n* Go to the Step Function Console and use the sample input and start the execution\n* Step-by-step bullets\n```\n{\n    \"quotes\":[\n       \"Age is an issue of mind over matter. If you don't mind, it doesn't matter.- Mark Twain\",\n       \"Anyone who stops learning is old, whether at twenty or eighty. Anyone who keeps learning stays young. The greatest thing in life is to keep your mind young.- Henry Ford\",\n       \"Wrinkles should merely indicate where smiles have been.- Mark Twain\",\n       \"True terror is to wake up one morning and discover that your high school class is running the country.- Kurt Vonnegut\",\n       \"A diplomat is a man who always remembers a woman's birthday but never remembers her age.- Robert Frost\",\n       \"As I grow older, I pay less attention to what men say. I just watch what they do.- Andrew Carnegie\",\n       \"How incessant and great are the ills with which a prolonged old age is replete.- C. S. Lewis\",\n       \"Old age, believe me, is a good and pleasant thing. It is true you are gently shouldered off the stage, but then you are given such a comfortable front stall as spectator.- Confucius\",\n       \"Old age has deformities enough of its own. It should never add to them the deformity of vice.- Eleanor Roosevelt\",\n       \"Nobody grows old merely living a number of years. We grow old deserting our ideals. Years may wrinkle the skin, but to give up enthusiasm wrinkles the soul.- Samuel Ullman\",\n       \"An archaeologist is the best husband a woman can have. The older she gets the more interested he is in her.- Agatha Christie\",\n       \"All diseases run into one, old age.- Ralph Waldo Emerson\",\n       \"Bashfulness is an ornament to youth, but a reproach to old age.- Aristotle\",\n       \"Like everyone else who makes the mistake of getting older, I begin each day with coffee and obituaries.- Bill Cosby\",\n       \"Age appears to be best in four things old wood best to burn, old wine to drink, old friends to trust, and old authors to read.- Francis Bacon\",\n       \"None are so old as those who have outlived enthusiasm.- Henry David Thoreau\",\n       \"Every man over forty is a scoundrel.- George Bernard Shaw\",\n       \"Forty is the old age of youth fifty the youth of old age.- Victor Hugo\",\n       \"You can't help getting older, but you don't have to get old.- George Burns\",\n       \"Alas, after a certain age every man is responsible for his face.- Albert Camus\",\n       \"Youth is when you're allowed to stay up late on New Year's Eve. Middle age is when you're forced to.- Bill Vaughan\",\n       \"Old age is like everything else. To make a success of it, you've got to start young.- Theodore Roosevelt\",\n       \"A comfortable old age is the reward of a well-spent youth. Instead of its bringing sad and melancholy prospects of decay, it would give us hopes of eternal youth in a better world.- Maurice Chevalier\",\n       \"A man growing old becomes a child again.- Sophocles\",\n       \"I will never be an old man. To me, old age is always 15 years older than I am.- Francis Bacon\",\n       \"Age considers youth ventures.- Rabindranath Tagore\"\n    ]\n }\n```\n\n## Help\n\nPost message in my blog (https://blog.subhamay.com)\n\n## Authors\n\nContributors names and contact info\n\nSubhamay Bhattacharyya  - [subhamay.aws@gmail.com](https://blog.subhamay.com)\n\n## Reference\nhttps://docs.aws.amazon.com/step-functions/latest/dg/sample-project-transfer-data-sqs.html\n\n## Version History\n\n* 0.1\n    * Initial Release\n\n## License\n\nNone\n\n## Acknowledgments\nAWS \n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsubhamay-cloudworks%2F0069-celosia-cft","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsubhamay-cloudworks%2F0069-celosia-cft","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsubhamay-cloudworks%2F0069-celosia-cft/lists"}