Setting up AWS Infrastructure with Terraform
Budget: $10 – $65 USD
Invisible CodeBuddy is a company seeking to bring the worldwide expertise of talented developers to companies and individuals looking to learn new and emerging technologies, methods, and patterns.
We are looking for a light-weight solution to demonstrate how to implement functionality, so that our developers can implement into our codebase.
Due to privacy and security constraints, we cannot grant access directly to our codebase.
This task should take less than 10 hours to complete: efficiency is the goal here.
Requirements:
I've never used Terraform before and I'm still at an intermediate level with AWS, but I've inherited some code that uses a LOT of clever Terraform features, custom plugins, variables and files spread around various systems, and I need to simplify all the files and make things clearer.
I'd like a sample Terraform project which sets up an AWS infrastructure with the following components:
* An S3 bucket
* An AWS Lambda function with at least one environment variable
* An AWS ECS task definition and an ECS service
* AWS Cloudwatch logging wired up to all of the above
* An S3 bucket for holding the Terraform state
* A Postgres database
* Terraform variables specifying the AWS profile and anything else that a variable would be typically used for
* Permissions, policies, and security groups e.g. IAM roles and logging policies
* Development and production versions of all of the above
* Terraform workspaces for development and production environments
Please include a descriptive comment at least for every block in the Terraform script though feel free to add more than that.
Please include relevant instructions on how the files were created or generated, specifying what tools or commands were used for automation and which steps were manually performed. Feel free to include screenshots or video if you'd like.
Please include definitions for any Terraform or AWS terminology that's used in the script(s), comments, and documentation.
Technologies:
Language(s):
Database(s): PostgreSQL
Cloud Provider(s):AWS
Please deliver the work in the following format(s):
File
Step-By-Step Checklist
We are looking for a light-weight solution to demonstrate how to implement functionality, so that our developers can implement into our codebase.
Due to privacy and security constraints, we cannot grant access directly to our codebase.
This task should take less than 10 hours to complete: efficiency is the goal here.
Requirements:
I've never used Terraform before and I'm still at an intermediate level with AWS, but I've inherited some code that uses a LOT of clever Terraform features, custom plugins, variables and files spread around various systems, and I need to simplify all the files and make things clearer.
I'd like a sample Terraform project which sets up an AWS infrastructure with the following components:
* An S3 bucket
* An AWS Lambda function with at least one environment variable
* An AWS ECS task definition and an ECS service
* AWS Cloudwatch logging wired up to all of the above
* An S3 bucket for holding the Terraform state
* A Postgres database
* Terraform variables specifying the AWS profile and anything else that a variable would be typically used for
* Permissions, policies, and security groups e.g. IAM roles and logging policies
* Development and production versions of all of the above
* Terraform workspaces for development and production environments
Please include a descriptive comment at least for every block in the Terraform script though feel free to add more than that.
Please include relevant instructions on how the files were created or generated, specifying what tools or commands were used for automation and which steps were manually performed. Feel free to include screenshots or video if you'd like.
Please include definitions for any Terraform or AWS terminology that's used in the script(s), comments, and documentation.
Technologies:
Language(s):
Database(s): PostgreSQL
Cloud Provider(s):AWS
Please deliver the work in the following format(s):
File
Step-By-Step Checklist