perf(docker): slight optimisation and refector

Signed-off-by: Klagarge <remi@heredero.ch>
This commit is contained in:
2025-03-20 15:45:20 +01:00
parent 8604e3e984
commit 188a4725e6
2 changed files with 14 additions and 17 deletions

View File

@@ -9,19 +9,22 @@ stages:
- lint
- test
test job:
stage: test
script:
.setup_env: &setup_env
before_script:
- cd src
- cp -r /app/__pypackages__ .
- export "PYTHONPATH=/builds/Klagarge/mse2425-grp09/src:/builds/Klagarge/mse2425-grp09/src/__pypackages__/3.9/lib"
- export "PATH=/builds/Klagarge/mse2425-grp09/src/__pypackages__/3.9/bin:$PATH"
- export "FLASK_APP=app"
test job:
stage: test
<<: *setup_env
script:
# Set environment variables for the tests
- export FLASK_SECRET_KEY=$FLASK_SECRET_KEY
# launch tests
- export PYTHONPATH="/builds/Klagarge/mse2425-grp09/src:/builds/Klagarge/mse2425-grp09/src/__pypackages__/3.9/lib"
- export PATH="/builds/Klagarge/mse2425-grp09/src/__pypackages__/3.9/bin:$PATH"
- export FLASK_APP=app
- pdm run pytest tests --cov --cov-report term --cov-report html
artifacts:
@@ -30,12 +33,9 @@ test job:
lint job:
stage: lint
<<: *setup_env
dependencies: []
script:
- cd src/
- cp -r /app/__pypackages__ .
- export PYTHONPATH="/builds/Klagarge/mse2425-grp09/src:/builds/Klagarge/mse2425-grp09/src/__pypackages__/3.9/lib"
- export PATH="/builds/Klagarge/mse2425-grp09/src/__pypackages__/3.9/bin:$PATH"
- pdm run flake8 --config=../tox.ini
allow_failure: true # Linter can fail, fixing it is for now outside of the projects scope

View File

@@ -1,11 +1,10 @@
FROM python:3.9-slim
FROM python:3.10-slim
LABEL maintener="Rémi Heredero <remi.heredero@hevs.ch>"
RUN apt-get update && \
apt-get install -y --no-install-recommends curl && \
pip install --no-cache-dir -U pdm && \
rm -rf /var/lib/apt/lists/*
RUN curl -sSL https://pdm-project.org/install-pdm.py | python3 -
ENV PATH="/root/.local/bin:$PATH" \
PDM_USE_VENV=false
@@ -17,7 +16,5 @@ COPY src/pyproject.toml src/pdm.lock ./
RUN pdm config python.use_venv false && \
pdm install -G:all
ENV PATH="/root/.local/bin:$PATH" \
PDM_USE_VENV=false \
PYTHONPATH="/app/__pypackages__/3.9/lib" \
PATH="/app/__pypackages__/3.9/bin:$PATH"
ENV PYTHONPATH="/app/__pypackages__/3.9/lib" \
PATH="/app/__pypackages__/3.9/bin:$PATH"