From 94a621ae4e218c49a0446a700774d79519d71941 Mon Sep 17 00:00:00 2001 From: toonn Date: Tue, 3 Sep 2019 19:42:10 +0200 Subject: Add GitHub Actions ci Run our python tests and shellcheck in seperate workflows only when relevant files are changed, respectively python files or `scope.sh`. This tests with one extra version of python, 3.7. GitHub's version of shellcheck seems to be missing a few flags. So we download the latest stable version, 0.7.0 currently. --- .github/workflows/python.yml | 30 ++++++++++++++++++++++++++++++ .github/workflows/shellcheck.yml | 22 ++++++++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 .github/workflows/python.yml create mode 100644 .github/workflows/shellcheck.yml (limited to '.github/workflows') diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml new file mode 100644 index 00000000..6e872db5 --- /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, 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 requirements.txt + - name: Lint and test with pylint, flake8, doctest, pytest + run: | + make test_py 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 -- cgit 1.4.1-2-gfad0