5050 install:tox :
5151 desc : Install tox
5252 cmds :
53- - " {{._PYTHON}} -m pip install tox {{if .WITH_GITHUB_ACTIONS}}tox-gh-actions{{end}}"
53+ - " {{._PYTHON}} -m pip install tox {{if .WITH_GITHUB_ACTIONS}}tox-gh-actions{{end}}"
5454
5555 install:pip-deps :
5656 desc : Install pip dependencies
@@ -74,17 +74,23 @@ tasks:
7474 venv:clean :
7575 desc : Remove the venv at VENV_PATH(={{.VENV_PATH}})
7676 cmds :
77- - task : _rimraf
78- vars : { _PYTHON: "{{.PYTHON}}", RIMRAF_TARGET: "{{.VENV_PATH}}" }
77+ - task : _rimraf
78+ vars : { _PYTHON: "{{.PYTHON}}", RIMRAF_TARGET: "{{.VENV_PATH}}" }
7979
8080 tox :
8181 desc : Run tox
8282 cmds :
8383 - echo "TOXENV=${TOXENV}"
84- - " {{.TEST_HARNESS}}{{._PYTHON}} -m tox {{.CLI_ARGS}}"
84+ - |
85+ {{if .TOX_PYTEST_ARGS}}TOX_PYTEST_ARGS={{shellQuote .TOX_PYTEST_ARGS}}{{end}} \
86+ {{if .TOX_EXTRA_COMMAND}}TOX_EXTRA_COMMAND={{shellQuote .TOX_EXTRA_COMMAND}}{{end}} \
87+ {{if .COVERAGE_FILE}}COVERAGE_FILE={{shellQuote .COVERAGE_FILE}}{{end}} \
88+ {{.TEST_HARNESS}} \
89+ {{._PYTHON}} \
90+ -m tox \
91+ {{.CLI_ARGS}}
8592 env :
8693 TOXENV : ' {{if .TOX_PYTHON_VERSION}}py{{replace "." "" .TOX_PYTHON_VERSION}}{{if .EXTENSIVE}}-extensive{{end}}{{end}}'
87-
8894 test :
8995 desc : Run tests
9096 cmds :
@@ -145,21 +151,21 @@ tasks:
145151 clean:mypy :
146152 desc : Clean mypy cache
147153 cmds :
148- - task : _rimraf
149- vars : { RIMRAF_TARGET: ".mypy_cache" }
150- - task : clean:tox:mypy
154+ - task : _rimraf
155+ vars : { RIMRAF_TARGET: ".mypy_cache" }
156+ - task : clean:tox:mypy
151157
152158 clean:tox :
153159 desc : Clean tox environments
154160 cmds :
155- - task : _rimraf
156- vars : { RIMRAF_TARGET: ".tox" }
161+ - task : _rimraf
162+ vars : { RIMRAF_TARGET: ".tox" }
157163
158164 clean:tox:mypy :
159165 desc : Clean mypy cache inside tox environments
160166 cmds :
161- - task : _rimraf
162- vars : { RIMRAF_TARGET: ".tox/*/.mypy_cache/" }
167+ - task : _rimraf
168+ vars : { RIMRAF_TARGET: ".tox/*/.mypy_cache/" }
163169
164170 clean :
165171 desc : Clean everything
@@ -189,6 +195,23 @@ tasks:
189195 cmds :
190196 - pre-commit run --all-files {{.CLI_ARGS}}
191197
198+ gha:validate :
199+ desc : GitHub Actions Validation Workflow
200+ env :
201+ COVERALLS_PARALLEL : true
202+ COVERALLS_FLAG_NAME : " {{.OS}}-{{.TOX_PYTHON_VERSION}}"
203+ COVERALLS_SERVICE_NAME : ' {{.COVERALLS_SERVICE_NAME | default (env "COVERALLS_SERVICE_NAME") | default "github"}}'
204+ cmds :
205+ - task : install:system-deps
206+ - task : install:tox
207+ vars :
208+ WITH_GITHUB_ACTIONS : 1
209+ - cmd : " {{._PYTHON}} -m pip install coveralls"
210+ - task : tox
211+ vars :
212+ COVERAGE_FILE : " .coverage"
213+ - cmd : coveralls
214+
192215 _rimraf :
193216 # This task is a utility task for recursively removing directories, it is
194217 # similar to rm -rf but not identical and it should work wherever there is
0 commit comments