galaxyproject / galaxy-helm

Minimal setup required to run Galaxy under Kubernetes
MIT License
41 stars 38 forks source link

`post-install-cvmfs-fix` dosent-work when CVMFS is deployed as external dependency #494

Closed NilsKrattinger closed 1 month ago

NilsKrattinger commented 2 months ago

Hi,

It seems that the post-install-cvmfs-fix is not able to terminate / run when cvmfs is deployed in another namespace. I think this is because the namespace is retrieved from the .Release. in configmap-cvmfs-fix example.

I don't have the history of the reason for this workaround, and I don't know if it's necessary even when CVMFS is deployed cluster-wide (I think it is).

If the fix is necessary, could we set the CVMFS namespace as a value? This would probably require a dedicated SA with permissions on the CVMFS namespace.

If not, should the fix be conditional on cvmfs.deploy ?

If you could point me in the right direction here, I'd be happy to do this PR!

Pod Logs :

 kubectl logs -n galaxy-dev dev01-post-install-cvmfs-fix-job-mqr62
---
Waiting on nodeplugin pod to enter 'Running' status. Currently ''.
Waiting on nodeplugin pod to enter 'Running' status. Currently ''.
Waiting on nodeplugin pod to enter 'Running' status. Currently ''.
Waiting on nodeplugin pod to enter 'Running' status. Currently ''.
Waiting on nodeplugin pod to enter 'Running' status. Currently ''.
Waiting on nodeplugin pod to enter 'Running' status. Currently ''.
Waiting on nodeplugin pod to enter 'Running' status. Currently ''.
Waiting on nodeplugin pod to enter 'Running' status. Currently ''.
Waiting on nodeplugin pod to enter 'Running' status. Currently ''.
Waiting on nodeplugin pod to enter 'Running' status. Currently ''.
Waiting on nodeplugin pod to enter 'Running' status. Currently ''.
Waiting on nodeplugin pod to enter 'Running' status. Currently ''.
Waiting on nodeplugin pod to enter 'Running' status. Currently ''.
ksuderman commented 2 months ago

Yeah, it looks like the fix assumes CVMFS will be in the .Release.Namespace. We could do with better logic when it comes to locating the CVMFS nodeplugin. It might also be a good idea to make the fix conditional on a flag set in the values.yaml file; something like cvmfs.enable-fix=false.

The fix is conditional on CVMFS being the refdata source and we do have an open PR to remove it. We just haven't felt confident enough to apply it yet.

The fix is a result of older versions of the nodeplugin hanging after installation. Restarting the pod resolved that problem.

Any and all PR's are always welcome!