Journal de galère.md 5.09 KB
Newer Older
Jorge Garcia Flores's avatar
doc    
Jorge Garcia Flores committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# Journal de galère pour mettre en place une démo de l'outil linguistique Chêne TAL sur le serveur TAL

*Jorge Garcia Flores, août 2021*


## 1. Installation en local avec nginx
```bash
$ sudo service apache2 stop
```
#### Téléchargement du code de Quentin et installation d'après la doc
Le code source est sur le git-lab: https://depot.lipn.univ-paris13.fr/garciaflores/ch-netal

J'ai suivi la documentation des `README.md`pour l'installation et du client et et du serveur 

#### Installation du serveur

```bash
$ git clone git@depot.lipn.univ-paris13.fr:garciaflores/ch-netal.git
$ cd cd ch-netal/server
$ npm install
$ npm start

> chenetal-server@1.0.0 start /home/garciaflores/code/javascript/ch-netal/server
> node server.js

App listening at http://localhost:8081
```

La doc du serveur spécifie qu'il faut faire un `POST` à partir de la ligne de commande pour enregistrer chaque module du répertoire `ch-ntal/server/files`, spécifié sous la forme d'un fichier `.json`

```bash
$ curl -X POST -H "Content-Type: application/json" -d @Morfetik_Complex.json http://localhost:8081/modules
{"status":"success","data":{"newModule":{"_id":"612f3addbfc3ea588c5ed76d","parameters":[],"__v":0}}}
```

Pour le `POST`du fichier `Neoveille.json`j'ai l'erreur suivant

```bash
POST /modules 201 28.055 ms - 1407
Error: ModuleModel validation failed: parameters.0.type: `Le type de paramètre, parmi : [List-Mono, List-Poly, Int, Bool, String]` is not a valid enum value for path `type`.
    at ValidationError.inspect (/home/garciaflores/code/javascript/ch-netal/server/node_modules/mongoose/lib/error/validation.js:47:26)
    at formatValue (internal/util/inspect.js:563:31)
    at inspect (internal/util/inspect.js:221:10)
    at formatWithOptions (internal/util/inspect.js:1693:40)
    at Object.Console.<computed> (internal/console/constructor.js:277:10)
    at Object.warn (internal/console/constructor.js:287:61)
    at exports.errorHandler (/home/garciaflores/code/javascript/ch-netal/server/controllers/lib/responseHelper.js:7:13)
    at exports.module_add (/home/garciaflores/code/javascript/ch-netal/server/controllers/moduleController.js:39:5)
    at processTicksAndRejections (internal/process/task_queues.js:94:5) {
  errors: {
    'parameters.0.type': ValidatorError: `Le type de paramètre, parmi : [List-Mono, List-Poly, Int, Bool, String]` is not a valid enum value for path `type`.
        at validate (/home/garciaflores/code/javascript/ch-netal/server/node_modules/mongoose/lib/schematype.js:1219:13)
        at /home/garciaflores/code/javascript/ch-netal/server/node_modules/mongoose/lib/schematype.js:1202:7
        at Array.forEach (<anonymous>)
        at SchemaString.SchemaType.doValidate (/home/garciaflores/code/javascript/ch-netal/server/node_modules/mongoose/lib/schematype.js:1147:14)
        at /home/garciaflores/code/javascript/ch-netal/server/node_modules/mongoose/lib/document.js:2411:18
        at processTicksAndRejections (internal/process/task_queues.js:76:11) {
      properties: [Object],
      kind: 'enum',
      path: 'type',
      value: 'Le type de paramètre, parmi : [List-Mono, List-Poly, Int, Bool, String]',
      reason: undefined,
      [Symbol(mongoose:validatorError)]: true
    }
  },
  _message: 'ModuleModel validation failed'
}
```



#### installation du client

```bash
$ cd ch-netal/client
$ npm install
$ npm run serve
 DONE  Compiled successfully in 25405ms                                                                                                                                                               10:50:23


  App running at:
  - Local:   http://localhost:8080/ 
  - Network: http://10.10.0.218:8080/

  Note that the development build is not optimized.
  To create a production build, run npm run build.

```
Si on ouvre le navigateur web à l'adresse `http://localhost:8080` on doit voir l'ecran d'accueil ChêneTAL

![image-20210901114105972](Journal de galère.assets/image-20210901114105972.png)

Jorge Garcia Flores's avatar
doc    
Jorge Garcia Flores committed
93
94
95
96
97
98
99
100
101
102
103
104
## 2. Installation de Chêne TAL sur le serveur TAL 


### 2.1 Réinstallation nouvelle à partir de zéro sur tal-chenetal
Plan: 
a: intaller firefox sur `tal-chenetal`
b: tester s'il est exécutable à distance avec `ssh -X`
c: réinstaller de zéro ChêneTAL sur `tal-chenetal`
d: tester `localhost:8080` avec un firefox local au serveur (option `ssh -X`)
e: installer et configurer avec Nginx d'après https://snapshooter.com/blog/how-to-run-nodejs-server-with-nginx

### 2.2 Premier essaie (raté) avec nginx
Jorge Garcia Flores's avatar
doc    
Jorge Garcia Flores committed
105

Jorge Garcia Flores's avatar
doc    
Jorge Garcia Flores committed
106
107


Jorge Garcia Flores's avatar
doc    
Jorge Garcia Flores committed
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
L'intall avec nginx ne marche pas apres 4h consacrées à essayer de le faire marcher sur nginx... Une question se pose... Faut-il continuer à essayer de le faire marcher sur nginx pour la démo, où faut il carrément commencer à l'implémenter sur docker, basée sur l'architecture de Pétale? 

Si après 8h de plus d'effort pour essayer de le faire marcher sur nginx je n'arrive toujours pas, je vais changer de stratégie et commencer a imiter l'architecture de la nouvelle intranet sur docker. 

### 1.1 Implémenter un site statique sur nginx qui réponde sur l'adresse de ChêneTAL

8h

ToDo: écrire à Quentin

### 1.3 Implémenter la démo sans docker mais avec Apache...

8h

### 1.3