Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Creates dev microk8s environment using skaffold #4

Merged
merged 4 commits into from
Apr 14, 2023

Conversation

omar-selo
Copy link
Collaborator

@omar-selo omar-selo commented Apr 7, 2023

This PR is a sample solution for a development environment with microk8s. It's related to the Jira tasks RTW-5 and RTW-4 whose requirements are to investigate the whether microk8s can be a valid development environment, and if so, create such an environment.

For this I propose the use of Skaffold, a tool made to help iterate from code to k8s cluster. Specifically, it can watch source files and on changes, build images and re-apply the cluster with those changes automatically. Further, it can sync files between host and container directly to avoid rebuilding images and improve the cycle speed.

I've set it up so that changes to files like Dockerfile and k8s.yaml will trigger a rebuild and redeploy the cluster. While changes to files under src and tests directories sync automatically without rebuilding for performance. Find screen recordings below. Note that the cluster is a bit heavy at least on my weak machine so I can imagine it's not a great development experience for weak machines (but there might be ways to reduce microk8s load). Also this solution doesn't can technically run on a VM and doesn't need to run locally:
Screencast from 07-04-23 13:00:11.webm
Screencast from 07-04-23 13:02:03.webm
Screencast from 07-04-23 13:03:25.webm

@omar-selo omar-selo requested a review from nadzyah April 10, 2023 08:18
@omar-selo omar-selo merged commit 2c429af into main Apr 14, 2023
@omar-selo omar-selo deleted the create-dev-microk8s-env branch April 14, 2023 11:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants