{"id":18340715,"url":"https://github.com/yousabu/devops-go-api","last_synced_at":"2026-04-14T19:32:22.962Z","repository":{"id":173945002,"uuid":"651520297","full_name":"yousabu/devops-go-api","owner":"yousabu","description":"Devops Internship Task","archived":false,"fork":false,"pushed_at":"2023-06-13T12:59:42.000Z","size":4034,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-09T20:49:40.323Z","etag":null,"topics":["argocd","docker","docker-compose","golang","helm-charts","jenkins","kubernetes","mysql"],"latest_commit_sha":null,"homepage":"","language":"Go","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/yousabu.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}},"created_at":"2023-06-09T12:23:09.000Z","updated_at":"2023-07-25T20:27:45.000Z","dependencies_parsed_at":"2023-08-13T08:35:55.747Z","dependency_job_id":null,"html_url":"https://github.com/yousabu/devops-go-api","commit_stats":null,"previous_names":["yousabu/instabug-intern-challenge","yousabu/devops-go-api"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/yousabu/devops-go-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yousabu%2Fdevops-go-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yousabu%2Fdevops-go-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yousabu%2Fdevops-go-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yousabu%2Fdevops-go-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yousabu","download_url":"https://codeload.github.com/yousabu/devops-go-api/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yousabu%2Fdevops-go-api/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31812968,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T18:05:02.291Z","status":"ssl_error","status_checked_at":"2026-04-14T18:05:01.765Z","response_time":153,"last_error":"SSL_read: 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":["argocd","docker","docker-compose","golang","helm-charts","jenkins","kubernetes","mysql"],"created_at":"2024-11-05T20:23:32.716Z","updated_at":"2026-04-14T19:32:22.947Z","avatar_url":"https://github.com/yousabu.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"## What Does Task Achieve:\n- Fix bugs in code\n- Dockerizing App\n- Compose the API image \u0026 Mysql\n- CI/CD Jenkins Pipeline\n- Kubernetes + packaging it using helm \u0026 kustomization file\n- ArgoCD for GitOps\n- Horizontal Pod Autoscaler\n\n## Notes:\n- The `.env` file is used to store the required environment variables for the application. Ensure that you provide the correct values for `MYSQL_HOST`, `MYSQL_USER`, `MYSQL_PASS`, and `MYSQL_PORT`.\n- it shoud be in  instabug-intern-challenge/ dir.\n\n## Run Api Locally Using Golang and mysql-server:\n    git clone https://github.com/yousabu/instabug-intern-challenge.git\n    cd instabug-intern-challenge/\n    go build -o main .\n    ./main\n\n## Build Docker Image:\n    docker build -t instaapp .\n- Dockerfile Built in the way that make it as lightweight as possible with all layers of security.\n## Run API And It's Database Using Docker-Compose:\n    docker-compose up -d\n- In Docker-compose The Api Will Start Only After Mysql DB Be Healthy\n\n## Screenshot From Running API Localy With Docker-compose:\n![Screenshot from 2023-06-10 23-09-06](https://github.com/yousabu/instabug-intern-challenge/assets/66924041/b04ac944-b4b2-4d17-8fa2-5ccad0d3e923)\n\n\n## Install API Using Kubectl:\n     kubectl apply -k .\n\n![Screenshot from 2023-06-13 15-43-45](https://github.com/yousabu/instabug-intern-challenge/assets/66924041/148cfd52-a1e9-455a-85cb-b77625139fcf)\n\n\n\n## Install API Using Helm:\n    helm install inastapp-api instaapp/\n![Screenshot from 2023-06-10 23-20-48](https://github.com/yousabu/instabug-intern-challenge/assets/66924041/b58d0696-0021-4257-b93f-977b86fc238d)\n\n\n\n\n## ArgoCD SETUP:\n    kubectl create namespace argocd\n    kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml\n    \n## Enable Sync Between Github \u0026 K8s ArgoCD Cluster By:\n Install API By Using Helm Charts Command OR By Run Application.yaml K8s File And It Will Sync Automatically.\nand it also point to helm package.\n#\n    kubectl apply -f Application.yaml\n\n#\n\n\n## Added autoscaling manifest for number of replicas for api deployment only:\n![Screenshot from 2023-06-10 23-25-56](https://github.com/yousabu/instabug-intern-challenge/assets/66924041/b4de4569-c129-41c1-bfb1-f4d45d0effee)\n\n\n\n#\n- All Tests Done on Kubelet Cluster one master \u0026 one worker.\n\n\n![Screenshot from 2023-06-10 23-22-15](https://github.com/yousabu/instabug-intern-challenge/assets/66924041/cfb129bd-dc7d-402d-822b-f6e09c1e5e9f)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyousabu%2Fdevops-go-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyousabu%2Fdevops-go-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyousabu%2Fdevops-go-api/lists"}