Outils pour utilisateurs

Outils du site


Panneau latéral

documentation:deploiement

#Déploiement (V0)

Environnement de dev

##Prérequis :

* Extension solr php v2.1.0 & Solr 7.6+ (Apache) * PHP 7+ * Apache (v2.4) * Java

## Lancer SOLR :

  • Aller dans le dossier d'installation et lancer la commande ```bash bin/solr start```
  • Si un problème de path JAVA\_HOME intervient au moment de lancer la commande, créer une variable d'environnement windows JAVA\_HOME avec le chemin du dossier jdk/jre de la version Java installée sur votre machine
  • Aller dans le dossier d'installation de SOLR → dossier solr(version)/server/solr et créer un dossier “zord”
  • Aller sur localhost:8983
  • menu → core admin
  • add core
  • name: zord
  • instanceDir: path/to/solr/solr(version)/server/solr/zord/
  • laisser les autres champs par défaut et cliquer sur “add core”

## Créer un VirtualHost sur WAMP ou autre

* dans le fichier httpd.conf, inserer le block suivant :

 NameVirtualHost zord_dev.test
 <VirtualHost zord_dev.test>
   DocumentRoot "Path\To\Zord_dev\appli"
   ServerName zord_dev.test
   Alias /admin "Path\To\Zord_dev\admin"
   Alias /openurl "Path\To\Zord_dev\openurl"
  <Directory "Path\To\Zord_dev\appli">
   DirectoryIndex index.php
   Options -Indexes
   AllowOverride All
   Allow from All
   RewriteEngine on
  </Directory>    
 </VirtualHost>

* Ajouter également le virtualhost dans le fichier c:/system32/drivers/etc/hosts

## Créer un utilisateur dans la BDD → table admin

  • Pour créer votre mot de passe:
  1. récuperer la valeur de la variable SALT dans config_appli.php,
  2. concatenez la avec votre mot de passe (ex: hZP$xzbOOwVLmjuoMonMotDePasse)
  3. convertir cette chaîne en SHA256 pour enfin insérer la valeur dans la BDD

## Fichiers de config

  1. ```config_db.php``` → configurer ```connection_string```, ```user```, ```password```.
  2. ```config_admin.php``` → ```php define(“PROJECT_FOLDER”, “/admin/”);```
  3. ```config_solr.php``` → ```php define('SOLR_SERVER_PATH', '/solr/zord');```
  • Vous pouvez normalement accèder à l'application avec les URLs :
  • zord\_dev.test/appli
  • zord\_dev.test/admin

## Ajout de revue et indexation

  • Rajouter dans Path\To\wamp64\bin\php\php(version)\php.ini la ligne “extension=php_solr.dll” dans le block “Dynamic Extensions”
  • dans le menu admin, onglet importation TEI, uploader un xml
  • pour procéder à l'indexation, ouvrir une invite de commande dans le dossier “services” de l'appli ZORD, et lancer la commande ```bash php -f services.php indexation```

# Déploiement (V1)

##Prérequis :

* composer * Extension solr php v2.1.0 & Solr 5.2.1 (Apache) * PHP 5.6 * Apache (v2.4) * Java * Jing

##Packagist Satis ZORD

###Mise en place du repo privé :

- dans satis.json, paramétrer la propriété homepage - pour lancer le serveur satis (remplacez {urlduserveursatis} par la propriété homepage précedemment définie) :

 ```php -S {urlduserveursatis} -t zord-satis/```

- en allant sur le serveur, vous devriez voir une page comme celle-ci:

![Satis ZORD](https://i.gyazo.com/f2329770886332b61db322f547577eb1.png)

###Récupération du repo zord:

- Dans un dossier qui servira de répertoire à votre projet droz, ouvrez une invite de commande et tapez :

```composer create-project droz/zord_v1:dev-develop --repository-url={urlduserveursatis}```

- Suite à ça, le projet droz sera téléchargé dans ce dossier.

## VirtualHost

 NameVirtualHost zord_v1.test
 <VirtualHost zord_v1.test>
   DocumentRoot "Path\To\Zord_v1\webapp"
   ServerName calvin_zord_v1.test
   Alias /skins path/to/library/portals/Zord_v1/skins
   Alias /medias path/to/library/medias
   Alias /zoom path/to/library/zoom
  <Directory "Path\To\Zord_v1\webapp">
   DirectoryIndex index.php
   Options -Indexes
   AllowOverride All
   Allow from All
   RewriteEngine on
  </Directory>    
 </VirtualHost>

## SOLR

* Comme sur la V0, créer une nouvelle instance solr (en allant dans le dossier solr(version)/server/solr) en créant un dossier que l'on va appeler “zord_v1” par exemple, ainsi qu'un dossier “conf” dans ce dernier. * Une fois créés, copier le contenu du dossier install/Solr de l'application et coller le dans le dossier “zord\_v1/conf”. * Créer un fichier “core.properties” dans “zord\_v1 avec ce contenu :

  #Written by CorePropertiesLocator
  #Mon Feb 19 09:44:18 UTC 2018
  name=zord_v1
  config=solrconfig.xml
  schema=schema.xml
  dataDir=data

## BDD:

* Créer une nouvelle base de données et importer le script zord.sql se trouvant dans install/MySQL

### ou

* Si vous avez déjà une V0 installée, vous pouvez copier la base pour en créer une nouvelle et executer le script update.sql se trouvant dans install/MySQL

## Dossier library

* Créer un dossier “library” un cran au dessus du dossier de l'application * Son arborescence est la suivante :

  • books
  • epub
  • import
  • medias
  • metadata
  • portals
    • zord_v1
      • logs
      • obfuscate
      • skins
      • templates
      • classes.php
      • config.php
      • context.json
      • database.json
      • index.json
  • zoom
  • zord

## Config * Dans le fichier portals/zord\_v1/config.php, si environnement Windows, redéfinir les valeur RELAXNG\_COMMAND et PROCESS\_COMMAND en:

`define('RELAXNG_COMMAND', 'java -jar path\to\jing\jing.jar ${RNG} ${XML}');` `define('PROCESS_COMMAND','start /b path\to\php\php.exe -c path\to\php\php.ini -f ${ZORD} ${PID}');`

* Dans le fichier database.json, configurez les paramètres de connexion à la base de données * Dans le fichier index.json, faites pointer le paramètre path vers le dossier de votre instance solr comme ceci : `”\/solr\/zord_v1“` par exemple * Dans le fichier context.json, configurez les portails comme ci dessous, en remplaçant les paramètres host (et éventuellement secure si la connexion à l'application est en HTTPS)

{

  "calvin": {
      "secure": false,
      "url": [
          {
              "host": "calvin.zord_v1.test",
              "path": "\/"
          }
      ],
      "locales": {
          "en-EN": {
              "title": "Calvin, base Droz",
              "categories": {
                  "bezecorr": "Correspondance de Théodore de Bèze",
                  "thr": "Études et contextes",
                  "calvinopuscules": "Calvin, recueil des opuscules (1566)",
                  "lit": "Textes littéraires Français",
                  "calviniopera_19": "Opera quae supersunt omnia",
                  "bibliography": "Bibliotheca Calviniana",
                  "calvinomnia": "Ioannis Calvini Opera Omnia",
                  "regpasteurs": "Registres de la Compagnie des pasteurs de Genève",
                  "regconsistoire": "Registres du Consistoire de Genève",
                  "varia": "Varia",
                  "regconseil": "Registres du Conseil de Genève à l’époque de Calvin",
                  "marguerite": "Marguerite"
              }
          },
          "fr-FR": {
              "title": "Calvin, base Droz",
              "categories": {
                  "bezecorr": "Correspondance de Théodore de Bèze",
                  "thr": "Études et contextes",
                  "calvinopuscules": "Calvin, recueil des opuscules (1566)",
                  "lit": "Textes littéraires Français",
                  "calviniopera_19": "Opera quae supersunt omnia",
                  "bibliography": "Bibliotheca Calviniana",
                  "calvinomnia": "Ioannis Calvini Opera Omnia",
                  "regpasteurs": "Registres de la Compagnie des pasteurs de Genève",
                  "regconsistoire": "Registres du Consistoire de Genève",
                  "varia": "Varia",
                  "regconseil": "Registres du Conseil de Genève à l’époque de Calvin",
                  "marguerite": "Marguerite"
              }
          }
      }
  },
  "tlf": {
      "secure": false,
      "url": [
          {
              "host": "tlf.zord_v1.test",
              "path": "\/"
          }
      ],
      "locales": {
          "en-EN": {
              "title": "Textes littéraires français",
              "categories": {
                  "prose": "Prose",
                  "poesie": "Poésie",
                  "theatre": "Théâtre",
                  "correspondance": "Correspondances",
                  "essai": "Essais"
              }
          },
          "fr-FR": {
              "title": "Textes littéraires français",
              "categories": {
                  "prose": "Prose",
                  "poesie": "Poésie",
                  "theatre": "Théâtre",
                  "correspondance": "Correspondances",
                  "essai": "Essais"
              }
          }
      }
  },
  "thr": {
      "secure": false,
      "url": [
          {
              "host": "thr.zord_v1.test",
              "path": "\/"
          }
      ],
      "locales": {
          "en-EN": {
              "title": "Humanisme et Renaissance",
              "categories": {
                  "humanisme": "Humanisme",
                  "bezecorr": "Correspondance de Théodore de Bèze",
                  "bibliography": "Bibliographies",
                  "eglisesreformees": "Archives des Églises réformées de France",
                  "histoire_art": "Histoire de l'art",
                  "histoire_livre": "Histoire du livre",
                  "histoire_litteraire": "Histoire littéraire",
                  "histoire_medecine": "Histoire de la médecine",
                  "histoire_politique": "Histoire politique",
                  "histoire_universite": "Histoire de l'université",
                  "histoire_scientifique": "Histoire scientifique",
                  "rabelaisiennes": "Études rabelaisiennes",
                  "reforme": "Réforme et Réformation",
                  "regconseil": "Registres du Conseil de Genève à l’époque de Calvin",
                  "regpasteurs": "Registres de la Compagnie des pasteurs de Genève",
                  "regconsistoire": "Registres du Consistoire de Genève",
                  "ronsardiennes": "Études ronsardiennes"
              }
          },
          "fr-FR": {
              "title": "Humanisme et Renaissance",
              "categories": {
                  "humanisme": "Humanisme",
                  "bezecorr": "Correspondance de Théodore de Bèze",
                  "bibliography": "Bibliographies",
                  "eglisesreformees": "Archives des Églises réformées de France",
                  "histoire_art": "Histoire de l'art",
                  "histoire_livre": "Histoire du livre",
                  "histoire_litteraire": "Histoire littéraire",
                  "histoire_medecine": "Histoire de la médecine",
                  "histoire_politique": "Histoire politique",
                  "histoire_universite": "Histoire de l'université",
                  "histoire_scientifique": "Histoire scientifique",
                  "rabelaisiennes": "Études rabelaisiennes",
                  "reforme": "Réforme et Réformation",
                  "regconseil": "Registres du Conseil de Genève à l’époque de Calvin",
                  "regpasteurs": "Registres de la Compagnie des pasteurs de Genève",
                  "regconsistoire": "Registres du Consistoire de Genève",
                  "ronsardiennes": "Études ronsardiennes"
              }
          }
      }
  }

}

documentation/deploiement.txt · Dernière modification: 2019/02/15 17:03 de chloe