-
Notifications
You must be signed in to change notification settings - Fork 0
/
.gitlab-ci.yml
105 lines (96 loc) · 1.81 KB
/
.gitlab-ci.yml
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
stages:
- check
- build
- release
black-lint:
image: python:3.9
stage: check
script:
- pip install black
- black --check .
flake8-lint:
image: python:3.9
stage: check
script:
- pip install flake8 flake8-black
- flake8 .
mypy-lint:
image: python:3.9
stage: check
script:
- pip install mypy
- mypy . --install-types --non-interactive --ignore-missing-imports
radon-cc:
image: python:3.9
stage: check
script:
- pip install radon
- radon cc .
- 'radon cc . -j | grep -Eq "\"rank\": \"(C|D|F)\"" && exit 1 || exit 0'
radon-mi:
image: python:3.9
stage: check
script:
- pip install radon
- radon mi .
- 'radon mi . -j | grep -Eq "\"rank\": \"(B|C|D|F)\"" && exit 1 || exit 0'
pytest-py38:
image: python:3.8
stage: check
script:
- pip install poetry
- poetry install
- >
poetry run
py.test
--verbose
--cov-report term-missing
--cov=.
.
artifacts:
paths:
- .coverage
- coverage.xml
expire_in: 1 day
pytest-py39:
image: python:3.9
stage: check
coverage: '/^TOTAL.*\s+\d+\s+\d+\s+(\d+)%/'
script:
- pip install poetry
- poetry install
- >
poetry run
py.test
--verbose
--cov-report term-missing
--cov-report xml
--cov=.
.
artifacts:
reports:
cobertura: coverage.xml
paths:
- .coverage
- coverage.xml
expire_in: 1 day
build-library:
image: python:3.9
stage: build
script:
- pip install poetry
- poetry build
artifacts:
paths:
- dist/
expire_in: 90 days
rules:
- if: $CI_PROJECT_NAMESPACE == "rocket-boosters" && $CI_COMMIT_TAG
publish-library:
image: python:3.9
stage: release
script:
- pip install poetry
- poetry publish -u "${PYPI_USER}" -p "${PYPI_DYNAMO_IO_PAT}"
rules:
- if: $CI_PROJECT_NAMESPACE == "rocket-boosters" && $CI_COMMIT_TAG