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

velero needlessly requires sh in kubectl image #591

Open
xnox opened this issue Jun 18, 2024 · 1 comment
Open

velero needlessly requires sh in kubectl image #591

xnox opened this issue Jun 18, 2024 · 1 comment

Comments

@xnox
Copy link

xnox commented Jun 18, 2024

Describe the problem/challenge you have

Currently velero helm chart requires "sh" "which" in kubectl image, which are copied to a shared volume, which is then copied to velero image and expected to be executable there. This is the case with statically linked "sh" and "kubectl" but is not the case with shared linked ones.

https://github.com/vmware-tanzu/helm-charts/blob/8930c4099fa76b14a4edacc01ecf0ee0e5536bdf/charts/velero/templates/upgrade-crds/upgrade-crds.yaml#L80C16-L80C61

However this seems quite complicated, and brings in redudant runtime dependencies.

Describe the solution you'd like

Anything that results in not needing "sh" in kubectl and velero containers.

Option 1)
Can output to file flag be added to velero install command? such that one can execute velero image as velero install --crds-only --dry-run -o yaml -O /tmp/velero-crds.yaml and then later use kubectl image to kubectl apply -f /tmp/velero-crds.yaml without needed a sh to pipe between the two commands?

Option 2)
Why is all of that performed in the first place..... Can one instead directly run velero install --crds-only straight away, without --dry-run and without pipe to kubectl? There really is nothing dry-run about this call

Anything else you would like to add:
Currently these helm charts dictate for containers to have more dependencies in them, than strictly needed or provided by some minimalistic / distro-less container types.

Environment:

  • helm version (use helm version):
  • helm chart version and app version (use helm list -n <YOUR NAMESPACE>):
  • Kubernetes version (use kubectl version):
  • Kubernetes installer & version:
  • Cloud provider or hardware configuration:
  • OS (e.g. from /etc/os-release):
@jenting
Copy link
Collaborator

jenting commented Jun 18, 2024

Related to #571

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

No branches or pull requests

2 participants