Comment initialiser une application

Prérequis

Afin de pouvoir suivre ce guide, il faut préalablement avoir préparé l'environnement de développement.

Créer un module

Afin de créer le module correspondant à notre Restaurant, nous utiliserons ici la commande create. Cette dernière accepte plusieurs arguments comme indiqués sur la documentation ou en exécutant la commande npx @anakeen/anakeen-cli create --h.

Il existe deux modes d'utilisation de cette commande :

  • La première consiste à entrer la commande suivi des arguments possibles/voulus :

    npx @anakeen/anakeen-cli create --sourcePath . --vendorName Cogip --moduleName Restauratec
    

    Nous avons ici créé un module à la racine de notre projet, en donnant Cogip comme nom de client et de namespace et Restauratec en tant que nom de module.

  • La seconde, dite interactive, est un peu plus guidée et s'utilise en entrant uniquement la commande sans lui passer d'arguments :

    npx @anakeen/anakeen-cli create
    

    La console nous posera alors différentes questions. Certaines avec des valeurs par défaut que l'on peut laisser ou modifier; d'autres sans valeurs par défaut auxquelles il faudra obligatoirement répondre.

InteractiveCreateCommand

Nous avons ici créé exactement le même module qu'avec la première méthode mais en ayant des choix explicitements proposés.

La finalité de l'une ou l'autre des méthodes précédentes est identique, créer notre module Restauratec initialisé avec tous ses fichiers sources :

CreateCommandResult

Information

Les fichiers générés ont pour but de structurer la configuration des différentes fonctionnalités à mettre en place :

  • Account : Configuration des comptes (Smart Elements de type : Rôles / Groupes / Utilisateurs)
  • Autocompletion : Configuration d'aide à la saisie globale et non propre à une Smart Structure spécifique
  • Config : Configuration Smart Parameters globaux / Configuration des routes
  • Enumerates : Configuration des énumérés globaux
  • Routes : Définition du comportement des routes référencées dans le fichier de configuration présent dans le dossier Config
  • Settings : Configuration des paramètres globaux
  • SmartStructures : Dossier contenant les fichiers de configuration des diverses SmartStructures ultérieurement créées.

Les préfixes numérotés permettent d'ordonnancer l'import des divers fichiers de configuration. Prenons pour exemple les fichiers présents dans le dossier src/vendor/Cogip/Restauratec/Accounts :

  • 100-RestauratecRoles.xml
  • 110-RestauratecGroups.xml
  • 120-RestauratecUsers.xml

Les rôles peuvent être associés à des groupes ainsi qu'à des utilisateurs.
Si l'un de ces deux derniers est importé avant les rôles, l'import produira en erreur car le rôle référencé n'existera pas encore.

L'import des fichiers est effectué par ordre croissant et indépendamment des répertoires.

Dorénavant, dès lors qu'une modification est effectuée sur un fichier, il faut penser à construire (build) et déployer l'application sur le contexte (Voici un descriptif des arguments que la commande accepte):

npx @anakeen/anakeen-cli deploy -c http://localhost:8080/control -s . -u admin -p anakeen

Si les fichiers .xml importés à l'installation de notre module ont subi des modifications, afin de les déployer il suffit d'ajouter l'argument --reinstall :

npx @anakeen/anakeen-cli deploy -c http://localhost:8080/control -s . -u admin -p anakeen --reinstall

Et ensuite ?

Comment créer un compte