aboutsummaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
authorGertjan van den Burg <gertjanvandenburg@gmail.com>2020-12-28 14:25:37 +0000
committerGertjan van den Burg <gertjanvandenburg@gmail.com>2020-12-28 14:25:37 +0000
commit8516844d00530b82698236a16c19c77a6e5fe212 (patch)
tree09085de1d93fa22a4379b0dcc28380a0c1d4e2e6 /.github
parentFix downloads badge (diff)
downloadpaper2remarkable-8516844d00530b82698236a16c19c77a6e5fe212.tar.gz
paper2remarkable-8516844d00530b82698236a16c19c77a6e5fe212.zip
Add tentative support for Github Actions
Diffstat (limited to '.github')
-rw-r--r--.github/scripts/test_p2r.sh60
-rw-r--r--.github/workflows/test.yml21
2 files changed, 81 insertions, 0 deletions
diff --git a/.github/scripts/test_p2r.sh b/.github/scripts/test_p2r.sh
new file mode 100644
index 0000000..e7c1139
--- /dev/null
+++ b/.github/scripts/test_p2r.sh
@@ -0,0 +1,60 @@
+#!/bin/bash
+#
+# Setup environment and run unit tests for paper2remarkable
+#
+# After Travis effectively removed support for open source projects I've
+# decided to capture all testing facilities in a single script, to ensure we
+# can more easily move between CI providers.
+#
+# This script is intended to be run inside a virtual machine (or equivalent)
+# that runs Ubuntu Xenial. It will affect the system installed packages.
+#
+# Author: G.J.J. van den Burg
+# Date: 2020-11-06
+#
+
+set -e -u -x -o pipefail
+
+NODE_VERSION="v12.18.1"
+NVM_VERSION="v0.36.0"
+
+echo "Setting up environment"
+echo -e "\tUpdating system ..."
+
+sudo apt-get update
+
+echo -e "\tInstalling system dependencies for paper2remarkable"
+
+sudo apt-get install ghostscript pdftk poppler-utils qpdf
+
+echo -e "\tInstalling nvm ..."
+
+sudo apt-get install build-essential libssl-dev -y
+
+curl -o- "https://raw.githubusercontent.com/nvm-sh/nvm/${NVM_VERSION}/install.sh" | bash
+
+source ~/.nvm/nvm.sh
+
+echo -e "\tInstalling node version ${NODE_VERSION}"
+
+nvm install ${NODE_VERSION}
+
+echo -e "\tActivating node version ${NODE_VERSION}"
+
+nvm use ${NODE_VERSION}
+
+echo -e "Installing pre-commit"
+
+pip install pre-commit
+
+echo -e "Install package"
+
+pip install -e .[test]
+
+echo -e "Run pre-commit"
+
+pre-commit run --all-files --show-diff-on-failure
+
+echo -e "Run unit tests"
+
+green -vv -a ./tests
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
new file mode 100644
index 0000000..d69f3eb
--- /dev/null
+++ b/.github/workflows/test.yml
@@ -0,0 +1,21 @@
+name: Test paper2reMarkable
+
+on: push
+
+jobs:
+ p2r-test:
+ name: Unit tests for paper2remarkable
+ runs-on: ubuntu-xenial
+
+ steps:
+ - name: Install Python 3.6
+ uses: actions/setup-python@v2
+ with:
+ python-version: '3.6'
+
+ - name: Checkout code
+ uses: actions/checkout@v2
+
+ - name: Run unit test script
+ run: ./.github/scripts/test_p2r.sh
+ shell: bash