From e95a620ff902eb4eed48c269bcf454321aadb3b4 Mon Sep 17 00:00:00 2001 From: Shivam Mathur Date: Sat, 31 Aug 2019 03:23:59 +0530 Subject: [PATCH] Add github actions --- .github/workflows/deps.py | 13 +++++++++++++ .github/workflows/pythonpackage.yml | 25 +++++++++++++++++++++++++ .github/workflows/test.py | 4 ++++ 3 files changed, 42 insertions(+) create mode 100644 .github/workflows/deps.py create mode 100644 .github/workflows/pythonpackage.yml create mode 100644 .github/workflows/test.py diff --git a/.github/workflows/deps.py b/.github/workflows/deps.py new file mode 100644 index 0000000..27aa2d4 --- /dev/null +++ b/.github/workflows/deps.py @@ -0,0 +1,13 @@ +import platform +import os + +if platform.system() == 'Linux': + os.system('sudo apt-get install iputils-ping') + +os.system('python -m pip install --upgrade pip') +os.system('pip install tox codecov coveralls pytest-cov') +os.system('pip install -r requirements.txt') +os.system('pip install -r requirements_dev.txt') + + + diff --git a/.github/workflows/pythonpackage.yml b/.github/workflows/pythonpackage.yml new file mode 100644 index 0000000..f5c90ba --- /dev/null +++ b/.github/workflows/pythonpackage.yml @@ -0,0 +1,25 @@ +name: Testing IPpy +on: [push] +jobs: + build: + strategy: + max-parallel: 4 + matrix: + platform: [ubuntu-latest, macOS-latest, windows-latest] + python-version: [2.7, 3.5, 3.6, 3.7] + runs-on: ${{ matrix.platform }} + steps: + - uses: actions/checkout@v1 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v1 + with: + python-version: ${{ matrix.python-version }} + - name: Install dependencies + run: python .github/workflows/deps.py + - name: Test with pytest + run: python .github/workflows/test.py + - name: Upload coverage to Codecov + uses: codecov/codecov-action@v1.0.2 + with: + token: ${{secrets.CODECOV_TOKEN}} + file: ./coverage.xml diff --git a/.github/workflows/test.py b/.github/workflows/test.py new file mode 100644 index 0000000..b18d091 --- /dev/null +++ b/.github/workflows/test.py @@ -0,0 +1,4 @@ +import sys +import os +os.system('py.test --cov=ippy tests/') +os.system('tox -e py' + sys.version[:3].replace('.', ''))