{"id":24375200,"url":"https://github.com/enricopesce/kubeflow","last_synced_at":"2025-07-06T18:37:39.250Z","repository":{"id":154533109,"uuid":"421849600","full_name":"enricopesce/kubeflow","owner":"enricopesce","description":"Develop an application directly inside a Kubernetes cluster and release it with ArgoCD","archived":false,"fork":false,"pushed_at":"2021-12-16T16:25:05.000Z","size":27,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-12T12:23:31.067Z","etag":null,"topics":["argocd","cloudnative","continuos-deployment","devspace","kubernetes"],"latest_commit_sha":null,"homepage":"","language":"Dockerfile","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/enricopesce.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":"2021-10-27T14:23:14.000Z","updated_at":"2023-02-15T13:33:59.000Z","dependencies_parsed_at":null,"dependency_job_id":"fb22c30a-ffe1-43a4-9da9-9180fdb37d67","html_url":"https://github.com/enricopesce/kubeflow","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/enricopesce/kubeflow","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enricopesce%2Fkubeflow","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enricopesce%2Fkubeflow/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enricopesce%2Fkubeflow/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enricopesce%2Fkubeflow/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/enricopesce","download_url":"https://codeload.github.com/enricopesce/kubeflow/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enricopesce%2Fkubeflow/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263952965,"owners_count":23535018,"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":["argocd","cloudnative","continuos-deployment","devspace","kubernetes"],"created_at":"2025-01-19T05:54:10.201Z","updated_at":"2025-07-06T18:37:39.224Z","avatar_url":"https://github.com/enricopesce.png","language":"Dockerfile","funding_links":[],"categories":[],"sub_categories":[],"readme":"This project is a lab for understanding how I can setup a complete workflow from development to production with some objectives:\n\n1) minor number of tools\n2) better development experience\n3) identical infrastructure at every stage\n4) continuos deployment\n\n## Install Kubernetes and other requirements\n\nTo start you need to prepare a local kubernetes setup with Minikube and Devspace: \n\n    brew install minikube hyperkit devspace (Mac Os)\n    minikube start --driver=hyperkit\n    minikube addons enable metrics-server\n    minikube addons enable ingress\n\nTo deep dive to Devspace follow this official onboarding page https://devspace.sh/cli/docs/guides/basics\n\n## Starts development mode\n\nDevSpace allows you to develop applications directly inside a Kubernetes cluster.\nThe biggest advantages of developing directly inside Kubernetes is that your dev environment will be very similar to your release (production\\staging etc) environment and you can have much greater confidence that everything will work in the same environment when shipping new features.\n\n    devspace use namespace kubeflow-dev\n    devspace dev\n\nNow you can launch commands inside the pod es:\n\n    composer require --dev phpunit/phpunit\n    ...\n    ...\n\nan you can develop with your preferred IDE.\n\n## Tests with non development without CD\n\nIf you need to test K8s modifications or new features you can work with the development mode or you can launch the release environment locally or remotely without ArgoCD or CI\\CD and a git trigger.\n\n    devspace use profile release\n    devspace use namespace kubeflow-relese\n    devspace deploy\n\n## Cleanup dev resources\n\n    devspace purge\n\n### ArgoCD setup\n\nIn your K8s cluster install ArgoCD:\n\n    kubectl create namespace argocd\n    kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml\n    kubectl port-forward svc/argocd-server -n argocd 8090:443\n\nGet the password admin\n\n    kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath=\"{.data.password}\" | base64 -d\n\nNow you can test and monitor the deployments with http://localhost:8090\n\n### ArgoCD adding application deployment\n\nDefine the ArgoCD application\n\n    kubectl apply -n argocd -f app.yaml\n\n\n## Cleanup all\n\n    minikube delete","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fenricopesce%2Fkubeflow","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fenricopesce%2Fkubeflow","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fenricopesce%2Fkubeflow/lists"}