Ce module est utilisé de base dans toute installation de pkgi. Son rôle est de définir des variables d'environnement communes et utiles à tous les autres modules. Il met également en place des préconisations pour la structure des répertoires et propose un système flexible pour charger des variables d'environnements via le répertoire /etc/profile.d/
Packages debian nécessaires : php5-cli
Module pkgi nécessaires : Aucun (Remarque : tous les autres dépendent du core)
Variables spécifiques pkgi :
APPNAME_HOME : chemin vers la racine de votre application, c'est ici que sera déployé l'instance de pkgiAPPNAME_USER : utilisateur qui lancera tous les démons de votre applicationAPPNAME_GROUP : groupe de l'utilisateurAPPNAME_ADMIN_MAIL : courriel de l'administrateur système de l'applicationAPPNAME_VERSION : version de votre application. Deux versions sont prédéfinies :dev : active automatiquement certaines traces pour faciliter le développement et le debug.prod : sécurité et optimisations pour un serveur en production.APPNAME_OPTIMIZATION : niveaux d'optimisations souhaités pour votre application. Cf paragraphe suivant.Structure du module :
etc/profileetc/profile.d/APPNAME_ADMIN_MAIL) comme destinataire des mails de l'application : bin/pkgi-setup-mail-forward (depuis la version 2.31)etc/profile.d/10-coreusr/share/locale/usr/share/doc/bin/scripts/
Les autres modules peuvent placer des fichiers d'environnement dans le répertoire etc/profile.d/. Ils seront alors automatiquement chargés dans l'environnement par le fichier etc/profile (ce fichier doit donc être "sourcé" par l'utilisateur).
Remarque : il est possible de "sourcer" le fichier etc/profile automatiquement à chaque connexion d'un utilisateur en ajoutant la ligne suivante au fichier ~/.bash_profile
source /chemin/vers/votre/application/etc/profile
Les niveaux standards sont :
none : Aucune optimisation, on utilise la configuration fourni par les paquets officiels de debian.Les niveaux spécifiques à des cas d'utilisations atypiques sont (à compléter suivant les besoins) :
innodb-heavy-4G : règle mysql pour une base de 4 Go, InnoDB uniquement, ACID, peu de connexions avec de grosses requêtes.Il est possible de combiner les niveaux entre modules. Par exemple, utiliser une configuration apache normale avec des performances améliorées pour le serveur mysql et en permettant l'upload de gros fichiers :
APPNAME_OPTIMIZATION=apache-normal,mysql-big,upload-big-file