Utilisation avancée

Modification des méta-caractères utilisés

Dans le cas où il y a trop de % dans le template, il est possible de changer carrément de méta-caractères, en ajoutant une section compiler-settings en en-tête du template.

Cette méthode est, par exemple, utilisée pour la génération du fichier de configuration du logiciel eJabberd qui est en déclaré en Erlang[1].

ExempleUtilisation de @ et @@ à la place de % et %%

%compiler-settings

directiveStartToken = @

cheetahVarStartToken = @@

%end compiler-settings

Utilisation de creole_client

Les fonctionnalités de creole_client sont utilisables directement dans les templates.

Il est par exemple possible de lister toutes les variables et leurs valeurs :

%for %%var, %%value in %%creole_client.get_creole().items()

%%var : %%value

%end for

Donnera le résultat suivant (notez que le nom des variables esclaves est précédé de celui de la variable maître associée) :

ssl_organization_name : Ministere Education Nationale (MENESR)

https_port :

check_passwd_min_len_two_type : 9

container_ip_proxy : 127.0.0.1

nom_cache_pere_zone.options_cache_pere_zone : []

nom_cache_pere : []

ignore_expect_100 :

off eolesso_adresse : 192.168.230.205

activer_dhcprelay : non

[ ... ]

Plus généralement, il est possible d'accéder à toutes les informations décrites dans les dictionnaires comme celles concernant les conteneurs, les services et les tâches programmées.

Liste des conteneurs :

%for %%container in %%creole_client.get_containers()

* %%container['name']

%end for

Liste des services actifs :

%for %%srv in %%creole_client.get_services()

%if %%srv.has_key('activate')

* %%srv['name']

%end if

%end for

%set %%sched = %%creole_client.get('schedule.schedule')

Les tâches programmées sont exécutées à %%{sched['hour']}h%%{sched['minute']}