-
Notifications
You must be signed in to change notification settings - Fork 11
/
config.yml
135 lines (121 loc) · 3.04 KB
/
config.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
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
version: 2.0
py38default: &py38default
docker:
- image: circleci/python:3.8
steps:
- setup_remote_docker:
docker_layer_caching: false
- checkout
- attach_workspace:
at: /tmp/images
- run: docker load -i /tmp/images/py38.tar || true
- run: docker run py38 tox -e $CIRCLE_JOB
py39default: &py39default
docker:
- image: circleci/python:3.9
steps:
- setup_remote_docker:
docker_layer_caching: false
- checkout
- attach_workspace:
at: /tmp/images
- run: docker load -i /tmp/images/py39.tar || true
- run: docker run py39 tox -e $CIRCLE_JOB
py310default: &py310default
docker:
- image: circleci/python:3.10
steps:
- setup_remote_docker:
docker_layer_caching: false
- checkout
- attach_workspace:
at: /tmp/images
- run: docker load -i /tmp/images/py310.tar || true
- run: docker run py310 tox -e $CIRCLE_JOB
py38_requires: &py38_requires
requires:
- py38_base
py39_requires: &py39_requires
requires:
- py39_base
py310_requires: &py310_requires
requires:
- py310_base
jobs:
py38_base:
docker:
- image: circleci/python:3.8
steps:
- checkout
- setup_remote_docker:
docker_layer_caching: false
- run: docker build -f .circleci/Dockerfile --build-arg PYTHON_VERSION=3.8 -t py38 .
- run: mkdir images
- run: docker save -o images/py38.tar py38
- persist_to_workspace:
root: images
paths: py38.tar
py39_base:
docker:
- image: circleci/python:3.9
steps:
- checkout
- setup_remote_docker:
docker_layer_caching: false
- run: docker build -f .circleci/Dockerfile --build-arg PYTHON_VERSION=3.9 -t py39 .
- run: mkdir images
- run: docker save -o images/py39.tar py39
- persist_to_workspace:
root: images
paths: py39.tar
py310_base:
docker:
- image: circleci/python:3.10
steps:
- checkout
- setup_remote_docker:
docker_layer_caching: false
- run: docker build -f .circleci/Dockerfile --build-arg PYTHON_VERSION=3.10 -t py310 .
- run: mkdir images
- run: docker save -o images/py310.tar py310
- persist_to_workspace:
root: images
paths: py310.tar
flake8:
<<: *py310default
isort:
<<: *py310default
py38-dj32-sqlite-cms40:
<<: *py38default
py39-dj32-sqlite-cms40:
<<: *py39default
py39-dj42-sqlite-cms40:
<<: *py39default
py310-dj42-sqlite-cms40:
<<: *py310default
#######################
workflows:
version: 2
build:
jobs:
- py38_base
- py39_base
- py310_base
- flake8:
requires:
- py310_base
- isort:
requires:
- py310_base
- py38-dj32-sqlite-cms40:
requires:
- py38_base
- py39-dj32-sqlite-cms40:
requires:
- py39_base
- py39-dj42-sqlite-cms40:
requires:
- py39_base
- py310-dj42-sqlite-cms40:
requires:
- py310_base