Skip to content

Commit

Permalink
use uv dev dependencies, fix test workflow, final clenaup
Browse files Browse the repository at this point in the history
  • Loading branch information
mathiasertl committed Dec 14, 2024
1 parent 7c5c3f1 commit d65c62f
Show file tree
Hide file tree
Showing 9 changed files with 183 additions and 190 deletions.
6 changes: 6 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
**/__pycache__
**/*.egg-info
/pkcs11/*.c
/pkcs11/*.so
/build/
/dist/
23 changes: 16 additions & 7 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
name: Tests
on:
push:
env:
PKCS11_MODULE: /home/runner/lib/softhsm/libsofthsm2.so
jobs:
run:
runs-on: ubuntu-latest
Expand All @@ -15,9 +17,6 @@ jobs:
- "3.13"

steps:
- name: Install APT dependencies
run: sudo apt-get install -y softhsm2

- name: Acquire sources
uses: actions/[email protected]

Expand All @@ -32,11 +31,21 @@ jobs:
python-version: ${{ matrix.python-version }}
architecture: x64

- name: Create venv
run: uv venv --python-preference only-system --python ${{ matrix.python-version }}

- name: Update setuptools
run: uv pip install setuptools

# Locally compile softhsmv2. For unknown reasons, the version installed by Ubuntu fails on
# Github Actions (while working e.g. in Docker).
- name: Install Softhsm
run: |
curl https://dist.opendnssec.org/source/softhsm-2.6.1.tar.gz | tar -zxv
(cd softhsm-2.6.1 && ./configure --prefix=$HOME --disable-p11-kit --disable-gost && make all install CC="gcc" CXX="g++")
- name: Install the project
run: uv sync --all-extras --python-preference only-system --python ${{ matrix.python-version }}

- name: ls
run: ls /usr/lib/softhsm/libsofthsm2.so

- name: Run tests
run: uv run --python ${{ matrix.python-version }} pytest -v tests/test_slots_and_tokens.py::test_get_mechanisms
run: PATH=/home/runner/bin:$PATH uv run --python ${{ matrix.python-version }} pytest -v tests/test_aes.py::test_encrypt
21 changes: 21 additions & 0 deletions Dockerfile.debian
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
ARG IMAGE=debian:stable
FROM $IMAGE

RUN apt-get update && \
DEBIAN_FRONTEND="noninteractive" apt-get install -y gcc python3 python3-dev softhsm2 openssl && \
rm -rf /var/lib/apt/lists/*

COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/

WORKDIR /test

ADD uv.lock pyproject.toml .
ADD pkcs11/ pkcs11/
ADD extern/ extern/

ENV UV_LINK_MODE=copy
RUN --mount=type=cache,target=/root/.cache/uv \
uv sync --all-extras

ADD tests/ tests/
CMD ["uv", "run", "pytest", "-v"]
Loading

0 comments on commit d65c62f

Please sign in to comment.