# Commandes anakeen-control
L'outil en invite de commande de anakeen-control permet d'effectuer diverses commandes suivants une syntaxe précise et exécutant une suite d'actions.
La création de ces commandes est facilitée par l'utilisation du framework Symfony console.
Les commandes créées héritent des options de commande de Symfony suivantes:
help
Indique à la commande d'afficher l'aide sur le terminal.
Par défaut,help
est valué àfalse
.
Note: Si cette option est présente, alors elle annule tous les autres arguments et options présent lors de l'exécution de la commande.quiet
Indique à la commande de n'inscrire aucun message. Par défaut,
quiet
est valué àfalse
.
Note: Si cet argument est présent, alors il annule tous les autres arguments présent lors de l'exécution de la commande.version
Indique à la commande d'afficher la version de Anakeen-control.
Par défaut,version
est valué àfalse
.ansi
Indique à la commande de forcer le format ANSI.
Par défaut,ansi
est valué àfalse
.no-ansi
Indique à la commande de désactiver le format ANSI.
Par défaut,no-ansi
est valué àfalse
.no-interaction
Indique à la commande de ne pas interagir avec l'utilisateur.
Par défaut,no-interaction
est valué àfalse
.verbose
Ajoute des informations de log lors de l'exécution de la commande.
Par défaut,verbose
est valué àfalse
.
Alias :-v|-vv|-vvv
.
Note : Il est possible d'augment de le niveau de retour d'informations en utilisant leur alias, pour un retour d'informations de niveaunormal
(-v
), un retour de niveauavancé
(-vv
), et pourdebug
(-vvv
).
# archive
La commande archive
permet d'archiver Anakeen Platform.
# Arguments
Chemin d'acccès vers le fichier de sortie de l'archive (.zip
).
Cet argument est obligatoire.
L'archive doit être accessible en écriture
.
Note : Une erreur est retourné à l'utilisateur si l'argument n'est pas défini ou si le chemin n'est pas accessible en
écriture
.
# Options
without-vault
Indique à la commande de ne pas sauvegarder le coffre dans l'archive.
Par défaut,without-vault
est valué àfalse
.dry-run
Indique à la commande de s'exécuter entièrement sans créer d'archive.
Par défaut,dry-run
est valué àfalse
.
# Exemple
# Commande
- Création d'une archive du contexte et du coffre :
./control/anakeen-control archive /tmp/share/test.zip
# Résultat
- Les conditions de créations de l'archive sont validées.
Job is processing
Archive file will be saved to "/tmp/share/test.zip"
- Les conditions de créations de l'archive ne sont pas validées (fichier non accessible en écriture).
./control/anakeen-control archive /nowhere/backup.zip
Output archive file '/nowhere/backup.zip' not writable
archive [--without-vault] [--dry-run] [-h|--help] [-q|--quiet] [-v|vv|vvv|--verbose] [-V|--version] [--ansi] [--no-ansi] [-n|--no-interaction] [--] <command> <file>
# get
La commande get
permet de récupérer la valeur d'un paramètre de contrôle.
# Arguments
- parameterName
Nom du paramètre.
# Options
format
Indique à la commande le type de format de retour.
Par défaut,format
est valué àfalse
.all
Indique à la commande d'afficher tous les paramètres de contrôle.
Par défaut,all
est valué àfalse
.module
Indique à la commande d'afficher les paramètres du module.
Par défaut,module
est valué àfalse
.
Note : l'optionall
est requise.
# Exemple
- Récupération de la valeur du paramètre
ac-update-file
:
./control/anakeen-control get ac-update-file
Résultat :
Lorsque le paramètre existe :
anakeen-control-current.tar.gz
- Lorsque le paramètre n'est pas trouvé ou n'existe pas :
Argument "TEST_GET" not found
get [--format [FORMAT]] [--all] [--module] [-h|--help] [-q|--quiet] [-v|vv|vvv|--verbose] [-V|--version] [--ansi] [--no-ansi] [-n|--no-interaction] [--] <command> [<parameterName>]
- Récupération de tous les paramètres du module :
./control/anakeen-control get --all --module
- Résultat :
Name | Value |
---|---|
client_name | new |
core_db | platform |
core_tmpdir | ./var/tmp |
mod_deflate | yes |
COUNT_PERSON | 200 |
COUNT_CLIENT | 100 |
COUNT_ACCOUNTS | 0 |
# info
La commande info
permet d'obtenir les informations de l'installation.
# Arguments
Aucun.
# Options
format
Indique à la commande le type de format de retour.
Par défaut,format
est valué àfalse
.
# Exemple
- Récupération des informations sur l'installation :
./control/anakeen-control info
- Résultat :
version | 3.0.0 |
availableVersion |
activeUserCount | 1484 |
inactiveUserCount | 13 |
# init
La commande init
permet d'initialiser Anakeen Control
# Arguments
Aucun.
# Options
pg-service
Indique à la commande le service PostgreSQL pour Anakeen Platform (obligatoire).
password
Indique le mot de passe pour l'accès web (Anakeen control et Anakeen Platform).
Par défaut,password
est valué àfalse
.
# Exemple
# install
La commande install
permet d'installer les modules, mais auparavant il faut déclarer un dépôt pour télécharger les
modules.
Par défaut, la commande install
installe tous les modules disponibles dans les dépôts enregistrés. Par défaut, une
confirmation est demandé avant le lancement de l'installation.
L'option --no-interaction
permet de prendre les réponses préconfigurées.
Il est aussi possible d'ajouter un fichier de type json "askes.json" dans le répertoire "control/conf/" avec les
paramètres souhaités afin de préconfiguer les réponses. Dans ce fichier, le json a pour clé, le paramètre name
de la
balise param
qui se trouve dans les fichiers info.xml
de chaque module, et comme valeur, celle qui lui sera
attribuée dans ce fichier.
Attention
- Il faudra renseigner en mode interactif les réponses aux paramètres non présents dans le fichier
control/conf/askes.json
. - Le fichier sera supprimé à la suite de l'installation
# Exemple
Le info.xml
du module contient :
<parameters>
<param name="KEY_1" label="Label_1" default="Value_1" type="text" needed="Y"/>
<param name="KEY_2" label="Label_2" default="Value_2" type="text" needed="Y"/>
<param name="KEY_3" label="Label_3" default="Value_3" type="text" needed="N"/>
</parameters>
Une fois les paramètres saisis, la commande d'installation ne demandera plus les paramètres et pourra se dérouler sans interaction.
Attention
Le processus d'installation est lancé via un programme lancé en tâche de fond. La commande install
attend la fin de ce
processus pour rendre la main. Si la commande est arrêtée via un ctrl-c par exemple, le processus d'installation n'est
pas interrompu. Pour interrompre un processus, il faut utiliser la commande kill
.
Le mode verbose (-v
) affiche l'avancement de l'installation sur la console sous forme de grille. Le mode very
verbose (-vv
) affiche les logs liés à l'installation.
# Arguments
- module
Nom du module à installer.
Si l'argument n'est pas indiqué tous les modules qui ne sont pas encore installés seront installés.
# Options
file
Chemin d'accès vers le fichier
.app
à installer.
Par défaut,file
est valué àfalse
.dry-run
Indique de ne pas lancer le processus d'installation'.
Par défaut,dry-run
est valué àfalse
.
- background-job
(bool) indique si la commande doit immédiatement rendre la main ou attendre la fin du processus d'installation. Par défaut,
background-job
est valué àfalse
.
# Exemple
# Commande
Installation de tous les modules disponibles dans les dépôts enregistrés :
./control/anakeen-control install
# Résultat
- Lorsque des modules peuvent être installés
# Will (i)nstall, (u)pgrade, (d)elete, or (r)eplace the following modules:
# - (i) smart-data-engine 2.0.1
# - (i) user-interfaces 2.0.1-dev20190619093944
# - (i) security 2.0.0-dev20190531103342
# - (i) workflow 2.0.0
# - (i) anakeen-hub 1.0.1-dev20190619073348
# - (i) admin-center 2.0.1-dev20190619124157
# - (i) development-center 2.0.1-dev20190619073917
# - (i) transformation 2.0.1-dev20190531104740
# Continue the update [Y/n]?
# client name? My Company
# Installing modules...
# ..................
# Install complete.
- Lorsqu'aucun module ne peut être installé/mis à jour :
No modules to install. All is up-to-date.
# status
La commande status
permet d'avoir l'avancement de l'installation.
# Arguments
Aucun.
# Options
format
Indique à la commande le type de format de retour.
Par défaut,format
est valué àfalse
.watch
Indique à la commande d'observer les logs et de rafraîchir la commande toutes les
n
secondes.
Par défaut,watch
est valué àfalse
.
Note : Si leformat
spécifié en option estJSON
, alors l'optionwatch
est ignorée.
# Exemple
./control/anakeen-control status
- Installation en cours
Module | Phase | Process |
---|---|---|
smart-data-engine | RUNNING | |
download | DONE | |
pre-install | RUNNING | |
Check database empty | RUNNING | |
check-files | TODO | |
unpack | TODO | |
post-install | TODO | |
purge-unreferenced-parameters-value | TODO | |
user-interfaces | TODO | |
security | TODO | |
workflow | TODO | |
anakeen-hub | TODO | |
admin-center | TODO | |
development-center | TODO | |
transformation | TODO |
- Fin de l'installation :
./control/anakeen-control status
# Ready.
# update
La commande update
permet de mettre à jour tous les modules installés.
Attention
Le processus de mise à jour est lancé via un programme lancé en tâche de fond. La commande update
attend la fin de ce
processus pour rendre la main. Si la commande est arrêtée via un ctrl-c par exemple, le processus de mise à jour n'est
pas interrompu. Pour interrompre un processus, il faut utiliser la commande kill
.
Le mode verbose (-v
) affiche l'avancement de la mise à jour sur la console sous forme de grille. Le mode very
verbose (-vv
) affiche les logs liés à la mise à jour.
# Arguments
- module
Nom du module à mettre à jour.
Si l'argument n'est pas indiqué tous les modules qui ont une mise à jour détectée seront mis à jour
# Options
force
Indique à la commande de forcer la mis à jour du module, même si la version est inférieure. Par défaut,
force
est valué àfalse
.dry-run
Indique de ne pas lancer le processus de mise à jour.
Par défaut,dry-run
est valué àfalse
.background-job
(bool) indique si la commande doit immédiatement rendre la main ou attendre la fin du processus de mise à jour. Si c'est vrai, la commande rend la main immédiatement. Par défaut,
background-job
est valué àfalse
.
# Exemple
./control/anakeen-control update
- Résultat : Aucune mise à jour n'est disponible
No modules to update. All is up-to-date.
- Une ou plusieurs mise à jour sont disponibles
Will (i)nstall, (u)pgrade, (d)elete, or (r)eplace the following modules:
- (u) smart-data-engine 2.0.2-dev20190917141746
- (u) user-interfaces 2.0.2-dev20190917142002
- (u) security 2.0.1-dev20190917141748
- (u) workflow 2.0.0-dev20190917141749
- (u) anakeen-hub 1.0.2-dev20190917142026
- (u) admin-center 2.0.2-dev20190917142135
- (u) anakeen-hub-business-app 1.0.2-dev20190917142152
- (u) transformation 2.0.1-dev20190917142218
- (u) migration-tools 2.0.1-dev20190917142219
- (u) anakeen-dev-data 2.0.1-dev20190917142220
- (u) development-center 2.1.2-dev20190917142206
Continue the update [Y/n]?
Note
Il est demandé une confirmation lorsqu'au moins une mise à jour est disponible.
# kill
La commande kill
permet d'arrêter les processus en cours d'exécution. Elle envoie un signal SIGTERM
au process.
# Arguments
Aucun.
# Options
Aucune.
# Exemple
- Arrêt des processus en cours :
./control/anakeen-control kill
- Lorsqu'un processus est en cours :
#> Process 1193 is killed.
- Lorsqu'aucun processus n'est en cours :
In ModuleJob.php line 194:
No job detected.
kill [-h|--help] [-q|--quiet] [-v|vv|vvv|--verbose] [-V|--version] [--ansi] [--no-ansi] [-n|--no-interaction] [--] <command>
# log
La commande log
permet d'afficher les messages de log des processus exécutés.
# Arguments
Aucun.
# Options
format
Indique à la commande le type de format de retour.
Par défaut,format
est valué àfalse
.lines
Indique à la commande le nombre de lignes à afficher.
Par défaut,lines
est valué à200
si l'option est sélectionnée.
Alias :-l
.
# Exemple
# Commande
Récupération du log des commandes exécutées :
./control/anakeen-control log --format=json --lines=3
# Résultat
[
{
"module": "transformation",
"phase": "purge-unreferenced-parameters-value",
"task": "status",
"value": "DONE",
"date": "2019-06-27T17:10:35.645872"
},
{
"module": "transformation",
"phase": "",
"task": "status",
"value": "INSTALLED",
"date": "2019-06-27T17:10:35.648548"
},
{
"module": "",
"phase": "",
"task": "status",
"value": "done",
"date": "2019-06-27T17:10:37.232512"
}
]
# outdated
La commande outdated
permet d'afficher les modules qui ne sont pas à jour.
# Arguments
Aucun.
# Options
format
Indique à la commande le type de format de retour.
Par défaut,format
est valué àfalse
.
# Exemple
- Récupération des modules non à jour :
./control/anakeen-control outdated
- Résultat :
Module | Description | Version | Available version |
---|---|---|---|
admin-center | Admin Center | 2.0.2-dev20190918135257 | 2.0.2-dev20190919084417 |
anakeen-dev-data | Data set for development test | 2.0.1-dev20190918135351 | 2.0.1-dev20190919084458 |
anakeen-hub | 1.0.2-dev20190918135225 | 1.0.2-dev20190919084354 | |
anakeen-hub-business-app | 1.0.2-dev20190918135313 | 1.0.2-dev20190919084431 | |
development-center | development Center | 2.1.2-dev20190918135328 | 2.1.2-dev20190919084444 |
migration-tools | Migration tools | 2.0.1-dev20190918135348 | 2.0.1-dev20190919084457 |
security | Security Package | 2.0.1-dev20190918135020 | 2.0.1-dev20190919084206 |
smart-data-engine | Smart Data Engine | 2.0.2-dev20190918135006 | 2.0.2-dev20190919084204 |
transformation | Transformation Engine Client Library | 2.0.1-dev20190918135345 | 2.0.1-dev20190919084456 |
user-interfaces | Anakeen Platform : User interfaces | 2.0.2-dev20190918135151 | 2.0.2-dev20190919084330 |
workflow | Workflow Package | 2.0.0-dev20190918135025 | 2.0.0-dev20190919084207 |
# registry
La commande registry
permet de gérer les registres de Anakeen Platform
# Arguments
action
Indique l'action à exécuter (
add
|remove
|show
).name
Nom d'identification du répertoire.
url
URL du répertoire.
# Options
format
Indique à la commande le type de format de retour.
Par défaut,format
est valué àfalse
.
# Exemple
# Afficher un dépôt
./control/anakeen-control show
- Résultat :
Name | Url | Ping | Activated |
---|---|---|---|
local | file:///var/www/html/localRepo | Valid | Activated |
- Au format JSON :
./control/anakeen-control registry show --format=json
[
{
"use": "",
"name": "local",
"baseurl": "",
"description": "local",
"label": "",
"protocol": "file",
"host": "",
"path": "/var/www/html/localRepo",
"authenticated": "no",
"login": "",
"password": "",
"default": "yes",
"status": "activated",
"url": "file:///var/www/html/localRepo",
"displayUrl": "file:///var/www/html/localRepo",
"errorMessage": "",
"isValid": true,
"needAuth": null,
"contexts_filepath": null
}
]
# Ajouter un dépôt
Un dépôt est identifié par un nom name
.
La référence à un dépôt peut être une URL ou un répertoire local. Le serveur doit avoir accès à l'URL.
Les paramètres de proxy d'Anakeen Control peuvent être configurés pour accéder aux dépôts distants.
# Dépôt local
./control/anakeen-control registry add local /var/myrepo/
# Dépôt distant
./control/anakeen-control registry add remote http://www.example.net/anakeen/repo/4.0/apps/
La commande install
ou update
recherche les modules dans tous les dépôts enregistrés.
# Supprimer un dépôt
./control/anakeen-control registry remove remote
# remove
La commande remove
permet de retirer un module.
# Arguments
- module
Nom du module à retirer.
# Options
Aucune.
# Exemple
- Retirement du module
anakeen-dev-data
:
./control/anakeen-control remove anakeen-dev-data
- Résultat :
Will (i)nstall, (u)pgrade, (d)elete, or (r)eplace the following modules:
- (d) anakeen-dev-data 2.0.1-dev20190918135351
Confirm remove module [Y/n]?y
...
Deletion complete.
# restore
La commande restore
permet de restaurer un contexte Anakeen Platform complet depuis une archive .zip
. Celle-ci se
fait avec les étapes suivantes :
- Création d'un répertoire vierge,
- Décompression de l'archive dans ce répertoire,
- Modifier les droits de ce répertoire,
- Créer une base données vierge avec son pg-service,
- Lancer la commande de restauration.
# Arguments
Aucun.
# Options
pg-service
Indique à la commande le service PostgreSQL pour Anakeen Platform (obligatoire).
vaults-path
Chemin d'accès vers le coffre pour restaurer le coffre de l'archive.
Par défaut,vaults-path
est valué à/var/www/html/vaults
si l'option est active.force-clean
Indique à la commande d'utiliser une base de donnée existante.
Par défaut,force-clean
est valué àfalse
.dry-run
Indique à la commande de s'exécuter entièrement sans restaurer le contexte.
Par défaut,dry-run
est valué àfalse
.
# Exemple
- Restauration du contexte Anakeen Platform :
./control/anakeen-control --pg-service="platform" --vaults-path="/var/www/html/vaults"
- Résultat :
Restore job is recorded
./control/anakeen-control status
Module | Phase | Process |
---|---|---|
restoring | Running | |
restore-database | Running | |
reconfigure-parameters | Todo |
# run
La commande run
permet de lancer une commande sous l'environnement d'Anakeen Platform.
# Arguments
- shell
Nom de la commande à exécuter.
Par défaut,shell
est valué à/bin/bash --login
.
# Options
Aucune.
# Exemple
# Lancer un shell sous l'environnement d'Anakeen Platform
La commande est lancée sour l'UID du serveur Apache. Le répertoire de travail est le répertoire d'installation d'Anakeen Platform.
root@341dc9280601:/var/www/html# ./control/anakeen-control run
www-data@341dc9280601:~$ pwd
/var/www/html/platforM
# Lancer une commande sous l'environnement d'Anakeen Platform
- Lancer une commande avec des arguments et une redirection :
./control/anakeen-control run "ls -l > /tmp/ls"
- Exécuter une script d'Anakeen Platform
./control/anakeen-control run "./ank.php --script=cleanContext"
# search
La commande search
permet d'effectuer une recherche de module.
# Arguments
Aucun.
# Options
format
Indique à la commande le type de format de retour.
Par défaut,format
est valué àfalse
et seul le format JSON est accepté.
# Exemple
./control/anakeen-platform search
- Résultat :
Module | Description | Version | Status |
---|---|---|---|
admin-center | Admin Center | 2.0.2-dev20190918135257 | Outdated |
anakeen-dev-data | Data set for development test | 2.0.1-dev20190919084458 | Installed |
anakeen-hub | 1.0.2-dev20190918135225 | Outdated | |
anakeen-hub-business-app | 1.0.2-dev20190918135313 | Outdated | |
development-center | development Center | 2.1.2-dev20190918135328 | Outdated |
migration-tools | Migration tools | 2.0.1-dev20190918135348 | Outdated |
security | Security Package | 2.0.1-dev20190918135020 | Outdated |
smart-data-engine | Smart Data Engine | 2.0.2-dev20190918135006 | Outdated |
smart-data-engine-test | Test case for Smart Data Engine. | 2.0.1-dev20190828092356 | Installed |
transformation | Transformation Engine Client Library | 2.0.1-dev20190918135345 | Outdated |
user-interfaces | Anakeen Platform : User interfaces | 2.0.2-dev20190918135151 | Outdated |
user-interfaces-test | Tests for Anakeen Uis | 2.0.1-dev20190828092451 | Installed |
workflow | Workflow Package | 2.0.0-dev20190918135025 | Outdated |
workflow-test | Test case for Anakeen Platform Workflow. | 2.0.0-dev20190828092400 | Installed |
# set
La commande set
permet de fixer la valeur d'un paramètre interne.
# Arguments
parameterName
Nom du paramètre interne.
value
Valeur à fixer au paramètre interne.
# Options
- module
Indique à la commande de fixer le paramètre d'un module.
Par défaut,module
est valué àfalse
.
# Gestion des paramètres internes
# Liste des paramètres internes
./anakeen-control get --all
Name | Value |
---|---|
ac-update-file | anakeen-control-current.tar.gz |
ac-update-host | http://eec-integration.corp.anakeen.com |
ac-update-login | <undefined> |
ac-update-password | <undefined> |
ac-update-path | /anakeen/repo/4.0/control/ |
auto-configuration-sender-interval | 30 |
connect-timeout | 3 |
proxy-host | <undefined> |
proxy-password | <undefined> |
proxy-port | <undefined> |
proxy-username | <undefined> |
use-proxy | no |
# Exemple
- Modification du paramètre
connect-timeout
:
./control/anakeen-control set connect-timeout 7
- Résultat :
# Internal parameter "connect-timeout" set to "7".
# Gestion des paramètres des modules
# Liste des paramètres des modules
Les valeurs indiquées ici sont les valeurs utilisées lors de l'installation d'un module.
Name | Value |
---|---|
client_name | new |
core_db | platform |
core_tmpdir | ./var/tmp |
mod_deflate | yes |
COUNT_PERSON | 20 |
COUNT_CLIENT | 20 |
COUNT_ACCOUNTS | 20 |
vault_root | /var/www/html/vaults |
# show
La commande show
permet d'afficher les modules installés.
# Arguments
Aucun.
# Options
- format
Indique à la commande le type de format de retour.
Par défaut,format
est valué àfalse
.
# Exemple
./control/anakeen-control show
- Résultat :
Module | Description | Version |
---|---|---|
admin-center | Admin Center | 2.0.2-dev20190918135257 |
anakeen-dev-data | Data set for development test | 2.0.1-dev20190919084458 |
anakeen-hub | 1.0.2-dev20190918135225 | |
anakeen-hub-business-app | 1.0.2-dev20190918135313 | |
development-center | Development Center | 2.1.2-dev20190918135328 |
migration-tools | Migration tools | 2.0.1-dev20190918135348 |
security | Security Package | 2.0.1-dev20190918135020 |
smart-data-engine | Smart Data Engine | 2.0.2-dev20190918135006 |
smart-data-engine-test | Test case for Smart Data Engine. | 2.0.1-dev20190828092356 |
transformation | Transformation Engine Client Library | 2.0.1-dev20190918135345 |
user-interfaces | Anakeen Platform : User interfaces | 2.0.2-dev20190918135151 |
user-interfaces-test | Tests for Anakeen Uis | 2.0.1-dev20190828092451 |
workflow | Workflow Package | 2.0.0-dev20190918135025 |
workflow-test | Test case for Anakeen Platform Workflow. | 2.0.0-dev20190828092400 |