https://github.com/crim-ca/ncml2stac
Converts a NCML XML with NetCDF file reference to a STAC Item JSON definition.
Science Score: 13.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.7%) to scientific vocabulary
Repository
Converts a NCML XML with NetCDF file reference to a STAC Item JSON definition.
Basic Info
- Host: GitHub
- Owner: crim-ca
- License: mit
- Language: Jupyter Notebook
- Default Branch: main
- Size: 76.2 KB
Statistics
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
NCML to STAC
Converts a NCML XML with NetCDF file reference to a STAC Item JSON definition.
CWL Application Package for Weaver OGC API - Processes
This project can be directly converted to a Common Workflow Language (CWL) definition to generate a standalone and containerized Application Package. This package can then be deployed on a OGC API - Processes capable server that supports Part 2: Deploy, Replace, Undeploy (DRU) extension, such as Weaver.
To do so, use the following steps.
Generate a CWL corresponding to the Notebook. This will also build a Docker image with all necessary dependencies.
shell jupyter-repo2cwl "https://github.com/crim-ca/ncml2stac" -o /tmp(replace the Git repository URL by the path if the clone locally)
(optional) Push the generated Docker image to a Docker registry.
Look for the output from the previous
jupyter-repo2cwlcommand to find the generateddockerImageId. Alternatively, look for the Docker tag applied forDockerRequirementin/tmp/notebooks_ncml2stac.cwl.By default, the generated CWL will use
dockerImageIdunder theDockerRequirement. This means that CWL will expect to run the built Docker image directly without pulling it. If the remote Weaver server is expected to already have the Docker image in cache (i.e.:docker pullran manually on the server beforehand), then the tag underdockerImageIdshould be set by the server administrator for that pulled image on the server.If a different tag is used for pushing the Docker image to a Docker registry, and that it is expected that the Weaver server will automatically pull that image before running it, then the
DockerRequirementwill need to be adjusted accordingly with the adjusted Docker repository and image tag location. Specifically, thedockerImageIdneeds to be replaced bydockerPullusing the selected registry location (e.g.:<docker-registry>/<org>/<image:tag>).Deploy the process in Weaver using the CWL file.
shell weaver deploy -u http://example.com/weaver -i ncml2stac --cwl /tmp/notebooks_ncml2stac.cwl
References
- NCML XML to STAC Item JSON conversion logic:
- Jupyter Notebook to CWL using
jupyter-repo2cwl: - Git Repository to Docker with Jupyter Notebook using
jupyter-repo2docker:
Owner
- Name: crim-ca
- Login: crim-ca
- Kind: organization
- Repositories: 79
- Profile: https://github.com/crim-ca
GitHub Events
Total
Last Year
Dependencies
- actions/first-interaction v1 composite
- github/issue-labeler v3.2 composite
- actions/labeler v2 composite
- docker://docker.io/ilyam8/periodic-pr-labeler latest composite
- wip/action v1 composite
- actions/checkout v2 composite
- gitleaks/gitleaks-action v1.6.0 composite
- actions/cache v3 composite
- actions/checkout v2 composite
- actions/setup-python v2 composite
- docker/login-action v1 composite
- fkirc/skip-duplicate-actions master composite
- astroid * development
- bandit * development
- bump2version >=1.0.1 development
- codacy-coverage * development
- coverage * development
- doc8 >=0.8.1 development
- docformatter ==1.5.0 development
- flynt * development
- ipython2cwl * development
- isort >=5 development
- jupyter * development
- jupyter-repo2docker * development
- mock <4 development
- mypy * development
- nbqa * development
- parameterized * development
- pluggy >=0.7 development
- pycodestyle * development
- pydocstyle * development
- pylint >=2.15.4 development
- pylint-per-file-ignores * development
- pylint_quotes * development
- pytest * development
- pytest-cov * development
- pytest-notebook * development
- pytest-rerunfailures * development
- safety * development
- typing_extensions * development
- pip >=22.0.4
- setuptools >=65.5.1