Skip to content

Consolidate our CI runs with a 1-Service-1-OS policy #7765

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 22 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
addfc03
Travis: Merge all developer tooling jobs into 1
pradyunsg Feb 21, 2020
c06b144
docs: Reword part of pip's CI docs
pradyunsg Feb 21, 2020
1c59a8b
docs: Add TODOs to our CI documentation
pradyunsg Feb 21, 2020
ab810ae
Azure: Add PyPy interpreters
pradyunsg Feb 21, 2020
a13e447
Azure: Add developer tooling check
pradyunsg Feb 21, 2020
54a30dd
Azure: Drop Linux and MacOS checks
pradyunsg Feb 21, 2020
ea82b33
Azure: Demote Python 2.7-x86 to only unit tests
pradyunsg Feb 21, 2020
2e1e3a4
Azure: Don't run tests unless linters pass
pradyunsg Feb 21, 2020
8317c3f
GitHub Actions: Simpler bot name
pradyunsg Feb 21, 2020
bdc4e2d
GitHub Actions: :fire: Drop a no-op comment
pradyunsg Feb 21, 2020
c36037c
GitHub Actions: Iterate on naming of check
pradyunsg Feb 21, 2020
92e44f4
GitHub Actions: Hardcode Python version
pradyunsg Feb 21, 2020
88b2ea2
GitHub Actions: Set up git configuration earlier
pradyunsg Feb 21, 2020
76774cc
GitHub Actions: :fire: debugging info for Python
pradyunsg Feb 21, 2020
3cea977
GitHub Actions: :art: Setup CI caching steps
pradyunsg Feb 21, 2020
9a5854f
GitHub Actions: :art: Tooling installation
pradyunsg Feb 21, 2020
2ef3d43
GitHub Actions: :fire: Drop setup-envs-early steps
pradyunsg Feb 21, 2020
70ccb42
GitHub Actions: :art: Run checks with tox
pradyunsg Feb 21, 2020
0c8cbca
GitHub Actions: Change to MacOS-only
pradyunsg Feb 21, 2020
2dadcc9
docs: Update GitHub Actions CI usage
pradyunsg Feb 21, 2020
58de519
GitHub Actions: Remove reference to matrix
pradyunsg Feb 21, 2020
f5f6c47
GitHub Actions: Drop the tox parallelization
pradyunsg Feb 21, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions .azure-pipelines/jobs/dev-tools.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
parameters:
vmImage:

jobs:
- job: Developer_Tooling
steps:
- task: UsePythonVersion@0
displayName: Use Python 3 latest
inputs:
versionSpec: '3'

- bash: pip install tox
displayName: Install dependencies

- bash: tox -e lint,docs,vendoring
displayName: Run the development tools
15 changes: 12 additions & 3 deletions .azure-pipelines/jobs/test-windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,13 @@ parameters:

jobs:
- job: Test_Primary
dependsOn: Developer_Tooling
displayName: Test Primary

pool:
vmImage: ${{ parameters.vmImage }}
strategy:
matrix:
Python27-x86:
python.version: '2.7'
python.architecture: x86
Python27-x64:
python.version: '2.7'
python.architecture: x64
Expand All @@ -29,6 +27,14 @@ jobs:
Python38-x64:
python.version: '3.8'
python.architecture: x64
PyPy2:
python.version: '2.7'
python.architecture: x64
python.flavor: pypy
PyPy3:
python.version: '3.5'
python.architecture: x64
python.flavor: pypy
maxParallel: 6

steps:
Expand All @@ -48,6 +54,9 @@ jobs:
strategy:
matrix:
# This is for Windows, so test x86 builds
Python27-x86:
python.version: '2.7'
python.architecture: x86
Python35-x86:
python.version: '3.5'
python.architecture: x86
Expand Down
41 changes: 0 additions & 41 deletions .azure-pipelines/jobs/test.yml

This file was deleted.

8 changes: 0 additions & 8 deletions .azure-pipelines/linux.yml

This file was deleted.

8 changes: 0 additions & 8 deletions .azure-pipelines/macos.yml

This file was deleted.

25 changes: 0 additions & 25 deletions .azure-pipelines/steps/run-tests.yml

This file was deleted.

5 changes: 5 additions & 0 deletions .azure-pipelines/windows.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
jobs:

- template: jobs/dev-tools.yml
parameters:
vmImage: vs2017-win2016

- template: jobs/test-windows.yml
parameters:
vmImage: vs2017-win2016
Expand Down
62 changes: 62 additions & 0 deletions .github/workflows/macos.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: MacOS

on:
push:
pull_request:
schedule:
# Run every Friday at 18:02 UTC
# https://crontab.guru/#2_18_*_*_5
- cron: 2 18 * * 5

jobs:
dev-tools:
name: Developer Tooling
runs-on: macos-latest

env:
TOXENV: lint,docs,vendoring

steps:

# Setup Python and git.
- uses: actions/checkout@master

- name: Set up Python 3.8
uses: actions/setup-python@v1
with:
python-version: 3.8
- name: Pre-configure global Git settings
run: |
git config --global user.email "[email protected]"
git config --global user.name "pip"

# Set up caching
- name: set PY
run: echo "::set-env name=PY::$(python -VV | sha256sum | cut -d' ' -f1)"

- name: Storing pip's cache
uses: actions/cache@v1
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('tools/requirements/tests.txt') }}-${{ hashFiles('tools/requirements/docs.txt') }}-${{ hashFiles('tox.ini') }}
restore-keys: |
${{ runner.os }}-pip-
${{ runner.os }}-

- name: Storing pre-commit's cache
uses: actions/cache@v1
with:
path: ~/.cache/pre-commit
key: pre-commit|2020-02-14|${{ env.PY }}|${{ hashFiles('.pre-commit-config.yaml') }}

# Update tooling
- name: Update setuptools
run: python -m pip install --upgrade setuptools
- name: Install tox
run: python -m pip install --upgrade tox
- name: Log the list of packages
run: python -m pip freeze --all

# Run checks with tox
- name: Run tox
run: python -m tox
97 changes: 0 additions & 97 deletions .github/workflows/python-linters.yml

This file was deleted.

6 changes: 2 additions & 4 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,9 @@ stages:

jobs:
include:
# Basic Checks
# Developer Tooling
- stage: primary
env: TOXENV=docs
- env: TOXENV=lint
- env: TOXENV=vendoring
env: TOXENV=lint,docs,vendoring
# Latest CPython
- env: GROUP=1
python: 2.7
Expand Down
Loading