NASA-Openscapes / corn

Base image for the NASA-Openscapes Jupyterhub
MIT License
4 stars 4 forks source link

Notes to update README: state of things and todos #20

Open jules32 opened 1 year ago

jules32 commented 1 year ago

environment.yml

Dependencies is time-consuming. Most are not pinned to a specific version. One thing I'd like to see: organize this list and say "why do you need dask here". what does it do, why do we have this library here.

Makhan: are there tools to do this? Luis: Yes Mamba can make a dependency tree.

But we don't use all these libraries often. Some were added for a workshop. Doing an inventory and justifying why things are here. Documenting good practice.

Example: netcdf4 package. An issue where the latest is not compatible with OPeNDAP. Without pinned versions it will build with most recent compatible. Conda-lock keeps track of versions

jules32 commented 1 year ago

Makhan: Where do we create the image? Luis: The machines will be linux-based in the Cloud. So, the docker image we use for 2i2c is linux-based.

The image is created on GitHub, via the GitHub Action. GitHub Action is triggered for a push to main. This is then pushed to a registry: DockerHub

TODO:

jules32 commented 1 year ago

notebook of code snippets to test a new library to add

TODO:

TODO:

jules32 commented 1 year ago

Makhan: after another few sessions like this I'll be able to maintain the corn image in JupyterHub

jules32 commented 1 year ago

TODO: releases

We'll use GitHub Releases. Here is an example of how we do it for the Cookbook:

https://github.com/NASA-Openscapes/earthdata-cloud-cookbook/releases/

Note we use the calver versioning (year.month.0):

image
jules32 commented 1 year ago

Luis our big aim for reproducibility:

"The corn image was able to render this whole cookbook on this day." We can use quarto to run through all of this.

We should start on this:: try to execute all the notebooks

jules32 commented 1 year ago

Link to support tickets for 2i2c