NetCDF to COG Conversion Service
Project description
Netcdf Converter
Conversion service for netcdf4 files to cloud optimized geotiff. This repository contains the source code, unit test suite, and Jupyter notebook documentation.
Directory structure
๐
โโโ .๐ github
โโโ ๐ cmr
โโโ ๐ bin
โโโ ๐ docker
โโโ ๐ docs
โโโ ๐ net2cog
โโโ ๐ tests
โโโ CHANGELOG.md
โโโ CONTRIBUTING.md
โโโ LICENSE
โโโ README.md
โโโ poetry.lock
โโโ pyproject.toml
โโโ run_tests.sh
.github- Contains CI/CD workflows and pull request template.cmr- Contains files for updating the service's CMR UMM-S profilebin- A directory containing utility scripts to build the service and test images. A script to extract the release notes for the most recent version, as contained inCHANGELOG.mdis also in this directory.docker- A directory containing the Dockerfiles for the service and test images. It also containsservice_version.txt, which contains the semantic version number of the library and service image. Update this file with a new version to trigger a release.docs- A directory containing NetCDF Converter Service documentation.example- Directory containing Jupyter notebook documentationnet2cog- The directory containing Python source code for the net2cog Service.netcdf_convert_harmony.pycontains theNetcdfConverterServiceclass that is invoked by calls to the service.tests- Contains thepytesttest suite.CHANGELOG.md- Contains a record of changes applied to each new release of the net2cog Service.CONTRIBUTING.md- Instructions on how to contribute to the repository.LICENSE- Required for distribution under NASA open-source approval. Details conditions for use, reproduction and distribution.README.md- This file, containing guidance on developing the library and service.poetry.lock- Python's Poetry dependency management system. This file plays a crucial role in ensuring reproducible and consistent de.pyproject.toml- Contains a list of Python packages needed to run the service.run_tests.sh- Script to manage Python environment, install dependencies, and run tests. The script can be used to build and run pytest both locally and within Docker container.
Developer Notes
Local development:
Local testing of service functionality is best achieved via a local instance of Harmony. Please see instructions there regarding creation of a local Harmony-In-A-Box instance.
Test in Docker:
This service utilises the Python pytest package to perform unit tests on
classes and functions in the service. After local development is complete, and
test have been updated, they can be run via:
$ ./bin/build-image
$ ./bin/build-test
$ ./bin/run-test
The run_tests.sh script will also generate a coverage report, rendered
in HTML, and scan the code with pylint.
The unittest suite is run automatically via GitHub Actions as part of a
GitHub "workflow". These workflows are defined in the .github/workflows
directory.
Test locally:
$ ./run_tests.sh
The run_tests.sh script will also generate a coverage report, rendered
in HTML, and scan the code with pylint.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file net2cog-1.3.0.tar.gz.
File metadata
- Download URL: net2cog-1.3.0.tar.gz
- Upload date:
- Size: 22.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
60d060f78c09643347984d7c7f9d7cf6a6ff8278148bc39369ec19c0dd5c4cad
|
|
| MD5 |
73da3fa45f89b3720157c8c9a87f6cc9
|
|
| BLAKE2b-256 |
d164509ec6b5c8962ba049de76de23874c5e9f063755cf6f3a98991c9f88cc14
|
Provenance
The following attestation bundles were made for net2cog-1.3.0.tar.gz:
Publisher:
build-pipeline.yml on podaac/net2cog
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
net2cog-1.3.0.tar.gz -
Subject digest:
60d060f78c09643347984d7c7f9d7cf6a6ff8278148bc39369ec19c0dd5c4cad - Sigstore transparency entry: 1413515842
- Sigstore integration time:
-
Permalink:
podaac/net2cog@1e42726ec44c7ffd6b442a27f4b401a1d99dfa19 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/podaac
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build-pipeline.yml@1e42726ec44c7ffd6b442a27f4b401a1d99dfa19 -
Trigger Event:
push
-
Statement type:
File details
Details for the file net2cog-1.3.0-py3-none-any.whl.
File metadata
- Download URL: net2cog-1.3.0-py3-none-any.whl
- Upload date:
- Size: 24.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b341e2c227fee5515b0af0119cf33042f496dc065d4642ec1d3a0ccdc773109c
|
|
| MD5 |
d2dba8f8e65c8dfd9ce2bea3b7cf49fd
|
|
| BLAKE2b-256 |
2d7f6e3f1646fad1e0abb311c5c5979d8700dca365d1d69f5cdad315f3ae048d
|
Provenance
The following attestation bundles were made for net2cog-1.3.0-py3-none-any.whl:
Publisher:
build-pipeline.yml on podaac/net2cog
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
net2cog-1.3.0-py3-none-any.whl -
Subject digest:
b341e2c227fee5515b0af0119cf33042f496dc065d4642ec1d3a0ccdc773109c - Sigstore transparency entry: 1413515937
- Sigstore integration time:
-
Permalink:
podaac/net2cog@1e42726ec44c7ffd6b442a27f4b401a1d99dfa19 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/podaac
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build-pipeline.yml@1e42726ec44c7ffd6b442a27f4b401a1d99dfa19 -
Trigger Event:
push
-
Statement type: