X-Git-Url: http://git.euphorik.ch/?p=euphorik.git;a=blobdiff_plain;f=tools%2Fupdate_server.erl;fp=tools%2Fupdate_server.erl;h=b375c0e850eb959211965bc8b1c6eda98219cb6d;hp=72686b1f4686581fc1be4e94580cac6f0192e044;hb=dc70eed10d6eb26660d02fe8b18eebb2836ef9de;hpb=808fb60f6c10dfcaccee94c6a49f768de84dc2ef diff --git a/tools/update_server.erl b/tools/update_server.erl index 72686b1..b375c0e 100755 --- a/tools/update_server.erl +++ b/tools/update_server.erl @@ -1,9 +1,8 @@ #!/usr/bin/env escript -% coding: utf-8 -% Executé sur le serveur après la copie des fichiers lors de la mise en production. -% Recharge les modules de euphorik et met à jour la BD. -% TODO : construire le nom du noeud en fonction du nom de l'host +% Execute remotly after the files has been copied. +% Reload all modules et update the database. +% TODO: build the node name from the host name. hote() -> '@overnux'. @@ -11,27 +10,27 @@ hote() -> % le premier argument est le nom du noeud est peut valoir : % - yaws : noeud de production % - yaws_dev : noeud de pre-production -main([Nom_node]) when Nom_node =:= "yaws"; Nom_node =:= "yaws_dev" -> - Node = list_to_atom(Nom_node ++ atom_to_list(hote())), +main([Node_name]) when Node_name =:= "yaws"; Node_name =:= "yaws_dev" -> + Node = list_to_atom(Node_name ++ atom_to_list(hote())), net_kernel:start([flynux, shortnames]), io:format("rechargement des modules..~n"), rpc:call(Node, euphorik_daemon, reload_euphorik, []), - if Nom_node =:= "yaws_dev" -> copier_bd(Node); + if Node_name =:= "yaws_dev" -> copy_database(Node); true -> true end, io:format("mise à jour de la BD..~n"), rpc:call(Node, euphorik_bd_admin, update, []); main(_) -> - io:format("Usage : mise_en_prod.erl "), + io:format("Usage: update_server.erl "), halt(1). -% Copie la bd du noeud de production -copier_bd(Node) -> - io:format("Copie de la BD de production vers le noeude pre-production~n"), - Fichier = "/tmp/backup_ek_tmp", - Fichier2 = "/tmp/backup_ek_tmp2", - rpc:call(yaws@overnux, mnesia, backup, [Fichier]), - rpc:call(Node, euphorik_bd_admin, change_node_name, [yaws@overnux, yaws_dev@overnux, Fichier, Fichier2]), - rpc:call(Node, mnesia, restore, [Fichier2, [{default_op, recreate_tables}]]), - rpc:call(yaws@overnux, file, delete, [Fichier]), - rpc:call(Node, file, delete, [Fichier2]). +% Copy the datbase from the production to pre production. +copy_database(Node) -> + io:format("Copying production database to pre-production node~n"), + File = "/tmp/backup_ek_tmp", + File2 = "/tmp/backup_ek_tmp2", + rpc:call(yaws@overnux, mnesia, backup, [File]), + rpc:call(Node, euphorik_bd_admin, change_node_name, [yaws@overnux, yaws_dev@overnux, File, File2]), + rpc:call(Node, mnesia, restore, [File2, [{default_op, recreate_tables}]]), + rpc:call(yaws@overnux, file, delete, [File]), + rpc:call(Node, file, delete, [File2]).