The idea is to make sure that one can manually set up a web service that is exposed to the internet via the toolname.toolforge.org domain, using toolforge jobs.
This is in preparation to moving toolforge webservice into toolforge jobs
( I have a feeling we already have a task for this but in case we don't yet, this is me creating it)
Things that needs to be done
- Implement this feature in jobs-api
- Configure ingress, services, ensure nothing conflicts with the webservice
- What should the domain name be? for now maybe toolname.toolforge.org (like webservice). In the future jobname.toolname.toolforge.org.
- <tool>.toolforge.org
- We may have to make some validation changes to webservice itself, to verify that the domain name toolname.toolforge.org is not in use by jobs-api (and verse versa)
- Implement the feature in jobs-cli
- what's a suitable argument name (--expose, --expose-default ?)
- Testing (especially ensuring this doesn't affect how the webservice works)
- Cloud announce/toolforge changelog
To my knowledge this is likely all that is need to get this to work. We already had a brief discussion about this ( myself and @dcaro ) and didn't immediately see many other things apart from the above ( Thanks to the awesome work already done by so many others to handle the domain name, ssl and every other thing needed).
You are welcome to edit this and add any other thing that I missed. Please do 🙏, I don't know a lot about how many things outside toolforge work. If there is any resource you think will help, please drop.