You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by pa...@apache.org on 2022/11/23 03:44:26 UTC
[beam] branch master updated: Dask runner tests action (#24324)
This is an automated email from the ASF dual-hosted git repository.
pabloem pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/beam.git
The following commit(s) were added to refs/heads/master by this push:
new 4f1dcfb224d Dask runner tests action (#24324)
4f1dcfb224d is described below
commit 4f1dcfb224dc398e6d29530b1bb811bbc688c1d3
Author: Pablo Estrada <pa...@users.noreply.github.com>
AuthorDate: Tue Nov 22 19:44:15 2022 -0800
Dask runner tests action (#24324)
---
.github/workflows/dask_runner_tests.yml | 104 ++++++++++++++++++++++++++++++++
1 file changed, 104 insertions(+)
diff --git a/.github/workflows/dask_runner_tests.yml b/.github/workflows/dask_runner_tests.yml
new file mode 100644
index 00000000000..382437c0c9a
--- /dev/null
+++ b/.github/workflows/dask_runner_tests.yml
@@ -0,0 +1,104 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you 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
+#
+# http://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.
+
+# To learn more about GitHub Actions in Apache Beam check the CI.md
+
+name: Dask Runner Tests
+
+on:
+ schedule:
+ - cron: 'H H * * *'
+ pull_request:
+ branches: ['master', 'release-*']
+ tags: 'v*'
+ paths: ['sdks/python/apache_beam/runners/dask/**']
+
+# This allows a subsequently queued workflow run to interrupt previous runs
+concurrency:
+ group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}'
+ cancel-in-progress: true
+
+jobs:
+
+ build_python_sdk_source:
+ name: 'Build python source distribution'
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout code
+ uses: actions/checkout@v3
+ - name: Install python
+ uses: actions/setup-python@v4
+ with:
+ python-version: 3.7
+ - name: Get build dependencies
+ working-directory: ./sdks/python
+ run: pip install pip setuptools --upgrade && pip install -r build-requirements.txt
+ - name: Build source
+ working-directory: ./sdks/python
+ run: python setup.py sdist
+ - name: Rename source file
+ working-directory: ./sdks/python/dist
+ run: mv $(ls | grep "apache-beam.*tar\.gz") apache-beam-source.tar.gz
+ - name: Upload compressed sources as artifacts
+ uses: actions/upload-artifact@v3
+ with:
+ name: python_sdk_source
+ path: sdks/python/dist/apache-beam-source.tar.gz
+
+ python_unit_tests:
+ name: 'Python Unit Tests'
+ runs-on: ${{ matrix.os }}
+ strategy:
+ fail-fast: false
+ matrix:
+ os: [ubuntu-latest, macos-latest, windows-latest]
+ params: [
+ {"py_ver": "3.7", "tox_env": "py37"},
+ {"py_ver": "3.8", "tox_env": "py38"},
+ {"py_ver": "3.9", "tox_env": "py39"},
+ {"py_ver": "3.10", "tox_env": "py310" },
+ ]
+ steps:
+ - name: Checkout code
+ uses: actions/checkout@v3
+ - name: Install python
+ uses: actions/setup-python@v4
+ with:
+ python-version: ${{ matrix.params.py_ver }}
+ - name: Get build dependencies
+ working-directory: ./sdks/python
+ run: pip install -r build-requirements.txt
+ - name: Install tox
+ run: pip install tox
+ - name: Install SDK with dask
+ working-directory: ./sdks/python
+ run: pip install setuptools --upgrade && pip install -e .[gcp,dask,test]
+ - name: Run tests basic unix
+ if: startsWith(matrix.os, 'ubuntu') || startsWith(matrix.os, 'macos')
+ working-directory: ./sdks/python
+ run: tox -c tox.ini -e ${{ matrix.params.tox_env }}-dask
+ - name: Run tests basic windows
+ if: startsWith(matrix.os, 'windows')
+ working-directory: ./sdks/python
+ run: tox -c tox.ini -e ${{ matrix.params.tox_env }}-win-dask
+ - name: Upload test logs
+ uses: actions/upload-artifact@v3
+ if: always()
+ with:
+ name: pytest-${{matrix.os}}-${{matrix.params.py_ver}}
+ path: sdks/python/pytest**.xml
+