Repository navigation
66 lines (63 loc) · 2.16 KB
/
Copy pathchecks.yml
File metadata and controls
66 lines (63 loc) · 2.16 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
name: Checks
on:
pull_request:
push:
branches: [master]
permissions:
contents: read
jobs:
test:
runs-on: ubuntu-24.04
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
python: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15"]
include:
- python: "3.10"
minimum: true
env:
IPGEO_RUN_LIVE_TESTS: "false"
IPGEO_RUN_LIVE_HARDENING: "false"
steps:
- uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6
with:
persist-credentials: false
- uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6
with:
python-version: ${{ matrix.python }}
- uses: actions/setup-node@249970729cb0ef3589644e2896645e5dc5ba9c38 # v6
with:
node-version: "24.22.1"
- run: npm install --global postman-cli@1.73.0
- name: Create test environment
run: |
python -m venv .venv
echo "$GITHUB_WORKSPACE/.venv/bin" >> "$GITHUB_PATH"
- run: python -m pip install --upgrade pip
- name: Install dependencies
if: ${{ !matrix.minimum }}
run: python -m pip install -e '.[dev]'
- name: Install minimum dependencies
if: matrix.minimum
run: python -m pip install -c tests/constraints-minimum.txt -e '.[dev]'
- run: python -m pip check
- run: ruff check src tests
- run: mypy src
- run: pyright --pythonpath "$(command -v python)"
- run: pytest --cov=src/ipgeolocation --cov-report=term-missing
- run: python -m build
- uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6
with:
python-version: "3.11"
- name: Create audit environment
run: |
python -m venv .venv-audit
.venv-audit/bin/python -m pip install --upgrade pip
.venv-audit/bin/python -m pip install -e '.[audit]'
- name: Audit scanner dependencies
run: .venv-audit/bin/pip-audit --skip-editable
- name: Audit SDK dependencies
run: >-
.venv-audit/bin/pip-audit --skip-editable
--path ".venv/lib/python${{ matrix.python }}/site-packages"