-
-
Notifications
You must be signed in to change notification settings - Fork 5
135 lines (128 loc) · 3.83 KB
/
test.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
# This workflow will install Python dependencies, run tests
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
name: tests
on:
push:
branches: [ main ]
pull_request:
schedule:
- cron: '14 3 * * 1' # at 03:14 on Monday.
jobs:
pytest:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
python-version:
- "3.13"
- "3.12"
- "3.11"
- "3.10"
- 3.9
os:
- ubuntu-latest
services:
# Label used to access the service container
mlflow:
# Docker Hub image
image: pythonf/mlflow:v2.16.0
options: >-
--health-cmd="curl --fail http://localhost:5000/health || exit 1"
--health-interval=10s
--health-timeout=5s
--health-retries=5
ports:
- 5000:5000
aim:
# Docker Hub image
image: pythonf/aim:v3.24.0
options: >-
--health-cmd="curl --fail http://localhost:43800/status || exit 1"
--health-interval=10s
--health-timeout=5s
--health-retries=5
ports:
- 43800:43800
steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install Poetry
uses: snok/install-poetry@v1
with:
virtualenvs-create: true
virtualenvs-in-project: true
- name: Install package
run: |
poetry run pip install aim
poetry install --no-interaction
- name: Setup git user
run: |
git config --global user.name "John Doe"
git config --global user.email [email protected]
git config --global init.defaultBranch "main"
- name: Pytest
run: |
poetry run python --version
poetry run coverage run -m pytest --benchmark-autosave -vv
poetry run coverage xml
poetry run coverage lcov
poetry run py.test-benchmark compare --csv=export.csv
- name: Coveralls
uses: coverallsapp/github-action@master
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
path-to-lcov: coverage.lcov
- uses: codecov/codecov-action@v2
with:
flags: fulltest
verbose: true
# nbtest:
# runs-on: ubuntu-latest
# needs: [ pytest ]
# steps:
# - uses: actions/checkout@v2
# - name: Set up Python 3.11
# uses: actions/setup-python@v4
# with:
# python-version: "3.11"
# - name: Install Poetry
# uses: snok/install-poetry@v1
# with:
# virtualenvs-create: true
# virtualenvs-in-project: true
# - name: Install package
# run: |
# poetry install
# - name: Setup git user
# run: |
# git config --global user.name "John Doe"
# git config --global user.email [email protected]
# git config --global init.defaultBranch "main"
# - name: Pytest
# run: |
# poetry run pytest --nbmake ./examples
# doctest:
# runs-on: ubuntu-latest
# needs: [ pytest, nbtest ]
# steps:
# - uses: actions/checkout@v2
# - name: Set up Python 3.11
# uses: actions/setup-python@v4
# with:
# python-version: "3.11"
# - name: Install Poetry
# uses: snok/install-poetry@v1
# with:
# virtualenvs-create: true
# virtualenvs-in-project: true
# - name: Install package
# run: |
# sudo apt install pandoc
# poetry install --with=docs
# - name: Build documentation
# run: |
# cd ./docs
# poetry run make html