Ce plugin permet de changer certains paramètres au démarrage du serveur. Utile pour déployer régulièrement des données d'un autre serveur et adapter les paramètres par exemple.
Fonctionnement Ce plugin s'utilise en plaçant un fichier 'start-actions.xml' dans le dossier WEB-INF/param du serveur.
Le fichier contient les instructions à effectuer.
Le fichier est ensuite archivé sous la forme 'start-actions-2020-01-01T120000.000100.xml' afin de ne pas être exécuté une deuxième fois.
Configuration Le format du fichier est le suivant :
Oups ! La copie dans le presse papier a échouée. Ouvrez le code et copier-le manuellement.<actions>
<users-populations>
...
</users-populations>
<rights>
...
</rights>
<schedulables>
...
</schedulables>
</actions> <actions>
<users-populations>
...
</users-populations>
<rights>
...
</rights>
<schedulables>
...
</schedulables>
</actions> Voir le code
<actions>
<users-populations>
...
</users-populations>
<rights>
...
</rights>
<schedulables>
...
</schedulables>
</actions> Changer le mot de passe d'un utilisateur Dans la balise <users-populations> vous pouvez mettre des balises <users-population> au format :
Oups ! La copie dans le presse papier a échouée. Ouvrez le code et copier-le manuellement.<users-population id="POPULATIONID">
<user login="LOGIN">
<password>PASSWORD</password>
</user>
</users-population> <users-population id="POPULATIONID">
<user login="LOGIN">
<password>PASSWORD</password>
</user>
</users-population>
<users-population id="POPULATIONID">
<user login="LOGIN">
<password>PASSWORD</password>
</user>
</users-population> où :
POPULATIONID est l'identifiant de la populationLOGIN est l'identifiant de l'utilisateur dans la populationPASSWORD est le nouveau mot de passe à positionnerCette instruction permet de modifier le mot de passe administrateur si il a été perdu. Population "admin_population" et login "admin"
Modifier un profil de droits Dans la balise <rights> vous pouvez mettre une balise <profiles> qui contient des balises <profile> :
Oups ! La copie dans le presse papier a échouée. Ouvrez le code et copier-le manuellement.<profiles>
<profile id="PROFILEID">
<remove right="RIGHTID"/>
</profile>
</profiles> <profiles>
<profile id="PROFILEID">
<remove right="RIGHTID"/>
</profile>
</profiles>
<profiles>
<profile id="PROFILEID">
<remove right="RIGHTID"/>
</profile>
</profiles> où :
PROFILEID est l'identifiant d'un profilRIGHTID est l'identifiant d'un droitLancer une tâche Disponible à partir de la version 1.2.0.
Dans la balise <schedulables>, pour lancer une tâche au démarrage, vous pouvez mettre des balises <schedulable> structurée comme suit :
Oups ! La copie dans le presse papier a échouée. Ouvrez le code et copier-le manuellement.<schedulable id="SCHEDULABLE_ID">
<params>
<PARAM_NAME>PARAM_VALUE</PARAM_NAME>
<PARAM_NAME type="config">PARAM_CONFIG_ID</PARAM_NAME>
</params>
</schedulable> <schedulable id="SCHEDULABLE_ID">
<params>
<PARAM_NAME>PARAM_VALUE</PARAM_NAME>
<PARAM_NAME type="config">PARAM_CONFIG_ID</PARAM_NAME>
</params>
</schedulable>
<schedulable id="SCHEDULABLE_ID">
<params>
<PARAM_NAME>PARAM_VALUE</PARAM_NAME>
<PARAM_NAME type="config">PARAM_CONFIG_ID</PARAM_NAME>
</params>
</schedulable> où :
SCHEDULABLE_ID est l'identifiant de la tâche à lancerPARAM_NAME est le nom du paramètrePARAM_VALUE est la valeur du paramètrePARAM_CONFIG_ID est la valeur du paramètre s'il est extrait de la configuration générale (type="config" sur la balise portant le nom du paramètre)Exemple de lancement d'un script au démarrage avec envoi du résultat par email à l'administrateur de la plateforme.:
Oups ! La copie dans le presse papier a échouée. Ouvrez le code et copier-le manuellement.<?xml version="1.0" encoding="UTF-8" ?>
<actions>
...
<schedulables>
<schedulable id="org.ametys.core.schedule.Script">
<params>
<recipient type="config">smtp.mail.sysadminto</recipient>
<script>
var logger = Ametys.getLogger("deploy-starter");
logger.error("Test !");
</script>
<workspace>admin</workspace>
</params>
</schedulable>
</schedulables>
</actions> <?xml version="1.0" encoding="UTF-8" ?>
<actions>
...
<schedulables>
<schedulable id="org.ametys.core.schedule.Script">
<params>
<recipient type="config">smtp.mail.sysadminto</recipient>
<script>
var logger = Ametys.getLogger("deploy-starter");
logger.error("Test !");
</script>
<workspace>admin</workspace>
</params>
</schedulable>
</schedulables>
</actions> Voir le code
<?xml version="1.0" encoding="UTF-8" ?>
<actions>
...
<schedulables>
<schedulable id="org.ametys.core.schedule.Script">
<params>
<recipient type="config">smtp.mail.sysadminto</recipient>
<script>
var logger = Ametys.getLogger("deploy-starter");
logger.error("Test !");
</script>
<workspace>admin</workspace>
</params>
</schedulable>
</schedulables>
</actions>