README.md 4.27 KB
Newer Older
Eric Pommateau's avatar
Eric Pommateau committed
1
[![Minimum PHP Version](http://img.shields.io/badge/php-%207.2-8892BF.svg)](https://php.net/)
Maxime REYROLLE's avatar
Maxime REYROLLE committed
2
[![License: AGPL v3](https://img.shields.io/badge/License-AGPL%20v3-blue.svg)](https://www.gnu.org/licenses/agpl-3.0)
Eric Pommateau's avatar
Eric Pommateau committed
3
[![pipeline status](https://gitlab.libriciel.fr/pastell/pastell/badges/master/pipeline.svg)](https://gitlab.libriciel.fr/pastell/pastell/commits/master)
Eric Pommateau's avatar
Eric Pommateau committed
4
[![coverage report](https://gitlab.libriciel.fr/pastell/pastell/badges/master/coverage.svg)](https://gitlab.libriciel.fr/pastell/pastell/commits/master)
Eric Pommateau's avatar
Eric Pommateau committed
5
6
7
[![Lignes de code](https://sonarqube.libriciel.fr/api/project_badges/measure?project=pastell&metric=ncloc)](https://sonarqube.libriciel.fr/dashboard?id=pastell)
[![Alerte](https://sonarqube.libriciel.fr/api/project_badges/measure?project=pastell&metric=alert_status)](https://sonarqube.libriciel.fr/dashboard?id=pastell)
[![Dette Technique](https://sonarqube.libriciel.fr/api/project_badges/measure?project=pastell&metric=sqale_index)](https://sonarqube.libriciel.fr/dashboard?id=pastell)
Eric Pommateau's avatar
Eric Pommateau committed
8

9
# Pastell
Eric Pommateau's avatar
Eric Pommateau committed
10

Eric Pommateau's avatar
Eric Pommateau committed
11
Pastell est une solution libre et sécurisée, développée pour permettre le traitement sécurisé, automatisé et tracé de l'ensemble des process dématérialisés.
Eric Pommateau's avatar
Eric Pommateau committed
12

13
14
## Configuration du Docker

Eric Pommateau's avatar
Eric Pommateau committed
15
Le docker est basé sur [ubuuntu:18.04](https://hub.docker.com/_/ubuntu/).
16

Eric Pommateau's avatar
Eric Pommateau committed
17
18
19
20
21
22
Lors du démarrage, le Docker :
- crée ou met à jour la base de données ;
- crée un utilisateur admin si celui-ci n'existe pas ; 
- lance le démon Pastell.
 
### Variables d'environnement
23
24
25
26
27
28
29
30
31

| Variable d'environnement | Signification | Valeur par défaut |
|----| ---- | ---- |
| PASTELL_SITE_BASE | URL de base d'accès au site | http://localhost/ |
| MYSQL_USER | Login de l'utilisateur ayant accès à la base Pastell | user |
| MYSQL_PASSWORD | Mot de passe de cet utilisateur | user |
| MYSQL_HOST | Hôte de la base de données | localhost
| MYSQL_PORT | Port de connexion | 3306 |
| MYSQL_DATABASE | Nom de la base de données | pastell |
Eric Pommateau's avatar
Eric Pommateau committed
32
33
| REDIS_SERVER | Hote du serveur Redis | (vide) |
| REDIS_PORT | Port du serveur Redis | 6379 |
Eric Pommateau's avatar
Eric Pommateau committed
34
35
36
37
| PASTELL_ADMIN_LOGIN | Login de l'administrateur | admin |
| PASTELL_ADMIN_PASSWORD | Mot de passe de l'administrateur | admin |
| PASTELL_ADMIN_EMAIL | Email de l'administrateur | noreply@libriciel.coop |
| AUTHENTICATION_WITH_CLIENT_CERTIFICATE | Permettre la connexion par certificat (chaîne vide pour non, chaîne non-vide pour oui) | chaîne vide |
38

Eric Pommateau's avatar
Eric Pommateau committed
39
40
41
42
43
44

Volume : 

- /data/workspace : Répertoire de travail de Pastell
- /data/extensions: Répertoire des extensions Pastell
- /var/lib/php/session/ : Répertoire des sessions PHP (celles-ci ne sont pas nettoyer automatiquement)
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65


## Utilisation via docker-compose

Mettre dans un fichier .env les variables du Docker et les variables suivantes :

| Variable d'environnement | Signification | Valeur par défaut |
|----| ---- | ---- |
| MYSQL_ROOT_PASSWORD | Mot de passe root de la base de données |
| WORKSPACE_VOLUME | Emplacement pour le répertoire de travail Pastell (workspace) |
| MYSQL_DATADIR | Emplacement de la bases MySQL |
| PASTELL_EXTENSION_PATH | Emplacement des extensions Pastell|

Démarrage : 
```
docker-compose -f docker-compose.yml up -d
```


Accès : http://localhost/ TODO : l'accès doit être relatif au PASTELL_SITE_BASE ...

Patrick FICHEUX's avatar
Patrick FICHEUX committed
66
## Utilisation de l'environnement de développement et de test via docker-compose
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84


Ajouter les variables suivantes : 

| Variable d'environnement | Signification | Valeur par défaut |
| ----| ---- | ---- |
| MYSQL_HOST_TEST | Mot de passe root de la base de données (de test) | localhost |
| MYSQL_DATABASE_TEST | Nom de la base de test | pastell_test |
| MYSQL_USER_TEST | Login de l'utilisateur ayant accès à la base Pastell de test | user |
| MYSQL_PASSWORD_TEST | Mot de passe de cet utilisateur | user |


Démarrage : 
```
docker-compose up -d
```

- Accès au site : http://localhost:8000
Eric Pommateau's avatar
Eric Pommateau committed
85
86
87
88
89
- Accès à phpMyAdmin : http://localhost:8001 
- Accès au site de test (pour codeception): http://localhost:8003
- Accès à la base de données : mysql -u user -p pastell -h localhost -P8306

## Utilisation via PHPStorm
Eric Pommateau's avatar
Eric Pommateau committed
90

Eric Pommateau's avatar
Eric Pommateau committed
91
92
PHPStorm n'utilise pas docker-compose et écrase l'entrypoint lors du lancement de PHPUnit, 
il convient donc de spécifier les variables d'environnements directement dans la confiuguration du lanceur PHPUnit.
93

Eric Pommateau's avatar
Eric Pommateau committed
94
95
96
97

## Utilisation via gitlab-ci

Gitlab-ci utilise l'entrypoint mais surcharge la commande.