Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft of noaa-oisst recipe #20

Merged
merged 14 commits into from
May 18, 2021
Merged

Conversation

rabernat
Copy link
Contributor

@rabernat rabernat commented Feb 2, 2021

closes #19

This is the recipe used in the tutorial.

The point of this PR is to get the ball rolling on the "steel thread" identified by @CiaranEvans in pangeo-forge/roadmap#9 (comment).

This is a very simple recipe that is already fully supported by the pangeo_forge package in its current form. So working through this can help us discuss questions around the infrastructure and automation

Copy link
Contributor

@TomAugspurger TomAugspurger left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Feel free to ping me if I become a blocker anywhere here. I feel like a few pieces of the original CI structure are still useful:

  1. General linting of recipes (static errors with flake8, style / formatting)
  2. pangeo-forge-specific linting (currently at
    - name: Lint recipes
    shell: bash -l {0}
    run: |
    for dir in recipes/*; do
    pangeo-forge check ${dir} --verbose
    done;
    , needs to be updated for the new structure)
  3. Setting up new repositories on merge: https://github.com/pangeo-forge/staged-recipes/blob/master/.github/workflows/create-repository.yaml. Including registering a new pipeline with prefect: https://github.com/pangeo-forge/staged-recipes/blob/0d6fa51a1189a7bdb1927e7987c7a74216d13ab2/.github/workflows/scripts/register_pipeline.yaml

The interaction with prefect will need to be updated. Previously the recipes were prefect Flows.

The current prefect instance running in the GCP pangeo kubernetes cluster probably shouldn't be used anymore. I'd recommend starting fresh.

license: ?

extra:
maintainers:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This could perhaps be a top-level field. I believe conda-forge puts it in the extra field since they're building on the existing conda meta.yaml, which didn't include maintainers. In this case we're defining the schema for the recipe meta.yaml.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I basically just made all of this up. What process should we follow to design the meta.yaml file?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bakery section

bakery: aws-1

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Resources section

resources:
   memory: 10 GB

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Release tag, version, etc.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We probably want a top-level version key indicating the version of the pangeo-forge metadata file itself, it case we want to evolve it over time.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also perhaps a pangeo_forge library version. If the API changes over time, it will be important to pin the recipe to a specific version of the library.

recipes/noaa-oisst/recipe.py Show resolved Hide resolved
@rabernat
Copy link
Contributor Author

I have put together a document heading towards a spec for meta.yaml: https://hackmd.io/@rabernat/rkOsDk6QO/edit

Q: where should this live?

Add base structure for Process Recipe Github Action
@sharkinsspatial sharkinsspatial merged commit 907eeb6 into pangeo-forge:master May 18, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Example pipeline for NOAA OISST
4 participants