Skip to content

[StepSecurity] Apply security best practices #21

[StepSecurity] Apply security best practices

[StepSecurity] Apply security best practices #21

Workflow file for this run

name: Aiohttp
# If you don't understand the reason for a test failure, ping @Dreamsorcerer or open an issue in aio-libs/aiohttp.
on:
push:
branches:
- 'main'
pull_request:
branches:
- 'main'
permissions:
contents: read
jobs:
test:
permissions:
contents: read # to fetch code (actions/checkout)
name: Aiohttp regression tests
runs-on: ubuntu-latest
steps:
- name: Checkout aiohttp
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
with:
repository: aio-libs/aiohttp
- name: Checkout llhttp
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
with:
path: vendor/llhttp
- name: Restore node_modules cache
uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3.3.2
with:
path: vendor/llhttp/.npm
key: ubuntu-latest-node-${{ hashFiles('vendor/llhttp/**/package-lock.json') }}
restore-keys: ubuntu-latest-node-
- name: Install llhttp dependencies
run: npm install --ignore-scripts
working-directory: vendor/llhttp
- name: Build llhttp
run: make
working-directory: vendor/llhttp
- name: Setup Python
uses: actions/setup-python@65d7f2d534ac1bc67fcd62888c5f4f3d2cb2b236 # v4.7.1
with:
python-version: 3.x
cache: 'pip'
cache-dependency-path: 'requirements/*.txt'
- name: Provision the dev env
run: >-
PATH="${HOME}/.local/bin:${PATH}"
make .develop
- name: Run tests
env:
COLOR: yes
run: >-
PATH="${HOME}/.local/bin:${PATH}"
pytest tests/test_http_parser.py tests/test_web_functional.py
- name: Run dev_mode tests
env:
COLOR: yes
run: >-
PATH="${HOME}/.local/bin:${PATH}"
python -X dev -m pytest -m dev_mode tests/test_http_parser.py tests/test_web_functional.py