Skip to content

Commit

Permalink
New Meta Package and support GLDAS early product (#36)
Browse files Browse the repository at this point in the history
* Install pygrib via conda

* Fix folder detection for new trollsift version

* Update travis install

* Update CI

* Update README.rst

* Exclude pytest v3.9.1

* Add coveragerc

* Update test-requirements.txt

* include varnames

* Add gitattributes and update coveragerc

* Update environment.yml

* Add support for GLDAS EP

* Fix pep8 formatting

* Clean up

* Update test to always use bbox

* Update pyscaffold

* Add CI workflow

* Reduce builds for now

* Update tests for GHA, docs and deprecation warning

* Update ci

* Add return value

* Update deprecation warning

* Fix open files issue on windows

* Update changelog and readme
  • Loading branch information
wpreimes committed Jul 4, 2022
1 parent b90b652 commit 8c01f1d
Show file tree
Hide file tree
Showing 31 changed files with 1,278 additions and 916 deletions.
2 changes: 1 addition & 1 deletion .coveragerc
Expand Up @@ -2,7 +2,7 @@
[run]
branch = True
source = gldas
# omit = bad_file.py
omit = */_version.py

[paths]
source =
Expand Down
1 change: 1 addition & 0 deletions .gitattributes
@@ -0,0 +1 @@
pygeobase/_version.py export-subst
119 changes: 119 additions & 0 deletions .github/workflows/ci.yml
@@ -0,0 +1,119 @@

# This workflow will install Python dependencies and run tests on
# windows and linux systems with a variety of Python versions

# For more information see:
# https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions

name: Automated Tests

on:
push:
pull_request:
schedule:
- cron: '0 0 * * *' # daily

jobs:
build:
name: Build py${{ matrix.python-version }} @ ${{ matrix.os }} 🐍
runs-on: ${{ matrix.os }}
strategy:
matrix:
python-version: ['3.8', '3.9', '3.10']
os: ["ubuntu-latest", "windows-latest"]

steps:
- uses: actions/checkout@v2
with:
submodules: true
- uses: conda-incubator/setup-miniconda@v2.0.1
with:
miniconda-version: "latest"
auto-update-conda: true
python-version: ${{ matrix.python-version }}
environment-file: environment.yml
activate-environment: gldas
auto-activate-base: false
- name: Print environment infos
shell: bash -l {0}
run: |
conda info -a
conda list
pip list
which pip
which python
- name: Export Environment
shell: bash -l {0}
run: |
mkdir -p .artifacts
filename=env_py${{ matrix.python-version }}_${{ matrix.os }}.yml
conda env export --no-builds | grep -v "prefix" > .artifacts/$filename
- name: Install package and test
shell: bash -l {0}
run: |
pip install -e .
pytest --cache-clear
- name: Upload Coverage
shell: bash -l {0}
run: |
pip install coveralls && coveralls --service=github
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
COVERALLS_FLAG_NAME: ${{ matrix.python-version }}
COVERALLS_PARALLEL: true
- name: Create wheel and dist package
shell: bash -l {0}
run: |
git status
pip install setuptools_scm
if [ ${{ matrix.os }} == "windows-latest" ]
then
# build whls on windows
pip install wheel
python setup.py bdist_wheel --dist-dir .artifacts/dist
else
# build dist on linux
python setup.py sdist --dist-dir .artifacts/dist
fi
ls .artifacts/dist
- name: Upload Artifacts
uses: actions/upload-artifact@v2
with:
name: Artifacts
path: .artifacts/*
coveralls:
name: Submit Coveralls 👚
needs: build
runs-on: ubuntu-latest
container: python:3-slim
steps:
- name: Finished
run: |
pip3 install --upgrade coveralls && coveralls --service=github --finish
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
publish:
name: Upload to PyPI
if: |
startsWith(github.ref, 'refs/tags/v') &&
startsWith(github.repository, 'TUW-GEO')
needs: build
runs-on: ubuntu-latest
steps:
- name: Print environment variables
run: |
echo "GITHUB_REF = $GITHUB_REF"
echo "GITHUB_REPOSITORY = $GITHUB_REPOSITORY"
- name: Download Artifacts
uses: actions/download-artifact@v2
- name: Display downloaded files
run: ls -aR
- name: Upload to PyPI
uses: pypa/gh-action-pypi-publish@v1.4.1
with:
skip_existing: true
verbose: true
verify_metadata: true
packages_dir: Artifacts/dist/
user: __token__
password: ${{ secrets.PYPI_API_TOKEN }} # this needs to be uploaded to github actions secrets
1 change: 1 addition & 0 deletions .gitignore
Expand Up @@ -42,3 +42,4 @@ cover/*
MANIFEST

*/local_scripts/*
.artifacts/*
7 changes: 4 additions & 3 deletions .readthedocs.yml
Expand Up @@ -3,10 +3,11 @@ version: 2
sphinx:
configuration: docs/conf.py

formats:
- pdf
conda:
environment: environment.yml

python:
version: 3.7
install:
- requirements: docs/requirements.txt
- method: pip
path: .
53 changes: 0 additions & 53 deletions .travis.yml

This file was deleted.

14 changes: 14 additions & 0 deletions CHANGELOG.rst
Expand Up @@ -7,6 +7,20 @@ Unreleased

-

Version 0.7.0
=============

- Test download function with real data.
- Support GLDAS EP
- GHA to replace travis
- Update docs
- Update Formatting

Version 0.6.1
=============

- Travis upload release to pypi

Version 0.6
===========

Expand Down
23 changes: 3 additions & 20 deletions README.rst
Expand Up @@ -2,8 +2,8 @@
gldas
=====

.. image:: https://travis-ci.org/TUW-GEO/gldas.svg?branch=master
:target: https://travis-ci.org/TUW-GEO/gldas
.. image:: https://github.com/TUW-GEO/gldas/workflows/Automated%20Tests/badge.svg?branch=master
:target: https://github.com/TUW-GEO/gldas/actions

.. image:: https://coveralls.io/repos/github/TUW-GEO/gldas/badge.svg?branch=master
:target: https://coveralls.io/github/TUW-GEO/gldas?branch=master
Expand Down Expand Up @@ -43,7 +43,7 @@ commands:

.. code-block:: shell
conda create -n gldas python=3.6 # or any other supported python version
conda create -n gldas python=3.9 # or any other supported python version
source activate gldas
.. code-block:: shell
Expand All @@ -66,23 +66,6 @@ format (reading, time series creation) and GLDAS Noah data version 2.0 and versi
It should be easy to extend the package to support other GLDAS based products.
This will be done as need arises.

Downloading Products
====================

In order to download GLDAS NOAH products you have to register an account with
NASA's Earthdata portal. Instructions can be found `here
<http://disc.sci.gsfc.nasa.gov/registration/registration-for-data-access>`_.

After that you can use the command line program ``gldas_download``.

.. code::
mkdir ~/workspace/gldas_data
gldas_download ~/workspace/gldas_data
would download GLDAS Noah version 2.0 in 0.25 degree sampling into the folder
``~/workspace/gldas_data``. For more options run ``gldas_download -h``.

Contribute
==========

Expand Down

0 comments on commit 8c01f1d

Please sign in to comment.