{"id":15655425,"url":"https://github.com/antonbabenko/terraform-aws-anything","last_synced_at":"2025-05-05T03:41:57.861Z","repository":{"id":102581947,"uuid":"242231408","full_name":"antonbabenko/terraform-aws-anything","owner":"antonbabenko","description":"Content for \"Manage any AWS resource with Terraform\"","archived":false,"fork":false,"pushed_at":"2024-10-08T07:21:02.000Z","size":4861,"stargazers_count":25,"open_issues_count":1,"forks_count":7,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-05-05T03:41:39.771Z","etag":null,"topics":["aws","aws-cli","aws-cloudformation","terraform"],"latest_commit_sha":null,"homepage":null,"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/antonbabenko.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},"funding":{"github":["antonbabenko"],"patreon":"antonbabenko","custom":["https://paypal.me/antonbabenko","https://www.buymeacoffee.com/antonbabenko"]}},"created_at":"2020-02-21T21:10:56.000Z","updated_at":"2025-05-03T14:20:52.000Z","dependencies_parsed_at":null,"dependency_job_id":"33541f2d-9da3-4696-8522-4d0ab787c9c0","html_url":"https://github.com/antonbabenko/terraform-aws-anything","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antonbabenko%2Fterraform-aws-anything","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antonbabenko%2Fterraform-aws-anything/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antonbabenko%2Fterraform-aws-anything/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antonbabenko%2Fterraform-aws-anything/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/antonbabenko","download_url":"https://codeload.github.com/antonbabenko/terraform-aws-anything/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252436240,"owners_count":21747467,"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","aws-cli","aws-cloudformation","terraform"],"created_at":"2024-10-03T12:59:10.423Z","updated_at":"2025-05-05T03:41:57.803Z","avatar_url":"https://github.com/antonbabenko.png","language":"HCL","funding_links":["https://github.com/sponsors/antonbabenko","https://patreon.com/antonbabenko","https://paypal.me/antonbabenko","https://www.buymeacoffee.com/antonbabenko"],"categories":[],"sub_categories":[],"readme":"# This repository contains content for my talk \"Manage any AWS resource with Terraform\".\n\n\n## Available types of AWS resources:\n\n1. Supported by Terraform AWS provider. See `1-terraform`.\n2. Supported only by AWS CloudFormation, but not by Terraform AWS provider. See `2-cloudformation`.\n3. Supported by AWS SDK/CLI and not in AWS CloudFormation. See `3-cli`.\n4. Partially supported by Terraform AWS provider (some arguments are not supported). See `4-partial-terraform`.\n5. Not supported in AWS CLI/SDK. [Good luck with Selenium!](https://aws.amazon.com/about-aws/whats-new/2020/01/aws-device-farm-announces-desktop-browser-testing-using-selenium/) or take a look at [Ian's work with Puppeteer](https://github.com/iann0036/aws-account-controller) :trollface: :trollface: :trollface:\n6. New since 2024! AWS Cloud Control API (AWS CC). Potentially, better support than AWS CloudFormation.\n\n\n## Available solutions to manage AWS resources using Terraform include:\n\n1. Use `local-exec` provisioner with `aws-cli`\n2. Use [`shell` provider](https://github.com/scottwinkler/terraform-provider-shell)\n3. Patch the [Terraform AWS provider](https://github.com/terraform-providers/terraform-provider-aws/) using golang\n\n\n## Flow:\n\n1. Import existing resources into state\n\n2. Refactoring states:\n  - from/to module\n  - to another state-file\n  - `terraform state list | grep -v module..... | xargs -Ixx terraform state rm xx`\n\n3. Migrate from AWS Cloudformation to Terraform\n\n\n## See also\n\n1. Talk \"I Can’t Do This With Terraform, Now What?\" by Patrick Conheady given at HashiTalks 2020. [See this repository](https://github.com/pacon-vib/tfcando) and [this recording](https://www.hashicorp.com/resources/i-can-t-do-this-with-terraform-now-what).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantonbabenko%2Fterraform-aws-anything","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fantonbabenko%2Fterraform-aws-anything","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantonbabenko%2Fterraform-aws-anything/lists"}