78 lines
2.7 KiB
Markdown
78 lines
2.7 KiB
Markdown
|
[![License: GPL v3](https://img.shields.io/badge/License-GPL%20v3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0.txt)
|
||
|
[![pipeline status](https://gitlab.crans.org/ynerant/lglog/badges/master/pipeline.svg)](https://gitlab.crans.org/ynerant/lglog/-/commits/master)
|
||
|
[![coverage report](https://gitlab.crans.org/ynerant/lglog/badges/master/coverage.svg)](https://gitlab.crans.org/ynerant/lglog/-/commits/master)
|
||
|
|
||
|
# Historique de partie de loup-garou
|
||
|
|
||
|
Petit site pour pouvoir consulter l'historique d'une partie de loup-garou
|
||
|
|
||
|
## Création d'un environnement de développement
|
||
|
|
||
|
1. **Installation des dépendances de la distribution.**
|
||
|
Vous devez déjà installer Python et le module qui permet de créer des environnements virtuels.
|
||
|
On donne ci-dessous l'exemple pour une distribution basée sur Debian, mais vous pouvez facilement adapter pour ArchLinux ou autre.
|
||
|
|
||
|
```bash
|
||
|
$ sudo apt update
|
||
|
$ sudo apt install --no-install-recommends -y python3-setuptools python3-venv python3-dev git
|
||
|
```
|
||
|
|
||
|
2. **Clonage du dépot** là où vous voulez :
|
||
|
|
||
|
```bash
|
||
|
$ git clone git@gitlab.crans.org:ynerant/lglog.git && cd lglog
|
||
|
```
|
||
|
|
||
|
3. **Création d'un environment de travail Python décorrélé du système.**
|
||
|
On n'utilise pas `--system-site-packages` ici pour ne pas avoir des clashs de versions de modules avec le système.
|
||
|
|
||
|
```bash
|
||
|
$ python3 -m venv env
|
||
|
$ source env/bin/activate # entrer dans l'environnement
|
||
|
(env)$ pip3 install -r requirements.txt
|
||
|
(env)$ deactivate # sortir de l'environnement
|
||
|
```
|
||
|
|
||
|
4. **Migrations et chargement des données initiales.**
|
||
|
Pour initialiser la base de données avec de quoi travailler.
|
||
|
|
||
|
```bash
|
||
|
(env)$ ./manage.py collectstatic --noinput
|
||
|
(env)$ ./manage.py compilemessages
|
||
|
(env)$ ./manage.py makemigrations
|
||
|
(env)$ ./manage.py migrate
|
||
|
(env)$ ./manage.py loaddata initial
|
||
|
(env)$ ./manage.py createsuperuser # Création d'un utilisateur initial
|
||
|
```
|
||
|
|
||
|
5. Enjoy :
|
||
|
|
||
|
```bash
|
||
|
(env)$ ./manage.py runserver 0.0.0.0:8000
|
||
|
```
|
||
|
|
||
|
## Installation avec Docker
|
||
|
|
||
|
Il est possible de travailler sur une instance Docker.
|
||
|
|
||
|
Pour construire l'image Docker `lglog`,
|
||
|
|
||
|
```
|
||
|
git clone https://gitlab.crans.org/ynerant/lglog/ && cd lglog
|
||
|
docker build . -t lglog
|
||
|
```
|
||
|
|
||
|
Ensuite pour lancer le site en tant que vous (option `-u`),
|
||
|
l'exposer sur son port 80 (option `-p`) et monter le code en écriture (option `-v`),
|
||
|
|
||
|
```
|
||
|
docker run -it --rm -u $(id -u):$(id -g) -v "$(pwd):/code" -p 80:80 lglog
|
||
|
```
|
||
|
|
||
|
Si vous souhaitez lancer une commande spéciale, vous pouvez l'ajouter à la fin, par exemple,
|
||
|
|
||
|
```
|
||
|
docker run -it --rm -u $(id -u):$(id -g) -v "$(pwd):/code/" -p 80:80 lglog python3 ./manage.py createsuperuser
|
||
|
|
||
|
|