kluctl
kluctl copied to clipboard
Kluctl should warn about fields being added by other field managers which Kluctl can't remove
Command
- [ ] check-image-updates
- [ ] delete
- [X] deploy
- [X] diff
- [ ] helm-pull
- [ ] helm-update
- [ ] list-images
- [ ] list-targets
- [ ] poke-images
- [ ] prune
- [ ] render
- [ ] seal
- [ ] validate
- [ ] version
Who are you?
Maintainer of Kluctl
What do you want to do?
Currently, Kluctl does not warn the user when fields can't be removed from an object that got manually added via tools like kubectl or k9s. This is due to the second point in Using Server-Side Apply in a controller.
Kluctl should be able to guess which fields got added externally and can't be removed anymore and then warn the user about such fields.
Why do you need that?
Otherwise, the user might run into very unexpected behaviour, as a diff/deploy does not show that the object has diverged from the local declaration.
Hello! I was exploring kluctl for evaluation purposes and initially intended to pose a related question in an issue. However, I discovered that this question has already been addressed in this thread.
Is the issue focused on identifying manually added changes and then displaying them in the diff? For instance, if an object in Git is initially defined as follows:
apiVersion: apps/v1
kind: Deployment
metadata:
name: prometheus-pushgateway
labels:
app: prometheus-pushgateway
But then someone uses kubectl edit
to add an additional label, making the object appear like this:
apiVersion: apps/v1
kind: Deployment
metadata:
name: prometheus-pushgateway
labels:
app: prometheus-pushgateway
something: banana
Should kluctl
be able to detect that metadata.labels.something: banana
addition was made?
This would be a distinctive feature, as I haven't come across any Kubernetes deployment tool that can perform this task and show nice diff like kluctl
.
@mirsafari Yes, the long-term goal is to show all fields unknown to kluctl that were added by an external source. So your example would be covered as well. I plan to show this in diffs and in the Webui as well, as part of the drift shown on targets.
May I ask how you found out about Kluctl? This will help me to better understand how Kluctl is positioned and how people perceive it.
Awesome, thanks for fast reply.
I saw it maybe a year ago mentioned somewhere on Reddit, but I started looking more into it now. The two Rawkode Youtube sessions are very,very good for introduction, so this is where I got the most information. I follow the Rawkode channel, so probably they poped up on Youtube search in the first place when I was looking for some video materials for kluctl