I am trying to understand how a “binderized voilà” service integrated with a Gitlab instance could work.
My use case would be to allow users of a Gitlab instance to create public, unauthenticated dashboards/apps from a (possibly) private source code repository, with a customizable/flexible environment as provided by binder.
I’m not certain how to do this, my initial guess would be to try to deploy a BinderHub instance that would launch one voilà server per (user/repo spec) pair instead of the usual jupyter server. Is that a valid approach or should I consider other options?
So far I found this issue on the topic of running voilà on JupyterHub and offering public deployments : https://github.com/voila-dashboards/voila/issues/112
For the deployment described above, what are the missing parts? Would a ‘
voila-singleuser’ (as mentioned by @yuvipanda on the ticket) bring me closer to a solution? If so, what would be a rough sketch of the implementation?
Am I missing some understanding of voila as well? Given that I would run the voila instances in containers using a BinderHub instance, arbitrary code execution is of little concern to me (and that’s one of the motivations behind Voilà, right?) ; however, I’d like to avoid source code leaks. Am I missing a simpler solution?