Description
Following successful experiments in ProjectPythia/cmip6-cookbook#27 and ProjectPythia/pythia-foundations#322, it's time to build the binderbot functionality into the template and (once it's working) push those changes out to all cookbook repos.
My recent refactor of the infrastructure makes this much easier. Most (all?) the changes will actually occur in the reusable workflows over at https://github.com/ProjectPythiaCookbooks/cookbook-actions.
What I have in mind is a python script that parses _config.yml
and _toc.yml
to get things needed for the call to binderbot:
- the link to the binder (stored in the field
binderhub_url:
in_config.yml
) - the list of all notebook files to be executed (from
_toc.yml
)
That would all happen within the reusable https://github.com/ProjectPythiaCookbooks/cookbook-actions/blob/main/.github/workflows/build-book.yaml
One question is whether this should be automatic (i.e. every Cookbook executes this way), or whether there should be a switch for the individual Cookbook to choose whether to execute via binderbot or on GitHub Actions.