-
Notifications
You must be signed in to change notification settings - Fork 88
133 lines (124 loc) · 4.26 KB
/
Copy pathci_tests.yaml
File metadata and controls
133 lines (124 loc) · 4.26 KB
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
name: Continuous Integration tests
on:
workflow_call:
env:
AWS_ENCRYPTION_SDK_PYTHON_INTEGRATION_TEST_AWS_KMS_KEY_ID: |
arn:aws:kms:us-west-2:658956600833:key/b3537ef1-d8dc-4780-9f5a-55776cbb2f7f
AWS_ENCRYPTION_SDK_PYTHON_INTEGRATION_TEST_AWS_KMS_KEY_ID_2: |
arn:aws:kms:eu-central-1:658956600833:key/75414c93-5285-4b57-99c9-30c1cf0a22c2
AWS_ENCRYPTION_SDK_PYTHON_INTEGRATION_TEST_AWS_KMS_MRK_KEY_ID_1: |
arn:aws:kms:us-west-2:658956600833:key/mrk-80bd8ecdcd4342aebd84b7dc9da498a7
AWS_ENCRYPTION_SDK_PYTHON_INTEGRATION_TEST_AWS_KMS_MRK_KEY_ID_2: |
arn:aws:kms:us-east-1:658956600833:key/mrk-80bd8ecdcd4342aebd84b7dc9da498a7
permissions:
contents: read
jobs:
tests:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: true
matrix:
os:
- ubuntu-latest
- windows-latest
- macos-latest
python:
- 3.8
- 3.9
- "3.10"
- "3.11"
- "3.12"
- 3.x
architecture:
- x64
- x86
category:
- local
- accept
- mpllocal
# These require credentials.
# Enable them once we sort how to provide them.
# - integ
# - examples
# Append '-mpl' to some test environments.
# This suffix signals to tox to install the MPL in the test environment.
optional_mpl_dependency:
- ""
- -mpl
exclude:
# Python <3.11 incompatible with macOS ARM64 runners
# https://github.com/actions/setup-python/issues/948
- python: 3.7
os: macos-latest
- python: 3.8
os: macos-latest
- python: 3.9
os: macos-latest
- python: 3.10
os: macos-latest
# x86 builds are only meaningful for Windows
- os: ubuntu-latest
architecture: x86
- os: macos-latest
architecture: x86
# `cryptography` no longer publishes 32-bit Windows wheels for
# any CPython version, so pip falls back to building from sdist.
# That build is Rust/maturin-based and fails on the hosted
# windows-latest runner because only the x86_64 Rust target is
# installed while the interpreter reports platform `win32`
# (i686), so maturin refuses to use it. Drop x86 on Windows
# entirely; the only path back would be host-side toolchain
# provisioning (i686 Rust target + 32-bit OpenSSL) per cell,
# which isn't worth it for a configuration upstream no longer
# supports.
- os: windows-latest
architecture: x86
# MPL is not supported on <3.11
- python: 3.7
optional_mpl_dependency: -mpl
- python: 3.8
optional_mpl_dependency: -mpl
- python: 3.9
optional_mpl_dependency: -mpl
- python: 3.10
optional_mpl_dependency: -mpl
# mpllocal requires the MPL to be installed
- category: mpllocal
optional_mpl_dependency: ""
steps:
# Support long Dafny filenames (used in MPL and DBESDK repos)
- name: Support longpaths
run: |
git config --global core.longpaths true
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python }}
architecture: ${{ matrix.architecture }}
- run: |
python -m pip install --upgrade pip
pip install --upgrade -r dev_requirements/ci-requirements.txt
- name: run test
env:
TOXENV: ${{ matrix.category }}${{ matrix.optional_mpl_dependency }}
run: tox -- -vv
upstream-py311:
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
category:
- nocmk
- test-upstream-requirements-py311
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
with:
python-version: "3.11"
- run: |
python -m pip install --upgrade pip
pip install --upgrade -r dev_requirements/ci-requirements.txt
- name: run test
env:
TOXENV: ${{ matrix.category }}${{ matrix.optional_mpl_dependency }}
run: tox -- -vv