Ultron/README.md

110 lines
2.6 KiB
Markdown
Raw Permalink Normal View History

2021-12-02 14:23:26 +01:00
# Ultron
[![Build Status](https://drone.grimbox.be/api/badges/Sulley/Ultron/status.svg)](https://drone.grimbox.be/Sulley/Ultron)
## 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`
## 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
- 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 :
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"
heroku config:set DATABASE_NAME="ultron"
2022-02-11 15:03:23 +01: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
## 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 :
```
python manage.py dumpdata --natural-foreign --exclude contenttypes --exclude auth.permission --exclude admin.logentry --exclude sessions.session --indent 4 > save.json
```
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
- connu et enchainé