2021-12-02 14:23:26 +01:00
|
|
|
# Ultron
|
|
|
|
|
2021-12-09 21:16:30 +01:00
|
|
|
[![Build Status](https://drone.grimbox.be/api/badges/Sulley/Ultron/status.svg)](https://drone.grimbox.be/Sulley/Ultron)
|
|
|
|
|
2022-10-17 14:38:10 +02:00
|
|
|
## Déploiement en local (Docker)
|
|
|
|
|
|
|
|
- installer Docker (+ driver PGSQL)
|
|
|
|
- créer un fichier `docker-compose.yml`
|
|
|
|
```
|
|
|
|
version: "3"
|
|
|
|
services:
|
|
|
|
db:
|
|
|
|
image: "postgres:14"
|
|
|
|
restart: always
|
|
|
|
container_name: "ultron_db"
|
|
|
|
environment:
|
|
|
|
POSTGRES_DB: "ultron"
|
|
|
|
POSTGRES_USER: "ironman"
|
|
|
|
POSTGRES_PASSWORD: "jarvis"
|
|
|
|
ports:
|
|
|
|
- "5432:5432"
|
|
|
|
volumes:
|
|
|
|
- ./data:/var/lib/postgresql/data
|
|
|
|
```
|
|
|
|
- tapez la commande `docker compose up`
|
|
|
|
|
2022-09-04 12:59:31 +02:00
|
|
|
## Déploiement sur Heroku
|
2021-12-02 14:23:26 +01:00
|
|
|
|
|
|
|
- Créer l'application sur Heroku
|
2022-02-11 15:03:23 +01:00
|
|
|
|
2021-12-02 14:23:26 +01:00
|
|
|
- Créer les variables d'environnement :
|
|
|
|
- ALLOWED_HOSTS : avengers-ultron.herokuapp.com
|
|
|
|
- DATABASE_NAME : ultron
|
|
|
|
- DISABLE_COLLECTSTATIC : 1
|
|
|
|
- SECRET_KEY : django-insecure-g_eoy6z%xshku4o5#k%o%i_%nb%_pz80config_#+t%f
|
2022-09-04 12:59:31 +02:00
|
|
|
- DATABASE_URL : créé automatiquement lorsqu'on ajoute l' `element` PostgreSQL
|
2021-12-02 14:23:26 +01:00
|
|
|
|
2022-02-11 15:03:23 +01:00
|
|
|
Exemple :
|
2022-09-04 12:59:31 +02:00
|
|
|
|
2021-12-02 14:23:26 +01:00
|
|
|
```
|
|
|
|
heroku config:set DISABLE_COLLECTSTATIC="1"
|
|
|
|
heroku config:set ALLOWED_HOSTS="avengers-ultron.herokuapp.com"
|
|
|
|
heroku config:set SECRET_KEY="django-insecure-g_eoy6z%xshku4o5#k%o%i_%nb%_pz80config_#+t%f"
|
2022-09-04 12:59:31 +02:00
|
|
|
heroku config:set DATABASE_NAME="ultron"
|
2022-02-11 15:03:23 +01:00
|
|
|
```
|
2022-09-04 12:59:31 +02:00
|
|
|
|
|
|
|
- Push de l'application : `git push heroku master`
|
|
|
|
|
|
|
|
- Se connecter à Héroku (via l'invite de commande) : `heroku login`
|
2022-02-11 15:03:23 +01:00
|
|
|
|
2021-12-02 14:23:26 +01:00
|
|
|
- Création du super user : `heroku run python manage.py createsuperuser`
|
2021-12-09 17:41:29 +01:00
|
|
|
|
2022-10-10 10:03:15 +02:00
|
|
|
|
|
|
|
## Récupération des données :
|
|
|
|
Pour transferer des données d'un site à un autre, le plus simple est d'utiliser la commande
|
|
|
|
`./manage.py dumpdata > db.json`.
|
|
|
|
|
|
|
|
Pour ne pas récupérer les user, les authorisation et les content-type, utilisez la commande :
|
|
|
|
|
|
|
|
```
|
2022-10-17 14:38:10 +02:00
|
|
|
python manage.py dumpdata --natural-foreign --exclude contenttypes --exclude auth.permission --exclude admin.logentry --exclude sessions.session --indent 4 > save.json
|
2022-10-10 10:03:15 +02:00
|
|
|
```
|
|
|
|
|
|
|
|
Pour charger les données, tapez ensuite :
|
|
|
|
```
|
|
|
|
python manage.py loaddata save.json
|
|
|
|
```
|
2021-12-09 17:41:29 +01:00
|
|
|
## Applications
|
|
|
|
|
2022-02-06 15:44:55 +01:00
|
|
|
### Right
|
|
|
|
|
|
|
|
Il y a 3 types pe de droits :
|
|
|
|
|
|
|
|
- Administrateur
|
|
|
|
- Entraineur (groupe `Trainer`)
|
|
|
|
- Gymnaste (groupe `Gymnast`)
|
|
|
|
|
|
|
|
##### Administrateur
|
|
|
|
|
|
|
|
Il peut tout faire.
|
|
|
|
|
|
|
|
##### Entraîneur
|
|
|
|
|
|
|
|
Peut tout faire sauf :
|
|
|
|
|
|
|
|
- Gérer les skill
|
|
|
|
- Gérer les Pays
|
|
|
|
- Gérer les lieux
|
|
|
|
|
2022-02-07 12:09:29 +01:00
|
|
|
##### Gymnaste
|
|
|
|
|
|
|
|
Un gymnaste peut tout faire pour *lui-même* :
|
|
|
|
|
|
|
|
- Ajouter un chrono
|
|
|
|
- Ajouter un score
|
|
|
|
- Ajouter un height/weight
|
|
|
|
- …
|
|
|
|
|
|
|
|
|
|
|
|
|
2021-12-09 17:41:29 +01:00
|
|
|
### Skill
|
|
|
|
|
|
|
|
### Learned Skill
|
|
|
|
Il y a quatre niveau de connaissance d'un skill :
|
|
|
|
|
|
|
|
- non connu
|
|
|
|
- connu avec aide (tapis, élastiques, fosse, …)
|
|
|
|
- connu sans aucune aide
|
2021-12-09 21:16:30 +01:00
|
|
|
- connu et enchainé
|