about summary refs log tree commit diff stats
path: root/.github/workflows
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/doctest.yml30
-rw-r--r--.github/workflows/py37.yml30
-rw-r--r--.github/workflows/python.yml30
-rw-r--r--.github/workflows/shellcheck.yml22
4 files changed, 112 insertions, 0 deletions
diff --git a/.github/workflows/doctest.yml b/.github/workflows/doctest.yml
new file mode 100644
index 00000000..f12cb926
--- /dev/null
+++ b/.github/workflows/doctest.yml
@@ -0,0 +1,30 @@
+name: Python doctest and pytest
+
+on:
+  push:
+    paths:
+      - '.github/workflows/doctest.yml'
+      - '*.py'
+
+jobs:
+  test_py:
+    runs-on: ubuntu-latest
+    strategy:
+      max-parallel: 4
+      matrix:
+        python-version: [2.7, 3.5, 3.6]
+    steps:
+    - uses: actions/checkout@v1
+      with:
+        fetch-depth: 1
+    - name: Set up Python ${{ matrix.python-version }}
+      uses: actions/setup-python@v1
+      with:
+        python-version: ${{ matrix.python-version }}
+    - name: Install dependencies
+      run: |
+        python -m pip install --upgrade pip
+        pip install -r requirements.txt
+    - name: doctest
+      run: |
+        make test_doctest test_other
diff --git a/.github/workflows/py37.yml b/.github/workflows/py37.yml
new file mode 100644
index 00000000..ca8210a2
--- /dev/null
+++ b/.github/workflows/py37.yml
@@ -0,0 +1,30 @@
+name: Python 3.7 lints and tests
+
+on:
+  push:
+    paths:
+      - '.github/workflows/py37.yml'
+      - '*.py'
+
+jobs:
+  test_py:
+    runs-on: ubuntu-latest
+    strategy:
+      max-parallel: 4
+      matrix:
+        python-version: [3.7]
+    steps:
+    - uses: actions/checkout@v1
+      with:
+        fetch-depth: 1
+    - name: Set up Python ${{ matrix.python-version }}
+      uses: actions/setup-python@v1
+      with:
+        python-version: ${{ matrix.python-version }}
+    - name: Install dependencies
+      run: |
+        python -m pip install --upgrade pip
+        pip install -r <(sed 's/<2//' requirements.txt)
+    - name: Lint and test with pylint, flake8, doctest, pytest
+      run: |
+        make test_py
diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml
new file mode 100644
index 00000000..1daba84c
--- /dev/null
+++ b/.github/workflows/python.yml
@@ -0,0 +1,30 @@
+name: Python lints and tests
+
+on:
+  push:
+    paths:
+      - '.github/workflows/python.yml'
+      - '*.py'
+
+jobs:
+  test_py:
+    runs-on: ubuntu-latest
+    strategy:
+      max-parallel: 4
+      matrix:
+        python-version: [2.7, 3.5, 3.6]
+    steps:
+    - uses: actions/checkout@v1
+      with:
+        fetch-depth: 1
+    - name: Set up Python ${{ matrix.python-version }}
+      uses: actions/setup-python@v1
+      with:
+        python-version: ${{ matrix.python-version }}
+    - name: Install dependencies
+      run: |
+        python -m pip install --upgrade pip
+        pip install -r requirements.txt
+    - name: Lint and test with pylint, flake8, -d-o-c-t-e-s-t-, -p-y-t-e-s-t-
+      run: |
+        make test_pylint test_flake8 test_pytest
diff --git a/.github/workflows/shellcheck.yml b/.github/workflows/shellcheck.yml
new file mode 100644
index 00000000..0d10cf61
--- /dev/null
+++ b/.github/workflows/shellcheck.yml
@@ -0,0 +1,22 @@
+name: Shellcheck scope.sh
+
+on: 
+  push:
+    paths:
+      - '.github/workflows/shellcheck.yml'
+      - 'ranger/data/scope.sh'
+
+jobs:
+  test_shellcheck:
+    runs-on: ubuntu-latest
+    steps:
+    - uses: actions/checkout@v1
+      with:
+        fetch-depth: 1
+    - name: Install newer shellcheck (0.7.0 rather than 0.4.6)
+      run: |
+        curl -LO "https://storage.googleapis.com/shellcheck/shellcheck-stable.linux.x86_64.tar.xz"
+        tar xf shellcheck-stable.linux.x86_64.tar.xz
+    - name: Shellcheck scope.sh
+      run: |
+        env PATH=shellcheck-stable:$PATH make test_shellcheck