From d9b896c9053d3a26100c72bf183ee5e8ad4ddb3e Mon Sep 17 00:00:00 2001 From: Florian Wechsung Date: Thu, 24 Dec 2020 09:38:39 +0100 Subject: [PATCH 1/7] Create python-test.yml --- .github/workflows/python-test.yml | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 .github/workflows/python-test.yml diff --git a/.github/workflows/python-test.yml b/.github/workflows/python-test.yml new file mode 100644 index 0000000..b29413e --- /dev/null +++ b/.github/workflows/python-test.yml @@ -0,0 +1,31 @@ +# This workflow will install Python dependencies, run tests and lint with a single version of Python +# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions + +name: Python application + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Set up Python 3.8 + uses: actions/setup-python@v2 + with: + python-version: 3.8 + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install flake8 pytest + if [ -f requirements.txt ]; then pip install -r requirements.txt; fi + pip install . + - name: Test with pytest + run: | + pytest tests/ From 281a86fb8d1312a682197619f63ade3899679032 Mon Sep 17 00:00:00 2001 From: Florian Wechsung Date: Thu, 24 Dec 2020 09:46:54 +0100 Subject: [PATCH 2/7] add openmpi --- .github/workflows/python-test.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/python-test.yml b/.github/workflows/python-test.yml index b29413e..e30a95f 100644 --- a/.github/workflows/python-test.yml +++ b/.github/workflows/python-test.yml @@ -20,6 +20,9 @@ jobs: uses: actions/setup-python@v2 with: python-version: 3.8 + - name: Install openmpi + run: | + apt install openmpi-bin libopenmpi-dev - name: Install dependencies run: | python -m pip install --upgrade pip From 1c5637302d3f4e445ab4576eddc5f47effa6df10 Mon Sep 17 00:00:00 2001 From: Florian Wechsung Date: Thu, 24 Dec 2020 09:48:24 +0100 Subject: [PATCH 3/7] need sudo --- .github/workflows/python-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/python-test.yml b/.github/workflows/python-test.yml index e30a95f..b114cf5 100644 --- a/.github/workflows/python-test.yml +++ b/.github/workflows/python-test.yml @@ -22,7 +22,7 @@ jobs: python-version: 3.8 - name: Install openmpi run: | - apt install openmpi-bin libopenmpi-dev + sudo apt install openmpi-bin libopenmpi-dev - name: Install dependencies run: | python -m pip install --upgrade pip From cfb04091f71cb3bd8d9ab5c7b7da0ecb1dea872e Mon Sep 17 00:00:00 2001 From: Florian Wechsung Date: Thu, 24 Dec 2020 09:51:03 +0100 Subject: [PATCH 4/7] update submodules --- .github/workflows/python-test.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/python-test.yml b/.github/workflows/python-test.yml index b114cf5..3b846d3 100644 --- a/.github/workflows/python-test.yml +++ b/.github/workflows/python-test.yml @@ -16,6 +16,8 @@ jobs: steps: - uses: actions/checkout@v2 + - name: Checkout submodules + run: git submodule update --init --recursive - name: Set up Python 3.8 uses: actions/setup-python@v2 with: From 7e6880497833a464bf01c2a1878eac5aeb16d3db Mon Sep 17 00:00:00 2001 From: Florian Wechsung Date: Thu, 24 Dec 2020 04:00:50 -0500 Subject: [PATCH 5/7] add netcdf dependency --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index c0619b3..1091608 100644 --- a/setup.py +++ b/setup.py @@ -129,7 +129,7 @@ def build_extensions(self): name='PlasmaOpt', long_description='', ext_modules=ext_modules, - install_requires=['pybind11>=2.4', 'sympy', 'property_manager3', 'numpy', 'scipy', 'argparse', 'mpi4py', 'matplotlib', 'randomgen'], + install_requires=['pybind11>=2.4', 'sympy', 'property_manager3', 'numpy', 'scipy', 'argparse', 'mpi4py', 'matplotlib', 'randomgen', 'netCDF4'], setup_requires=['pybind11>=2.4'], cmdclass={'build_ext': BuildExt}, packages = ["pyplasmaopt"], From 1b38db147bd125f1e5ee0a69ea6420beed94fd9c Mon Sep 17 00:00:00 2001 From: Florian Wechsung Date: Thu, 24 Dec 2020 10:17:48 +0100 Subject: [PATCH 6/7] cleaning --- .github/workflows/python-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/python-test.yml b/.github/workflows/python-test.yml index 3b846d3..56727d9 100644 --- a/.github/workflows/python-test.yml +++ b/.github/workflows/python-test.yml @@ -1,7 +1,7 @@ # This workflow will install Python dependencies, run tests and lint with a single version of Python # For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions -name: Python application +name: Build & Test on: push: @@ -25,7 +25,7 @@ jobs: - name: Install openmpi run: | sudo apt install openmpi-bin libopenmpi-dev - - name: Install dependencies + - name: Install package run: | python -m pip install --upgrade pip pip install flake8 pytest From 0870e289e382d55f3b0e4f21267239c232e8d85f Mon Sep 17 00:00:00 2001 From: Florian Wechsung Date: Thu, 24 Dec 2020 14:50:24 +0100 Subject: [PATCH 7/7] Update README.md --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index 7029507..816b49a 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,8 @@ # PlasmaOpt +![build-and-test-status](https://github.com/florianwechsung/PyPlasmaOpt/workflows/Build%20&%20Test/badge.svg) + + ## Requirements On a recent linux (e.g. Ubuntu > 18.04), most requirements should be met.