Skip to content

Commit 05105ae

Browse files
committed
docs: add overview of what we are actually testing
1 parent b66decb commit 05105ae

File tree

2 files changed

+136
-17
lines changed

2 files changed

+136
-17
lines changed

docs/html/development/ci.rst

+135-17
Original file line numberDiff line numberDiff line change
@@ -2,23 +2,10 @@
22
Continuous Integration
33
======================
44

5-
Checks
6-
======
7-
8-
`pip` CI runs different kind of tests:
9-
10-
- lint (defined in `.pre-commit-config.yaml`)
11-
- docs
12-
- vendoring (is the `src/_internal/_vendor` directory cleanly vendored)
13-
- unit tests (present in `tests/unit`)
14-
- "integration" tests
15-
- package (test the packaging steps)
16-
17-
18-
Tested interpreters
19-
===================
5+
Supported interpreters
6+
======================
207

21-
pip is tested on a variety of Python interpreters:
8+
pip support a variety of Python interpreters:
229

2310
- CPython 2.7
2411
- CPython 3.5
@@ -39,6 +26,29 @@ and on different architectures:
3926
- x64
4027
- x86
4128

29+
so 42 hypothetical interpreters.
30+
31+
32+
Checks
33+
======
34+
35+
`pip` CI runs different kind of tests:
36+
37+
- lint (defined in `.pre-commit-config.yaml`)
38+
- docs
39+
- vendoring (is the `src/_internal/_vendor` directory cleanly vendored)
40+
- unit tests (present in `tests/unit`)
41+
- "integration" tests (mostly present in `tests/functional`)
42+
- package (test the packaging steps)
43+
44+
Since lint, docs, vendoring and package tests only need to run on a pip
45+
developer/contributor machine, they only need to be tested on the x64 variant
46+
of the 3 different operating systems, and when an interpreter needs to be
47+
specified it's ok to require the latest CPython interpreter.
48+
49+
So only unit tests and integration tests would need to be run with the different
50+
interpreters.
51+
4252
Services
4353
========
4454

@@ -47,8 +57,116 @@ provides free executors for open source packages:
4757

4858
- `Travis CI`_ (Used for Linux)
4959
- `Appveyor CI`_ (Windows only)
50-
- 'Azure DevOps`_ (Linux, MacOS & Windows tests)
60+
- `Azure DevOps CI`_ (Linux, MacOS & Windows tests)
61+
- `GitHub Actions`_ (Linux, MacOS & Windows tests)
5162

5263
.. _`Travis CI`: https://travis-ci.org/
5364
.. _`Appveyor CI`: https://www.appveyor.com/
5465
.. _`Azure DevOps CI`: https://dev.azure.com/
66+
.. _`GitHub Actions`: https://github.com/features/actions
67+
68+
69+
Current run tests
70+
=================
71+
72+
Developer tasks
73+
---------------
74+
75+
======== =============== ================ =========== ============
76+
OS docs lint vendoring packages
77+
======== =============== ================ =========== ============
78+
Linux Travis, Github Travis, Github Travis Azure
79+
Windows Azure
80+
MacOS Azure
81+
======== =============== ================ =========== ============
82+
83+
Actual testing
84+
--------------
85+
86+
+------------------------------+---------------+-----------------+
87+
| **interpreter** | **unit** | **integration** |
88+
+-----------+----------+-------+---------------+-----------------+
89+
| | | CP2.7 | Azure | Azure |
90+
| | +-------+---------------+-----------------+
91+
| | | CP3.5 | Azure | |
92+
| | +-------+---------------+-----------------+
93+
| | | CP3.6 | Azure | |
94+
| | +-------+---------------+-----------------+
95+
| | x86 | CP3.7 | Azure | |
96+
| | +-------+---------------+-----------------+
97+
| | | CP3.8 | | |
98+
| | +-------+---------------+-----------------+
99+
| | | PyPy | | |
100+
| | +-------+---------------+-----------------+
101+
| | | PyPy3 | | |
102+
| Windows +----------+-------+---------------+-----------------+
103+
| | | CP2.7 | Appveyor | Appveyor |
104+
| | +-------+---------------+-----------------+
105+
| | | CP3.5 | Appveyor | Appveyor |
106+
| | +-------+---------------+-----------------+
107+
| | | CP3.6 | Appveyor | Appveyor |
108+
| | +-------+---------------+-----------------+
109+
| | x64 | CP3.7 | Azure | Azure |
110+
| | +-------+---------------+-----------------+
111+
| | | CP3.8 | | |
112+
| | +-------+---------------+-----------------+
113+
| | | PyPy | | |
114+
| | +-------+---------------+-----------------+
115+
| | | PyPy3 | | |
116+
+-----------+----------+-------+---------------+-----------------+
117+
| | | CP2.7 | | |
118+
| | +-------+---------------+-----------------+
119+
| | | CP3.5 | | |
120+
| | +-------+---------------+-----------------+
121+
| | | CP3.6 | | |
122+
| | +-------+---------------+-----------------+
123+
| | x86 | CP3.7 | | |
124+
| | +-------+---------------+-----------------+
125+
| | | CP3.8 | | |
126+
| | +-------+---------------+-----------------+
127+
| | | PyPy | | |
128+
| | +-------+---------------+-----------------+
129+
| | | PyPy3 | | |
130+
| Linux +----------+-------+---------------+-----------------+
131+
| | | CP2.7 | Travis,Azure | Travis,Azure |
132+
| | +-------+---------------+-----------------+
133+
| | | CP3.5 | Travis,Azure | Travis,Azure |
134+
| | +-------+---------------+-----------------+
135+
| | | CP3.6 | Travis,Azure | Travis,Azure |
136+
| | +-------+---------------+-----------------+
137+
| | x64 | CP3.7 | Travis,Azure | Travis,Azure |
138+
| | +-------+---------------+-----------------+
139+
| | | CP3.8 | Travis | Travis |
140+
| | +-------+---------------+-----------------+
141+
| | | PyPy | Travis | Travis |
142+
| | +-------+---------------+-----------------+
143+
| | | PyPy3 | Travis | Travis |
144+
+-----------+----------+-------+---------------+-----------------+
145+
| | | CP2.7 | | |
146+
| | +-------+---------------+-----------------+
147+
| | | CP3.5 | | |
148+
| | +-------+---------------+-----------------+
149+
| | | CP3.6 | | |
150+
| | +-------+---------------+-----------------+
151+
| | x86 | CP3.7 | | |
152+
| | +-------+---------------+-----------------+
153+
| | | CP3.8 | | |
154+
| | +-------+---------------+-----------------+
155+
| | | PyPy | | |
156+
| | +-------+---------------+-----------------+
157+
| | | PyPy3 | | |
158+
| MacOS +----------+-------+---------------+-----------------+
159+
| | | CP2.7 | Azure | Azure |
160+
| | +-------+---------------+-----------------+
161+
| | | CP3.5 | Azure | Azure |
162+
| | +-------+---------------+-----------------+
163+
| | | CP3.6 | Azure | Azure |
164+
| | +-------+---------------+-----------------+
165+
| | x64 | CP3.7 | Azure | Azure |
166+
| | +-------+---------------+-----------------+
167+
| | | CP3.8 | | |
168+
| | +-------+---------------+-----------------+
169+
| | | PyPy | | |
170+
| | +-------+---------------+-----------------+
171+
| | | PyPy3 | | |
172+
+-----------+----------+-------+---------------+-----------------+

docs/html/development/index.rst

+1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ or the `pypa-dev mailing list`_, to ask questions or get involved.
1414

1515
getting-started
1616
contributing
17+
ci
1718
issue-triage
1819
architecture/index
1920
release-process

0 commit comments

Comments
 (0)