Déploiement
Le déploiement des différents modules de Publik est géré depuis l'écran "Système", dans la section "Sites". Un service s'ajoute en choisissant le module souhaité et en lui fournissant un titre, un identifiant et l'URL où il doit être déployé.
Alternativement, le déploiement peut être géré en ligne de commande via la commande "cook", en passant la définition du déploiement dans un fichier au format JSON.
Ce fichier liste les différentes étapes de déploiement, par exemple :
{ "steps": [ {"create-hobo": { "url": "https://admin.example.net/" }}, {"create-authentic": { "url": "https://login.example.net/", "title": "Login" }} }
Il est possible définir des variables qui permettront d'assurer des substitutions à l'intérieur même du fichier, en utilisant la syntaxe ${variable}
:
{ "variables": { "domain": "example.net" }, "steps": [ {"create-hobo": { "url": "https://admin.${domain}/" }}, {"create-authentic": { "url": "https://login.${domain}/", "title": "Login" }} }
Les variables peuvent également être chargées depuis un fichier externe :
{ "load-variables-from": "variables.json", "steps": [ {"create-hobo": { "url": "https://admin.${domain}/" }}, {"create-authentic": { "url": "https://login.${domain}/", "title": "Login" }} }
Actions
La première action doit nécessairement fournir la définition du service de déploiement, c'est create-hobo
:
{"create-hobo": { "url": "https://admin.example.net/" }},
Les actions suivantes sont alors les déploiements des différents autres modules, via les commandes create-authentic
, create-combo
, create-wcs
, create-passerelle
, create-fargo
, create-welco
, create-chrono
, create-corbo
, create-bijoe
. Ces commandes prennent en paramètres obligatoires le titre et l'adresse du service et de manière optionnelle un identifiant (slug), un squelette et une série de variables.
{"create-combo": { "url": "https://backoffice.example.net/", "title": "Example", "template_name": "portal-agent", "slug": "portal-agent" }}
Les autres actions disponibles permettent de définir le fournisseur d'identités à utiliser; sans paramètre passé, ce sera le premier service Authentic déployé :
{"set-idp": {}}
De créer le super-administrateur du système; si un mot de passe n'est pas passé, il sera généré automatiquement et affiché sur la console.
{"create-superuser": { "username": "admin", "email": "admin@example.net", "password": "admin" }}
De définir l'intégration graphique à utiliser :
{"set-theme": { "theme": "example" }}
D'ajouter, activer ou désactiver des attributs pour le profil des usagers :
{"set-attribute": { "name": "phone", "label": "Téléphone", "order": 10, "asked_on_registration": true }}, {"disable-attribute": { "name": "country" }}
Et de définir des paramètres globaux au système :
{"set-variable": { "name": "city_name", "label": "Nom de la ville", "value": "Trifouilly" }}