{"id":18755990,"url":"https://github.com/osama-yusuf/devops-task-1","last_synced_at":"2026-04-07T09:32:09.387Z","repository":{"id":162116712,"uuid":"550494562","full_name":"Osama-Yusuf/DevOps-Task-1","owner":"Osama-Yusuf","description":"a task to create presentation to convince the management of AWS then create a POC","archived":false,"fork":false,"pushed_at":"2022-10-12T21:38:19.000Z","size":1180,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-05T13:06:15.233Z","etag":null,"topics":["ansible","devops","jenkins","kubernetes","terraform"],"latest_commit_sha":null,"homepage":"","language":"Shell","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/Osama-Yusuf.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2022-10-12T21:35:53.000Z","updated_at":"2024-03-26T17:12:34.000Z","dependencies_parsed_at":null,"dependency_job_id":"ea78586d-b23d-432f-bf37-7da1df247a0f","html_url":"https://github.com/Osama-Yusuf/DevOps-Task-1","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Osama-Yusuf/DevOps-Task-1","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Osama-Yusuf%2FDevOps-Task-1","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Osama-Yusuf%2FDevOps-Task-1/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Osama-Yusuf%2FDevOps-Task-1/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Osama-Yusuf%2FDevOps-Task-1/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Osama-Yusuf","download_url":"https://codeload.github.com/Osama-Yusuf/DevOps-Task-1/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Osama-Yusuf%2FDevOps-Task-1/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31508023,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-07T03:10:19.677Z","status":"ssl_error","status_checked_at":"2026-04-07T03:10:13.982Z","response_time":105,"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":["ansible","devops","jenkins","kubernetes","terraform"],"created_at":"2024-11-07T17:34:46.040Z","updated_at":"2026-04-07T09:32:09.364Z","avatar_url":"https://github.com/Osama-Yusuf.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# DevOps Task\n\n## First Challenge - Has a powerpoint presenting:\n- ### How to optimize and save IT costs and lower aws services costs\n- ### And some of the benfits of CI/CD \u0026 Release Automation\n\n## Second Challenge:\n1. ### Provision infrastructure using terraform then initialize the infrastructure \u0026 running jenkins on master node as a contianer using ansible\n   - #### Using script (k8s_init/hostname.sh) to provision 3 instances on aws then initialize the infrastructure using ansible using the following command:\n      ```bash\n      bash k8s_init/hostname.sh\n      ```\n   - #### After executing the script on your local machine you will get 3 instances on aws with the following names:\n      - #### master\n      - #### worker1\n      - #### worker2\n2. ### Now after we have the infrastructure and jenkins ready open jenkins console on your browser:\n   ```\n   http://\u003cmaster_ip\u003e:8080\n   ```\n   ### Then create a new pipeline \u0026 copy Jenkinsfile script then paste it in pipeline groovy script section then click on build now\n   ### the pipeline will run and will create a docker image for the app then will deploy it on kubernetes cluster using: \n      - #### Deployment yaml file\n      - #### NodePort Service yaml file\n## Now you can access the app on your browser using the following url:\n```\nhttp://\u003cworker_ip\u003e:30007\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fosama-yusuf%2Fdevops-task-1","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fosama-yusuf%2Fdevops-task-1","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fosama-yusuf%2Fdevops-task-1/lists"}