bird-house / birdhouse-deploy

Scripts and configurations to deploy the various birds and servers required for a full-fledged production platform
https://birdhouse-deploy.readthedocs.io/en/latest/
Apache License 2.0
4 stars 6 forks source link

:bulb: [Feature] Include rook server in optional components #455

Open huard opened 3 months ago

huard commented 3 months ago

Description

Rook is a birdhouse WPS server offering simple subsetting and averaging processes. See https://github.com/roocs/rook/tree/master/rook/processes

Unlike Finch, it has an established database of datasets it is willing to operate on. That is, process input includes a dataset ID, not a URL to a file, and the server converts that ID to an actual path. This database is built from an intake catalog.

Rook comes with a custom-built client, rooki, based off birdy.

This work would align with the ESGF roadmap to deploy remote computing along ESGF nodes.

Steps:

References

Concerned Organizations

fmigneault commented 3 months ago

Should also consider adding it as a provider to Weaver to give it instant OGC API support.

tlvu commented 3 months ago

I did a quick search on DockerHub, did not find a matching docker image. Is Rook publishing their docker image to another public registry? Or they do not yet publish any docker images?

huard commented 3 months ago

They don't. Can we use our dockerhub account to do it?

tlvu commented 3 months ago

Oh ! So I guess they deploy using Ansible.

Yes we can use our DockerHub account to host their image. We are paying so have unlimited storage.

But that also means their Dockerfile is not tested ! I was hoping for a quick win on this one, might not be the case anymore.

huard commented 3 months ago

Yes, their production backend runs SLURM. Ok good. Correct, but it should work very similarly to Finch. I'll gather more information on the intake catalog that's needed to configure the database and try to get it to work locally.

fmigneault commented 3 months ago

Could also be added to their repo directly and make use of GitHub Container Registry. This way, they manage their own tokens within their CI.