{"id":13505811,"url":"https://github.com/antonbabenko/modules.tf-lambda","last_synced_at":"2025-04-06T12:10:42.153Z","repository":{"id":41447397,"uuid":"112020529","full_name":"antonbabenko/modules.tf-lambda","owner":"antonbabenko","description":"Infrastructure as code generator - from visual diagrams created with Cloudcraft.co to Terraform","archived":false,"fork":false,"pushed_at":"2021-08-20T07:25:57.000Z","size":1351,"stargazers_count":350,"open_issues_count":15,"forks_count":56,"subscribers_count":18,"default_branch":"master","last_synced_at":"2024-10-29T23:15:17.844Z","etag":null,"topics":["aws-lambda","cloudcraft","infrastructure-as-code","serverless","terraform","terraform-aws","terraform-configurations","terragrunt","visual","visual-diagrams"],"latest_commit_sha":null,"homepage":"https://www.cloudcraft.co/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/antonbabenko.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":["antonbabenko"],"custom":"https://www.paypal.me/antonbabenko"}},"created_at":"2017-11-25T17:07:05.000Z","updated_at":"2024-08-28T19:28:54.000Z","dependencies_parsed_at":"2022-08-10T02:27:04.604Z","dependency_job_id":null,"html_url":"https://github.com/antonbabenko/modules.tf-lambda","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antonbabenko%2Fmodules.tf-lambda","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antonbabenko%2Fmodules.tf-lambda/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antonbabenko%2Fmodules.tf-lambda/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antonbabenko%2Fmodules.tf-lambda/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/antonbabenko","download_url":"https://codeload.github.com/antonbabenko/modules.tf-lambda/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247191302,"owners_count":20898908,"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","cloudcraft","infrastructure-as-code","serverless","terraform","terraform-aws","terraform-configurations","terragrunt","visual","visual-diagrams"],"created_at":"2024-08-01T00:01:14.411Z","updated_at":"2025-04-06T12:10:42.130Z","avatar_url":"https://github.com/antonbabenko.png","language":"Python","funding_links":["https://github.com/sponsors/antonbabenko","https://www.paypal.me/antonbabenko","https://opencollective.com/modulestf","https://github.com/sponsors/antonbabenko/","https://opencollective.com/modulestf/contribute","https://opencollective.com/modulestf/organization/0/website","https://opencollective.com/modulestf/organization/1/website","https://opencollective.com/modulestf/organization/2/website","https://opencollective.com/modulestf/organization/3/website","https://opencollective.com/modulestf/organization/4/website","https://opencollective.com/modulestf/organization/5/website","https://opencollective.com/modulestf/organization/6/website","https://opencollective.com/modulestf/organization/7/website","https://opencollective.com/modulestf/organization/8/website","https://opencollective.com/modulestf/organization/9/website"],"categories":["Tools","Python","Documentation"],"sub_categories":["Community providers"],"readme":"# Diagrams to code (d2c) - Infrastructure as code generator - from visual diagrams to Terraform\n\n[![Financial Contributors on Open Collective](https://opencollective.com/modulestf/all/badge.svg?label=financial+contributors)](https://opencollective.com/modulestf) [![MIT license](https://img.shields.io/github/license/antonbabenko/modules.tf-lambda.svg)]() [![@antonbabenko](https://img.shields.io/twitter/follow/antonbabenko.svg?style=flat\u0026label=Follow%20@antonbabenko%20on%20Twitter)](https://twitter.com/antonbabenko) \n\n\u003ca href=\"https://github.com/antonbabenko/modules.tf-lambda\"\u003e\u003cimg src=\"https://raw.githubusercontent.com/antonbabenko/modules.tf-lambda/master/misc/modulestf-logo.png\" alt=\"modules.tf - Infrastructure as code generator - from visual diagrams to Terraform\" width=\"210\" height=\"70\" align=\"right\" /\u003e\u003c/a\u003e\n\nCode in this repository is used for generating infrastructure as Terraform configurations from visual diagrams created using [Cloudcraft](https://www.cloudcraft.co).\n\n\n## How can I try this?\n\n1. Sign up for a free account with [Cloudcraft](https://app.cloudcraft.co/signup).\n1. Draw AWS architecture in web-browser (you can import live AWS resources, too).\n1. Click \"Export\" and \"Terraform code export\" at the top right side.\n1. Download archive and extract it locally.\n1. Follow step-by-step instructions in `README.md` which you can find inside of it.\n\n\n## How do the generated Terraform configurations look like?\n\nIn [modules.tf-demo](https://github.com/antonbabenko/modules.tf-demo) repository you can see the exact configuration code generated from sample \"Web App Reference Architecture\".\n\n### Original infrastructure\n\n\u003cimg src=\"https://raw.githubusercontent.com/antonbabenko/modules.tf-demo/master/Web%20App%20Reference%20Architecture%20(complete).png\" alt=\"Web App Reference Architecture\" width=\"500\" /\u003e\n\n### Recording of complete code execution\n\n\u003ca href=\"https://asciinema.org/a/32rkyxIBJ2K4taqZLSlKYNDDI\" target=\"_blank\"\u003e\u003cimg src=\"https://asciinema.org/a/32rkyxIBJ2K4taqZLSlKYNDDI.svg\" alt=\"modules.tf demo - November 2019\" width=\"500\" /\u003e\u003c/a\u003e\n\n## Supporters\n\n\u003ca href=\"https://www.cloudcraft.co/\" target=\"_blank\"\u003e\u003cimg src=\"https://raw.githubusercontent.com/antonbabenko/modules.tf-lambda/master/misc/cloudcraft-logo.png\" alt=\"Cloudcraft - the best way to draw AWS diagrams\" width=\"211\" height=\"56\" align=\"right\" /\u003e\u003c/a\u003e\n\nThis project was partially sponsored by [Cloudcraft - the best way to draw AWS diagrams](https://www.cloudcraft.co).\u003cbr clear=\"all\"\u003e\n\n[Become a sponsor to @antonbabenko on GitHub](https://github.com/sponsors/antonbabenko/).\n\n[![@antonbabenko](https://img.shields.io/twitter/follow/antonbabenko.svg?style=flat\u0026label=Follow%20@antonbabenko%20on%20Twitter)](https://twitter.com/antonbabenko) \n[![@antonbabenko](https://img.shields.io/github/followers/antonbabenko?style=flat\u0026label=Follow%20@antonbabenko%20on%20Github)](https://github.com/antonbabenko) \n[![modules.tf-lambda](https://img.shields.io/github/stars/antonbabenko/modules.tf-lambda?style=flat\u0026label=Star%20modules.tf-lambda%20on%20Github)](https://github.com/antonbabenko/modules.tf-lambda)\n\n\n## Developer's guide\n\nThis project is Python 3.8 serverless application written using [serverless.tf](https://serverless.tf) framework and open-source components ([Terraform AWS modules](https://github.com/terraform-aws-modules)).\n\n### Notes for developers\n\nTerraform is used to provision infrastructure resources as well as packaging artifacts and to do the deployments (check out [serverless.tf](https://serverless.tf) for more details).\n\nSource code is located in `src/handler.py`.\n\nGo to directory `terraform`, verify/update file `terraform.tfvars` and run:\n\n```\n$ terraform init     # Download required Terraform providers and modules\n$ terraform apply    # Create or update infrastructure resources or do a new deployment of Lambda function (if source code has changed)\n```\n\nWhen infrastructure is created, you should be able to `POST` using [httpie](https://github.com/jakubroztocil/httpie/) or `curl` like this:\n\n```\n$ http --print Hhb --all --follow https://dev-d2c.modules.tf @test_fixtures/input/blueprint_my.json\n```\n\n\n## Contributors\n\n### Code Contributors\n\nThis project exists thanks to all the people who contribute.\n\u003ca href=\"https://github.com/antonbabenko/modules.tf-lambda/graphs/contributors\"\u003e\u003cimg src=\"https://opencollective.com/modulestf/contributors.svg?width=890\u0026button=false\" /\u003e\u003c/a\u003e\n\n### Financial Contributors\n\nBecome a financial contributor and help us sustain our community. [[Contribute](https://opencollective.com/modulestf/contribute)]\n\n#### Individuals\n\n\u003ca href=\"https://opencollective.com/modulestf\"\u003e\u003cimg src=\"https://opencollective.com/modulestf/individuals.svg?width=890\"\u003e\u003c/a\u003e\n\n#### Organizations\n\nSupport this project with your organization. Your logo will show up here with a link to your website. [[Contribute](https://opencollective.com/modulestf/contribute)]\n\n\u003ca href=\"https://opencollective.com/modulestf/organization/0/website\"\u003e\u003cimg src=\"https://opencollective.com/modulestf/organization/0/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/modulestf/organization/1/website\"\u003e\u003cimg src=\"https://opencollective.com/modulestf/organization/1/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/modulestf/organization/2/website\"\u003e\u003cimg src=\"https://opencollective.com/modulestf/organization/2/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/modulestf/organization/3/website\"\u003e\u003cimg src=\"https://opencollective.com/modulestf/organization/3/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/modulestf/organization/4/website\"\u003e\u003cimg src=\"https://opencollective.com/modulestf/organization/4/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/modulestf/organization/5/website\"\u003e\u003cimg src=\"https://opencollective.com/modulestf/organization/5/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/modulestf/organization/6/website\"\u003e\u003cimg src=\"https://opencollective.com/modulestf/organization/6/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/modulestf/organization/7/website\"\u003e\u003cimg src=\"https://opencollective.com/modulestf/organization/7/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/modulestf/organization/8/website\"\u003e\u003cimg src=\"https://opencollective.com/modulestf/organization/8/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/modulestf/organization/9/website\"\u003e\u003cimg src=\"https://opencollective.com/modulestf/organization/9/avatar.svg\"\u003e\u003c/a\u003e\n\n## License\n\nThis work is licensed under MIT License. See LICENSE for full details.\n\nCopyright (c) 2018-2021 Anton Babenko\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantonbabenko%2Fmodules.tf-lambda","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fantonbabenko%2Fmodules.tf-lambda","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantonbabenko%2Fmodules.tf-lambda/lists"}