Browse code

Add workdlow-related configuration

Joseph Weston authored on 09/11/2019 00:44:12
Showing 3 changed files
1 1
new file mode 100644
... ...
@@ -0,0 +1,35 @@
1
+name: tests
2
+
3
+on: [push]
4
+
5
+jobs:
6
+    test:
7
+        runs-on: ubuntu-latest
8
+        strategy:
9
+            max-parallel: 4
10
+            matrix:
11
+                python-version: [3.6, 3.7]
12
+        steps:
13
+            - uses: actions/checkout@v1
14
+            - shell: bash
15
+              run: echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})"
16
+              id: extract_branch
17
+            - shell: bash
18
+              run: echo "##[set-output name=py_version;]$(py_ver=${{ matrix.python-version }} && echo ${py_ver//./})"
19
+              id: extract_py_version
20
+            - name: Set up Python ${{ matrix.python-version }}
21
+              uses: actions/setup-python@v1
22
+              with:
23
+                  python-version: ${{ matrix.python-version }}
24
+            - name: Install dependencies
25
+              run: |
26
+                python -m pip install --upgrade pip
27
+                pip install tox tox-gh-actions
28
+            - name: Test
29
+              run: tox
30
+            - name: Upload coverage
31
+              uses: codecov/codecov-action@v1.0.3
32
+              with:
33
+                token: ${{secrets.CODECOV_TOKEN}}
34
+                file: ./.coverage.xml
35
+                flags: ${{ steps.extract_branch.outputs.branch }},py${{ steps.extract_py_version.outputs.py_version }}
0 36
new file mode 100644
... ...
@@ -0,0 +1,125 @@
1
+# Byte-compiled / optimized / DLL files
2
+__pycache__/
3
+*.py[cod]
4
+*$py.class
5
+
6
+# C extensions
7
+*.so
8
+
9
+# Distribution / packaging
10
+.Python
11
+build/
12
+develop-eggs/
13
+dist/
14
+downloads/
15
+eggs/
16
+.eggs/
17
+lib/
18
+lib64/
19
+parts/
20
+sdist/
21
+var/
22
+wheels/
23
+pip-wheel-metadata/
24
+share/python-wheels/
25
+*.egg-info/
26
+.installed.cfg
27
+*.egg
28
+MANIFEST
29
+
30
+# PyInstaller
31
+#  Usually these files are written by a python script from a template
32
+#  before PyInstaller builds the exe, so as to inject date/other infos into it.
33
+*.manifest
34
+*.spec
35
+
36
+# Installer logs
37
+pip-log.txt
38
+pip-delete-this-directory.txt
39
+
40
+# Unit test / coverage reports
41
+htmlcov/
42
+.tox/
43
+.nox/
44
+.coverage
45
+.coverage.*
46
+.cache
47
+nosetests.xml
48
+coverage.xml
49
+*.cover
50
+*.py,cover
51
+.hypothesis/
52
+.pytest_cache/
53
+
54
+# Translations
55
+*.mo
56
+*.pot
57
+
58
+# Django stuff:
59
+*.log
60
+local_settings.py
61
+db.sqlite3
62
+db.sqlite3-journal
63
+
64
+# Flask stuff:
65
+instance/
66
+.webassets-cache
67
+
68
+# Scrapy stuff:
69
+.scrapy
70
+
71
+# Sphinx documentation
72
+docs/_build/
73
+
74
+# PyBuilder
75
+target/
76
+
77
+# Jupyter Notebook
78
+.ipynb_checkpoints
79
+
80
+# IPython
81
+profile_default/
82
+ipython_config.py
83
+
84
+# pyenv
85
+.python-version
86
+
87
+# pipenv
88
+#   According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
89
+#   However, in case of collaboration, if having platform-specific dependencies or dependencies
90
+#   having no cross-platform support, pipenv may install dependencies that don't work, or not
91
+#   install all needed dependencies.
92
+#Pipfile.lock
93
+
94
+# celery beat schedule file
95
+celerybeat-schedule
96
+
97
+# SageMath parsed files
98
+*.sage.py
99
+
100
+# Environments
101
+.env
102
+.venv
103
+env/
104
+venv/
105
+ENV/
106
+env.bak/
107
+venv.bak/
108
+
109
+# Spyder project settings
110
+.spyderproject
111
+.spyproject
112
+
113
+# Rope project settings
114
+.ropeproject
115
+
116
+# mkdocs documentation
117
+/site
118
+
119
+# mypy
120
+.mypy_cache/
121
+.dmypy.json
122
+dmypy.json
123
+
124
+# Pyre type checker
125
+.pyre/
0 126
new file mode 100644
... ...
@@ -0,0 +1,18 @@
1
+repos:
2
+-   repo: https://github.com/ambv/black
3
+    rev: 19.3b0
4
+    hooks:
5
+    - id: black
6
+      language_version: python3.7
7
+-   repo: https://github.com/pre-commit/pre-commit-hooks
8
+    rev: v2.1.0
9
+    hooks:
10
+    - id: end-of-file-fixer
11
+    - id: trailing-whitespace
12
+# Disable this until 3.8.0 is released (as explained in
13
+# https://gitlab.com/pycqa/flake8/issues/450)
14
+#-   repo: https://gitlab.com/pycqa/flake8
15
+#    rev: 3.8.0
16
+#    hooks:
17
+#    - id: flake8
18
+#      args: ['--config=tox.ini']