Skip to content

Commit

Permalink
Add Github CI tests & get them passing
Browse files Browse the repository at this point in the history
PiperOrigin-RevId: 374761270
  • Loading branch information
shoyer authored and Xarray-Beam authors committed May 20, 2021
1 parent 721f3d6 commit d5480f6
Show file tree
Hide file tree
Showing 3 changed files with 74 additions and 8 deletions.
48 changes: 48 additions & 0 deletions .github/workflows/ci-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: CI

on:
# Triggers the workflow on push or pull request events but only for the main branch
push:
branches: [ main ]
pull_request:
branches: [ main ]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: [3.7, 3.8, 3.9]
steps:
- name: Cancel previous
uses: styfle/[email protected]
with:
access_token: ${{ github.token }}
if: ${{github.ref != 'refs/head/main'}}
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Get pip cache dir
id: pip-cache
run: |
python -m pip install --upgrade pip wheel
echo "::set-output name=dir::$(pip cache dir)"
- name: pip cache
uses: actions/cache@v2
with:
path: ${{ steps.pip-cache.outputs.dir }}
key: ${{ runner.os }}-pip-${{ hashFiles('**/setup.py') }}
- name: Install dependencies
run: |
pip install -U mypy-protobuf future
pip install -U git+https://github.com/apache/beam.git#subdirectory=sdks/python
pip install dask rechunker zarr xarray absl-py pytest pytest-xdist
- name: Test with pytest
run: |
pip install -e .
pytest -n auto xarray_beam
20 changes: 20 additions & 0 deletions conftest.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Copyright 2021 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
"""Configure FLAGS with default values for absltest."""
from absl import app

try:
app.run(lambda argv: None)
except SystemExit:
pass
14 changes: 6 additions & 8 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,21 +16,19 @@
import setuptools


INSTALL_REQUIRES = [
'apache_beam',
'dask',
'rechunker',
'zarr',
'xarray',
]
base_requires = ['apache_beam', 'dask', 'rechunker', 'zarr', 'xarray']
tests_requires = ['absl-py', 'pytest']

setuptools.setup(
name='xarray-beam',
version='0.0.1',
license='Apache 2.0',
author='Google LLC',
author_email='[email protected]',
install_requires=INSTALL_REQUIRES,
install_requires=base_requires,
extras_require={
'tests': tests_requires,
},
url='https://github.com/google/xarray-beam',
packages=setuptools.find_packages(),
python_requires='>=3',
Expand Down

0 comments on commit d5480f6

Please sign in to comment.