Convertir des documents html en pdf.
On utilise les outils pyenv et poetry pour gérer les dépendances.
# installation de la version de python definit dans .python-version
pyenv install
pip install poetry
# installation des deps
poetry install
- Configurer vos variables d'environnement dans le fichier .env
cp env.example .env
- lancer l'appli
poetry run flask run --debug
# or any process manager reading Procfile.dev
overmind start
poetry run invoke test
poetry run invoke lint
Note
La version de python sur la machine de packaging et la machine cible doit être la même.
git clone https://github.com/demarches-simplifiees/weasyprint_server.git
cd weasyprint_server
pip install poetry
poetry self add poetry-plugin-export
bash simple_package.sh
l'application avec ces dépendances est dans dist.tar.gz
cp dist.tar.gz good_directory && cd good_directory
tar -xvf dist.tar.gz
python -m venv .venv
. .venv/bin/activate
pip install --no-index --find-links=deps -r requirements.txt
# si on veut vérifier l'installation
flask run
On utilise le webserver uwsgi
Exemple de fichier de config :
[uwsgi]
plugin = python3
virtualenv = /home/weasyprint/weasyprint/.venv
http-socket = server_ip:3000
uid = weasyprint
gid = weasyprint
chdir = /home/weasyprint/weasyprint/
env = ... # see env.example
wsgi-file = wsgi.py
callable = app
processes = 4
stats = server_ip:9191