Closed keithlogan94 closed 1 year ago
Main reason is because of permission denied
denied: permission_denied: write_package
Error is coming from docker, are you logged into GHCR?
Can we use tilt in addition to the for local development? I've already started configuring it and it works nicely. Also, it automatically applies changes to the helm chart
Should open source developers be able to overwrite our package registry in order to run medulla locally?
Tilt was removed in #38 when Tye was added. We moved to Tye due to it being more resource friendly as not everyone has decent machines to do development on. This is a larger concern on windows machines as a whole, as containers running on WSL using significantly more memory than Mac and Linux machines due to the nature of how Hyper-V reserves memory. This is only made worse when running a whole cluster on top of the medulla containers and potential auxiliary services such as Istio.
General direction has been do decrease the development footprint over time to make it easier for people to onboard with little to no k8s knowledge.
As for the package registry, there's no need for you to configure a registry if you are using Rancher Desktop as is recommended in the documentation: https://recro.github.io/docs/get-started/contributing
Rancher Desktop shares the container images between docker and k8s, meaning there is no need to push to a registry at all. As all built containers are directly available to containerd and dockerd inside of Rancher Desktop, this also means you can directly deploy the helm chart on the local k8s cluster. We don't expect general devs need to understand k8s and helm charts in order to develop code. A simple tye run --watch
should suffice for most people.
Oh okay. Tye works well for local development when not testing the helm charts, but one thing that tilt has to its advantage is that any changes to the helm chart, or code will automatically rebuild both the images, and deploy changes to the helm chart. I think it would be nice to provide tilt as an additional workflow for development.
When developing in tye on helm charts, firstly, you have to apply all changes to the helm chart manually, and tye run will not work with a local kubernetes cluster as that would just run the processes directly on the host.
Oh okay. Tye works well for local development when not testing the helm charts, but one thing that tilt has to its advantage is that any changes to the helm chart, or code will automatically rebuild both the images, and deploy changes to the helm chart. I think it would be nice to provide tilt as an additional workflow for development.
When developing in tye on helm charts, firstly, you have to apply all changes to the helm chart manually, and tye run will not work with a local kubernetes cluster as that would just run the processes directly on the host.
Generally we can split the development into two areas:
Tilt is fantastic for the second scenario, where you want to iterate on a helm chart as it adds a hot reload capability to the inner development loop. For the first scenario hot reload is preferred using Tye for the reasons I have already listed on my previous comment and just overall being faster than redeploying containers on k8s frequently, but also the ability to easily attach a debugger to running processes on the local machine.
Very open to improving the second scenario, as we already have a good development story for the first scenario. Open to adopting a Tiltfile under the contrib/
or chart/
directories with a focus on improving chart development workflows. tye build
can be used to build containers, or even the new container build support in the .NET 7 SDK. More info can be found in this blog post.
Okay, I like using tilt for helm charts, and tye for everything else.
Is there an existing issue for this?
Describe the bug
When Trying to run
tye deploy
during local development in order to install medulla on my local running cluster, it will try to push images to main image package and fails.Expected behavior
I want to be able to install medulla on my local running cluster for development, but it fails.
Steps to reproduce
Setup a local cluster to deploy medulla onto
Exceptions or error messages (if any)
Version number
0.1.0
Anything else?
No response