{"id":23235830,"url":"https://github.com/hack-light/pbl-proj-19","last_synced_at":"2026-01-20T21:02:19.747Z","repository":{"id":123070501,"uuid":"591144405","full_name":"Hack-Light/pbl-proj-19","owner":"Hack-Light","description":null,"archived":false,"fork":false,"pushed_at":"2023-01-20T08:33:53.000Z","size":210,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-05T20:36:00.587Z","etag":null,"topics":[],"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/Hack-Light.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-01-20T02:29:55.000Z","updated_at":"2023-01-20T02:30:16.000Z","dependencies_parsed_at":null,"dependency_job_id":"8d8549e7-fe5f-49a8-807a-43b88b160ff1","html_url":"https://github.com/Hack-Light/pbl-proj-19","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Hack-Light/pbl-proj-19","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hack-Light%2Fpbl-proj-19","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hack-Light%2Fpbl-proj-19/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hack-Light%2Fpbl-proj-19/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hack-Light%2Fpbl-proj-19/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Hack-Light","download_url":"https://codeload.github.com/Hack-Light/pbl-proj-19/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hack-Light%2Fpbl-proj-19/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28613659,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-20T18:56:40.769Z","status":"ssl_error","status_checked_at":"2026-01-20T18:54:26.653Z","response_time":117,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":[],"created_at":"2024-12-19T03:29:39.580Z","updated_at":"2026-01-20T21:02:19.720Z","avatar_url":"https://github.com/Hack-Light.png","language":"HCL","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AUTOMATED INFRASTRUCTURE CREATION WITH TERRAFORM\n\n## terraform-aws-cloud\n\nAWS Cloud Solution For 2 Company Websites Using A Reverse Proxy Technology\n\n**WARNING:** This infrastructure set up is NOT covered by AWS free tier. Therefore, ensure to DELETE ALL the resources created immediately after finishing the project. Monthly cost may be shockingly high if resources are not deleted. Also, it is strongly recommended to set up a budget and configure notifications when your spendings reach a predefined limit. Watch this video to learn how to configure AWS budget.\n\nThe sole aim of this project to build the infrastructure in AWS using terraform.\n\nWe will build a secure infrastructure inside AWS VPC (Virtual Private Cloud) network for a fictitious company (Choose an interesting name for it) that uses WordPress CMS for its main business website, and a Tooling Website for their DevOps team. As part of the company's desire for improved security and performance, a decision has been made to use a reverse proxy technology from NGINX to achieve this.\n\nCost, Security, and Scalability are the major requirements for this project. Hence, implementing the architecture designed below, ensure that infrastructure for both websites, WordPress and Tooling, is resilient to Web Server's failures, can accomodate to increased traffic and, at the same time, has reasonable cost.\n\nThe tooling code is stored in this [repository](\u003c(https://github.com/Livingstone95/tooling)\u003e)\n\nAlways refer to the given diagram\n\n![project image](./tooling_project_15.png)\n\n## install graphviz\n\nsudo apt install graphviz\n\n## use the command below to generate dependency graph\n\n- terraform graph -type=plan | dot -Tpng \u003e graph.png\n- terraform graph | dot -Tpng \u003e graph.png\n\n## Read More abot terrafrom graph\n\nhttps://www.terraform.io/docs/cli/commands/graph.html\n\n### Action Plan for project 19\n\n- Build images using packer\n- confirm the AMIs in the console\n- update terrafrom script with new ami IDs generated from packer build\n- create terraform cloud account and backend\n- run terraform script\n- update ansible script with values from teraform output\n\n  - RDS endpoints for wordpress and tooling\n  - Database name, password and username for wordpress and tooling\n  - Access point ID for wordpress and tooling\n  - Internal load balancee DNS for nginx reverse proxy\n\n- run ansible script\n- check the website\n\n### Draw back in the scripts\n\n- Direct hardcoding of values\n- Inputting credentials directly in the script\n\n- Useful links for windows users\n  https://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_keymanagement\n  https://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_install_firstuse\n  https://medium.com/risan/upgrade-your-ssh-key-to-ed25519-c6e8d60d3c54\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhack-light%2Fpbl-proj-19","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhack-light%2Fpbl-proj-19","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhack-light%2Fpbl-proj-19/lists"}