lglog/README.md

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