[enh] Update translations to fit to moulinette changes

This commit is contained in:
Jérôme Lebleu 2014-05-30 18:59:14 +02:00
parent c47951e424
commit fcd5b4d3c6
10 changed files with 122 additions and 124 deletions

28
app.py
View file

@ -284,7 +284,7 @@ def app_upgrade(auth, app, url=None, file=None):
installed = _is_installed(app_id)
if not installed:
raise MoulinetteError(errno.ENOPKG,
m18n.n('app_not_installed') % app_id)
m18n.n('app_not_installed', app_id))
if app_id in upgraded_apps:
continue
@ -303,7 +303,7 @@ def app_upgrade(auth, app, url=None, file=None):
manifest = _fetch_app_from_git(url)
elif 'lastUpdate' not in new_app_dict or 'git' not in new_app_dict:
raise MoulinetteError(errno.EDESTADDRREQ,
m18n.n('custom_app_url_required') % app_id)
m18n.n('custom_app_url_required', app_id))
elif (new_app_dict['lastUpdate'] > current_app_dict['lastUpdate']) \
or ('update_time' not in current_app_dict['settings'] \
and (new_app_dict['lastUpdate'] > current_app_dict['settings']['install_time'])) \
@ -316,7 +316,7 @@ def app_upgrade(auth, app, url=None, file=None):
# Check min version
if 'min_version' in manifest and __version__ < manifest['min_version']:
raise MoulinetteError(errno.EPERM,
m18n.n('app_recent_version_required') % app_id)
m18n.n('app_recent_version_required', app_id))
app_setting_path = apps_setting_path +'/'+ app_id
@ -360,7 +360,7 @@ def app_upgrade(auth, app, url=None, file=None):
# So much win
upgraded_apps.append(app_id)
msignals.display(m18n.n('app_upgraded') % app_id, 'success')
msignals.display(m18n.n('app_upgraded', app_id), 'success')
if not upgraded_apps:
raise MoulinetteError(errno.ENODATA, m18n.n('no_app_upgrade'))
@ -398,14 +398,14 @@ def app_install(auth, app, label=None, args=None):
# Check min version
if 'min_version' in manifest and __version__ < manifest['min_version']:
raise MoulinetteError(errno.EPERM,
m18n.n('app_recent_version_required') % app_id)
m18n.n('app_recent_version_required', app_id))
# Check if app can be forked
instance_number = _installed_instance_number(app_id, last=True) + 1
if instance_number > 1 :
if 'multi_instance' not in manifest or not is_true(manifest['multi_instance']):
raise MoulinetteError(errno.EEXIST,
m18n.n('app_already_installed') % app_id)
m18n.n('app_already_installed', app_id))
app_id_forked = app_id + '__' + str(instance_number)
@ -499,7 +499,7 @@ def app_remove(auth, app):
from yunohost.hook import hook_exec, hook_remove
if not _is_installed(app):
raise MoulinetteError(errno.EINVAL, m18n.n('app_not_installed') % app)
raise MoulinetteError(errno.EINVAL, m18n.n('app_not_installed', app))
app_setting_path = apps_setting_path + app
@ -519,7 +519,7 @@ def app_remove(auth, app):
shutil.rmtree('/tmp/yunohost_remove')
hook_remove(app)
app_ssowatconf(auth)
msignals.display(m18n.n('app_removed') % app, 'success')
msignals.display(m18n.n('app_removed', app), 'success')
def app_addaccess(auth, apps, users):
@ -544,7 +544,7 @@ def app_addaccess(auth, apps, users):
for app in apps:
if not _is_installed(app):
raise MoulinetteError(errno.EINVAL,
m18n.n('app_not_installed') % app)
m18n.n('app_not_installed', app))
with open(apps_setting_path + app +'/settings.yml') as f:
app_settings = yaml.load(f)
@ -598,7 +598,7 @@ def app_removeaccess(auth, apps, users):
if not _is_installed(app):
raise MoulinetteError(errno.EINVAL,
m18n.n('app_not_installed') % app)
m18n.n('app_not_installed', app))
with open(apps_setting_path + app +'/settings.yml') as f:
app_settings = yaml.load(f)
@ -641,7 +641,7 @@ def app_clearaccess(auth, apps):
for app in apps:
if not _is_installed(app):
raise MoulinetteError(errno.EINVAL,
m18n.n('app_not_installed') % app)
m18n.n('app_not_installed', app))
with open(apps_setting_path + app +'/settings.yml') as f:
app_settings = yaml.load(f)
@ -667,7 +667,7 @@ def app_makedefault(auth, app, domain=None):
from yunohost.domain import domain_list
if not _is_installed(app):
raise MoulinetteError(errno.EINVAL, m18n.n('app_not_installed') % app)
raise MoulinetteError(errno.EINVAL, m18n.n('app_not_installed', app))
with open(apps_setting_path + app +'/settings.yml') as f:
app_settings = yaml.load(f)
@ -754,10 +754,10 @@ def app_checkport(port):
s.connect(("localhost", int(port)))
s.close()
except socket.error:
msignals.display(m18n.n('port_available') % int(port), 'success')
msignals.display(m18n.n('port_available', int(port)), 'success')
else:
raise MoulinetteError(errno.EINVAL,
m18n.n('port_unavailable') % int(port))
m18n.n('port_unavailable', int(port)))
def app_checkurl(auth, url, app=None):

View file

@ -78,7 +78,7 @@ def dyndns_subscribe(subscribe_host="dyndns.yunohost.org", domain=None, key=None
try: error = json.loads(r.text)['error']
except: error = "Server error"
raise MoulinetteError(errno.EPERM,
m18n.n('dyndns_registration_failed') % error)
m18n.n('dyndns_registration_failed', error))
msignals.display(m18n.n('dyndns_registered'), 'success')

View file

@ -67,7 +67,7 @@ def firewall_allow(port=None, protocol='TCP', ipv6=False, no_upnp=False):
if port not in firewall[ipv][protocol]:
firewall[ipv][protocol].append(port)
else:
msignals.display(m18n.n('port_already_opened') % port, 'warning')
msignals.display(m18n.n('port_already_opened', port), 'warning')
with open('/etc/yunohost/firewall.yml', 'w') as f:
yaml.safe_dump(firewall, f, default_flow_style=False)
@ -103,7 +103,7 @@ def firewall_disallow(port=None, protocol='TCP', ipv6=False):
if port in firewall[ipv][protocol]:
firewall[ipv][protocol].remove(port)
else:
msignals.display(m18n.n('port_already_closed') % port, 'warning')
msignals.display(m18n.n('port_already_closed', port), 'warning')
with open('/etc/yunohost/firewall.yml', 'w') as f:
yaml.safe_dump(firewall, f, default_flow_style=False)

View file

@ -141,8 +141,7 @@ def hook_exec(file, args=None):
if arg['name'] in args:
if 'choices' in arg and args[arg['name']] not in arg['choices']:
raise MoulinetteError(errno.EINVAL,
m18n.n('hook_choice_invalid')
% args[arg['name']])
m18n.n('hook_choice_invalid', args[arg['name']]))
arg_list.append(args[arg['name']])
else:
if os.isatty(1) and 'ask' in arg:
@ -172,8 +171,7 @@ def hook_exec(file, args=None):
arg_list.append(arg['default'])
else:
raise MoulinetteError(errno.EINVAL,
m18n.n('hook_argument_missing')
% arg['name'])
m18n.n('hook_argument_missing', arg['name']))
file_path = "./"
if "/" in file and file[0:2] != file_path:

View file

@ -14,13 +14,13 @@
"appslist_removed" : "Apps list successfully removed",
"app_unknown" : "Unknown app",
"app_no_upgrade" : "No app to upgrade",
"app_not_installed" : "%s is not installed",
"custom_app_url_required" : "You must provide an URL to upgrade your custom app %s",
"app_recent_version_required" : "%s requires a more recent version of the moulinette",
"app_upgraded" : "%s successfully upgraded",
"app_not_installed" : "{:s} is not installed",
"custom_app_url_required" : "You must provide an URL to upgrade your custom app {:s}",
"app_recent_version_required" : "{:s} requires a more recent version of the moulinette",
"app_upgraded" : "{:s} successfully upgraded",
"app_id_invalid" : "Invalid app id",
"app_already_installed" : "%s is already installed",
"app_removed" : "%s successfully removed",
"app_already_installed" : "{:s} is already installed",
"app_removed" : "{:s} successfully removed",
"app_location_already_used" : "An app is already installed on this location",
"app_location_install_failed" : "Unable to install the app on this location",
"app_extraction_failed" : "Unable to extract installation files",
@ -53,7 +53,7 @@
"dyndns_key_generating" : "DNS key is being generated, it may take a while...",
"dyndns_unavailable" : "Unavailable DynDNS subdomain",
"dyndns_registration_failed" : "Unable to register DynDNS domain: %s",
"dyndns_registration_failed" : "Unable to register DynDNS domain: {:s}",
"dyndns_registered" : "DynDNS domain successfully registered",
"dyndns_ip_update_failed" : "Unable to update IP address on DynDNS",
"dyndns_ip_updated" : "IP address successfully updated on DynDNS",
@ -61,10 +61,10 @@
"dyndns_cron_remove_failed" : "Unable to remove DynDNS cron job",
"dyndns_cron_removed" : "DynDNS cron job successfully removed",
"port_available" : "Port %d is available",
"port_unavailable" : "Port %d is not available",
"port_already_opened" : "Port %d is already opened",
"port_already_closed" : "Port %d is already closed",
"port_available" : "Port {:d} is available",
"port_unavailable" : "Port {:d} is not available",
"port_already_opened" : "Port {:d} is already opened",
"port_already_closed" : "Port {:d} is already closed",
"iptables_unavailable" : "You cannot play with iptables here. You are either in a container or your kernel does not support it.",
"upnp_dev_not_found" : "No uPnP device found",
"upnp_port_open_failed" : "Unable to open uPnP ports",
@ -72,11 +72,11 @@
"upnp_disabled" : "uPnP successfully disabled",
"firewall_reloaded" : "Firewall successfully reloaded",
"hook_choice_invalid" : "Invalid choice '%s'",
"hook_argument_missing" : "Missing argument '%s'",
"hook_choice_invalid" : "Invalid choice '{:s}'",
"hook_argument_missing" : "Missing argument '{:s}'",
"mountpoint_unknown" : "Unknown mountpoint",
"unit_unknown" : "Unknown unit '%s'",
"unit_unknown" : "Unknown unit '{:s}'",
"monitor_period_invalid" : "Invalid time period",
"monitor_stats_no_update" : "No monitoring statistics to update",
"monitor_stats_file_not_found" : "Statistics file not found",
@ -86,24 +86,24 @@
"monitor_not_enabled" : "Server monitoring is not enabled",
"monitor_glances_con_failed" : "Unable to connect to Glances server",
"service_unknown" : "Unknown service '%s'",
"service_add_failed" : "Unable to add service '%s'",
"service_unknown" : "Unknown service '{:s}'",
"service_add_failed" : "Unable to add service '{:s}'",
"service_added" : "Service successfully added",
"service_remove_failed" : "Unable to remove service '%s'",
"service_remove_failed" : "Unable to remove service '{:s}'",
"service_removed" : "Service successfully removed",
"service_start_failed" : "Unable to start service '%s'",
"service_already_started" : "Service '%s' is already started",
"service_started" : "Service '%s' successfully started",
"service_stop_failed" : "Unable to stop service '%s'",
"service_already_stopped" : "Service '%s' is already stopped",
"service_stopped" : "Service '%s' successfully stopped",
"service_enable_failed" : "Unable to enable service '%s'",
"service_enabled" : "Service '%s' successfully enabled",
"service_disable_failed" : "Unable to disable service '%s'",
"service_disabled" : "Service '%s' successfully disabled",
"service_status_failed" : "Unable to determine status of service '%s'",
"service_no_log" : "No log to display for service '%s'",
"service_cmd_exec_failed" : "Unable to execute command '%s'",
"service_start_failed" : "Unable to start service '{:s}'",
"service_already_started" : "Service '{:s}' is already started",
"service_started" : "Service '{:s}' successfully started",
"service_stop_failed" : "Unable to stop service '{:s}'",
"service_already_stopped" : "Service '{:s}' is already stopped",
"service_stopped" : "Service '{:s}' successfully stopped",
"service_enable_failed" : "Unable to enable service '{:s}'",
"service_enabled" : "Service '{:s}' successfully enabled",
"service_disable_failed" : "Unable to disable service '{:s}'",
"service_disabled" : "Service '{:s}' successfully disabled",
"service_status_failed" : "Unable to determine status of service '{:s}'",
"service_no_log" : "No log to display for service '{:s}'",
"service_cmd_exec_failed" : "Unable to execute command '{:s}'",
"ldap_initialized" : "LDAP successfully initialized",
"password_too_short" : "Password is too short",
@ -118,15 +118,15 @@
"updating_apt_cache" : "Updating the lists of available packages...",
"update_cache_failed" : "Unable to update APT cache",
"packages_no_upgrade" : "There is no package to upgrade",
"packages_upgrade_critical_later" : "Critical packages (%s) will be upgraded later",
"packages_upgrade_critical_later" : "Critical packages ({:s}) will be upgraded later",
"upgrading_packages" : "Upgrading packages...",
"packages_upgrade_failed" : "Unable to upgrade all packages",
"system_upgraded" : "System successfully upgraded",
"field_invalid" : "Invalid field '%s'",
"mail_domain_unknown" : "Unknown mail address domain '%s'",
"mail_alias_remove_failed" : "Unable to remove mail alias '%s'",
"mail_forward_remove_failed" : "Unable to remove mail forward '%s'",
"field_invalid" : "Invalid field '{:s}'",
"mail_domain_unknown" : "Unknown mail address domain '{:s}'",
"mail_alias_remove_failed" : "Unable to remove mail alias '{:s}'",
"mail_forward_remove_failed" : "Unable to remove mail forward '{:s}'",
"user_unknown" : "Unknown user",
"user_creation_failed" : "Unable to create user",
"user_created" : "User successfully created",

View file

@ -14,13 +14,13 @@
"appslist_removed" : "Liste d'applications supprimée avec succès",
"app_unknown" : "Application inconnue",
"app_no_upgrade" : "Aucune application à mettre à jour",
"app_not_installed" : "%s n'est pas installé",
"custom_app_url_required" : "Vous devez spécifier une URL pour mettre à jour votre application locale %s",
"app_recent_version_required" : "%s nécessite une version plus récente de la moulinette",
"app_upgraded" : "%s mis à jour avec succès",
"app_not_installed" : "{:s} n'est pas installé",
"custom_app_url_required" : "Vous devez spécifier une URL pour mettre à jour votre application locale {:s}",
"app_recent_version_required" : "{:s} nécessite une version plus récente de la moulinette",
"app_upgraded" : "{:s} mis à jour avec succès",
"app_id_invalid" : "Id d'application incorrect",
"app_already_installed" : "%s est déjà installé",
"app_removed" : "%s supprimé avec succès",
"app_already_installed" : "{:s} est déjà installé",
"app_removed" : "{:s} supprimé avec succès",
"app_location_already_used" : "Une application est déjà installé à cet emplacement",
"app_location_install_failed" : "Impossible d'installer l'application à cet emplacement",
"app_extraction_failed" : "Impossible d'extraire les fichiers d'installation",
@ -53,7 +53,7 @@
"dyndns_key_generating" : "La clé DNS est en cours de génération, cela peut prendre du temps...",
"dyndns_unavailable" : "Sous-domaine DynDNS indisponible",
"dyndns_registration_failed" : "Impossible d'enregistrer le domaine DynDNS : %s",
"dyndns_registration_failed" : "Impossible d'enregistrer le domaine DynDNS : {:s}",
"dyndns_registered" : "Domaine DynDNS enregistré avec succès",
"dyndns_ip_update_failed" : "Impossible de mettre à jour l'adresse IP sur le domaine DynDNS",
"dyndns_ip_updated" : "Adresse IP mise à jour avec succès sur le domaine DynDNS",
@ -61,10 +61,10 @@
"dyndns_cron_remove_failed" : "Impossible d'enlever la tâche cron pour DynDNS",
"dyndns_cron_removed" : "Tâche cron pour DynDNS enlevée avec succès",
"port_available" : "Le port %d est disponible",
"port_unavailable" : "Le port %d n'est pas disponible",
"port_already_opened" : "Le port %d est déjà ouvert",
"port_already_closed" : "Le port %d est déjà fermé",
"port_available" : "Le port {:d} est disponible",
"port_unavailable" : "Le port {:d} n'est pas disponible",
"port_already_opened" : "Le port {:d} est déjà ouvert",
"port_already_closed" : "Le port {:d} est déjà fermé",
"iptables_unavailable" : "Vous ne pouvez pas faire joujou avec iptables ici. Vous êtes sûrement dans un conteneur, autrement votre noyau ne le supporte pas.",
"upnp_dev_not_found" : "Aucun périphérique compatible uPnP trouvé",
"upnp_port_open_failed" : "Impossible d'ouvrir les ports avec uPnP",
@ -72,11 +72,11 @@
"upnp_disabled" : "uPnP désactivé avec succès",
"firewall_reloaded" : "Pare-feu rechargé avec succès",
"hook_choice_invalid" : "Choix incorrect : '%s'",
"hook_argument_missing" : "Argument manquant : '%s'",
"hook_choice_invalid" : "Choix incorrect : '{:s}'",
"hook_argument_missing" : "Argument manquant : '{:s}'",
"mountpoint_unknown" : "Point de montage inconnu",
"unit_unknown" : "Unité '%s' inconnue",
"unit_unknown" : "Unité '{:s}' inconnue",
"monitor_period_invalid" : "Période de temps incorrect",
"monitor_stats_no_update" : "Aucune donnée de l'état du serveur à mettre à jour",
"monitor_stats_file_not_found" : "Fichier de données de l'état du serveur introuvable",
@ -86,24 +86,24 @@
"monitor_not_enabled" : "Le suivi de l'état du serveur n'est pas activé",
"monitor_glances_con_failed" : "Impossible de se connecter au serveur Glances",
"service_unknown" : "Service '%s' inconnu",
"service_add_failed" : "Impossible d'ajouter le service '%s'",
"service_unknown" : "Service '{:s}' inconnu",
"service_add_failed" : "Impossible d'ajouter le service '{:s}'",
"service_added" : "Service ajouté avec succès",
"service_remove_failed" : "Impossible d'enlever le service '%s'",
"service_remove_failed" : "Impossible d'enlever le service '{:s}'",
"service_removed" : "Service enlevé avec succès",
"service_start_failed" : "Impossible de démarrer le service '%s'",
"service_already_started" : "Le service '%s' est déjà démarré",
"service_started" : "Service '%s' démarré avec succès",
"service_stop_failed" : "Impossible d'arrêter le service '%s'",
"service_already_stopped" : "Le service '%s' est déjà arrêté",
"service_stopped" : "Service '%s' arrêté avec succès",
"service_enable_failed" : "Impossible d'activer le service '%s'",
"service_enabled" : "Service '%s' activé avec succès",
"service_disable_failed" : "Impossible de désactiver le service '%s'",
"service_disabled" : "Service '%s' désactivé avec succès",
"service_status_failed" : "Impossible de déterminer le statut du service '%s'",
"service_no_log" : "Aucun journal a afficher pour le service '%s'",
"service_cmd_exec_failed" : "Impossible d'exécuter la commande '%s'",
"service_start_failed" : "Impossible de démarrer le service '{:s}'",
"service_already_started" : "Le service '{:s}' est déjà démarré",
"service_started" : "Service '{:s}' démarré avec succès",
"service_stop_failed" : "Impossible d'arrêter le service '{:s}'",
"service_already_stopped" : "Le service '{:s}' est déjà arrêté",
"service_stopped" : "Service '{:s}' arrêté avec succès",
"service_enable_failed" : "Impossible d'activer le service '{:s}'",
"service_enabled" : "Service '{:s}' activé avec succès",
"service_disable_failed" : "Impossible de désactiver le service '{:s}'",
"service_disabled" : "Service '{:s}' désactivé avec succès",
"service_status_failed" : "Impossible de déterminer le statut du service '{:s}'",
"service_no_log" : "Aucun journal a afficher pour le service '{:s}'",
"service_cmd_exec_failed" : "Impossible d'exécuter la commande '{:s}'",
"ldap_initialized" : "Répertoire LDAP initialisé avec succès",
"password_too_short" : "Le mot de passe est trop court",
@ -118,15 +118,15 @@
"updating_apt_cache" : "Mise à jour de la liste des paquets disponibles...",
"update_cache_failed" : "Impossible de mettre à jour le cache de l'APT",
"packages_no_upgrade" : "Il n'y a aucun paquet à mettre à jour",
"packages_upgrade_critical_later" : "Les paquets critiques (%s) seront mis à jour plus tard",
"packages_upgrade_critical_later" : "Les paquets critiques ({:s}) seront mis à jour plus tard",
"upgrading_packages" : "Mise à jour des paquets...",
"packages_upgrade_failed" : "Impossible de mettre à jour tous les paquets",
"system_upgraded" : "Système mis à jour avec succès",
"field_invalid" : "Champ incorrect : %s",
"mail_domain_unknown" : "Domaine '%s' de l'adresse mail inconnu",
"mail_alias_remove_failed" : "Impossible de supprimer l'adresse mail supplémentaire '%s'",
"mail_forward_remove_failed" : "Impossible de supprimer l'adresse mail de transfert '%s'",
"field_invalid" : "Champ incorrect : {:s}",
"mail_domain_unknown" : "Domaine '{:s}' de l'adresse mail inconnu",
"mail_alias_remove_failed" : "Impossible de supprimer l'adresse mail supplémentaire '{:s}'",
"mail_forward_remove_failed" : "Impossible de supprimer l'adresse mail de transfert '{:s}'",
"user_unknown" : "Utilisateur inconnu",
"user_creation_failed" : "Impossible de créer l'utilisateur",
"user_created" : "Utilisateur créé avec succès",

View file

@ -132,7 +132,7 @@ def monitor_disk(units=None, mountpoint=None, human_readable=False):
for dname in devices_names:
_set(dname, 'not-available')
else:
raise MoulinetteError(errno.EINVAL, m18n.n('unit_unknown') % u)
raise MoulinetteError(errno.EINVAL, m18n.n('unit_unknown', u))
if result_dname is not None:
return result[result_dname]
@ -204,7 +204,7 @@ def monitor_network(units=None, human_readable=False):
'gateway': gateway
}
else:
raise MoulinetteError(errno.EINVAL, m18n.n('unit_unknown') % u)
raise MoulinetteError(errno.EINVAL, m18n.n('unit_unknown', u))
if len(units) == 1:
return result[units[0]]
@ -254,7 +254,7 @@ def monitor_system(units=None, human_readable=False):
elif u == 'infos':
result[u] = json.loads(glances.getSystem())
else:
raise MoulinetteError(errno.EINVAL, m18n.n('unit_unknown') % u)
raise MoulinetteError(errno.EINVAL, m18n.n('unit_unknown', u))
if len(units) == 1 and type(result[units[0]]) is not str:
return result[units[0]]

View file

@ -59,7 +59,7 @@ def service_add(name, status=None, log=None, runlevel=None):
try:
_save_services(services)
except:
raise MoulinetteError(errno.EIO, m18n.n('service_add_failed') % name)
raise MoulinetteError(errno.EIO, m18n.n('service_add_failed', name))
msignals.display(m18n.n('service_added'), 'success')
@ -77,12 +77,12 @@ def service_remove(name):
try:
del services[name]
except KeyError:
raise MoulinetteError(errno.EINVAL, m18n.n('service_unknown') % name)
raise MoulinetteError(errno.EINVAL, m18n.n('service_unknown', name))
try:
_save_services(services)
except:
raise MoulinetteError(errno.EIO, m18n.n('service_remove_failed') % name)
raise MoulinetteError(errno.EIO, m18n.n('service_remove_failed', name))
msignals.display(m18n.n('service_removed'), 'success')
@ -99,12 +99,12 @@ def service_start(names):
names = [names]
for name in names:
if _run_service_command('start', name):
msignals.display(m18n.n('service_started') % name, 'success')
msignals.display(m18n.n('service_started', name), 'success')
else:
if service_status(name)['status'] != 'running':
raise MoulinetteError(errno.EPERM,
m18n.n('service_start_failed') % name)
msignals.display(m18n.n('service_already_started') % name)
m18n.n('service_start_failed', name))
msignals.display(m18n.n('service_already_started', name))
def service_stop(names):
@ -119,12 +119,12 @@ def service_stop(names):
names = [names]
for name in names:
if _run_service_command('stop', name):
msignals.display(m18n.n('service_stopped') % name, 'success')
msignals.display(m18n.n('service_stopped', name), 'success')
else:
if service_status(name)['status'] != 'inactive':
raise MoulinetteError(errno.EPERM,
m18n.n('service_stop_failed') % name)
msignals.display(m18n.n('service_already_stopped') % name)
m18n.n('service_stop_failed', name))
msignals.display(m18n.n('service_already_stopped', name))
def service_enable(names):
@ -139,10 +139,10 @@ def service_enable(names):
names = [names]
for name in names:
if _run_service_command('enable', name):
msignals.display(m18n.n('service_enabled') % name, 'success')
msignals.display(m18n.n('service_enabled', name), 'success')
else:
raise MoulinetteError(errno.EPERM,
m18n.n('service_enable_failed') % name)
m18n.n('service_enable_failed', name))
def service_disable(names):
@ -157,10 +157,10 @@ def service_disable(names):
names = [names]
for name in names:
if _run_service_command('disable', name):
msignals.display(m18n.n('service_disabled') % name, 'success')
msignals.display(m18n.n('service_disabled', name), 'success')
else:
raise MoulinetteError(errno.EPERM,
m18n.n('service_disable_failed') % name)
m18n.n('service_disable_failed', name))
def service_status(names=[]):
@ -184,7 +184,7 @@ def service_status(names=[]):
for name in names:
if check_names and name not in services.keys():
raise MoulinetteError(errno.EINVAL,
m18n.n('service_unknown') % name)
m18n.n('service_unknown', name))
status = None
if services[name]['status'] == 'service':
@ -206,7 +206,7 @@ def service_status(names=[]):
result[name]['status'] = 'inactive'
else:
# TODO: Log output?
msignals.display(m18n.n('service_status_failed') % name,
msignals.display(m18n.n('service_status_failed', name),
'warning')
else:
result[name]['status'] = 'running'
@ -237,7 +237,7 @@ def service_log(name, number=50):
services = _get_services()
if name not in services.keys():
raise MoulinetteError(errno.EINVAL, m18n.n('service_unknown') % name)
raise MoulinetteError(errno.EINVAL, m18n.n('service_unknown', name))
if 'log' in services[name]:
log_list = services[name]['log']
@ -252,7 +252,7 @@ def service_log(name, number=50):
else:
result[log_path] = _tail(log_path, int(number))
else:
raise MoulinetteError(errno.EPERM, m18n.n('service_no_log') % name)
raise MoulinetteError(errno.EPERM, m18n.n('service_no_log', name))
return result
@ -267,7 +267,7 @@ def _run_service_command(action, service):
"""
if service not in _get_services().keys():
raise MoulinetteError(errno.EINVAL, m18n.n('service_unknown') % name)
raise MoulinetteError(errno.EINVAL, m18n.n('service_unknown', name))
cmd = None
if action in ['start', 'stop']:
@ -282,7 +282,7 @@ def _run_service_command(action, service):
ret = subprocess.check_output(cmd.split(), stderr=subprocess.STDOUT)
except subprocess.CalledProcessError as e:
# TODO: Log output?
msignals.display(m18n.n('service_cmd_exec_failed') % ' '.join(e.cmd),
msignals.display(m18n.n('service_cmd_exec_failed', ' '.join(e.cmd)),
'warning')
return False
return True

View file

@ -400,8 +400,8 @@ def tools_upgrade(ignore_apps=False, ignore_packages=False):
pkg.mark_keep()
# ... and set a hourly cron up to upgrade critical packages
if critical_upgrades:
msignals.display(m18n.n('packages_upgrade_critical_later')
% ', '.join(critical_upgrades))
msignals.display(m18n.n('packages_upgrade_critical_later',
', '.join(critical_upgrades)))
with open('/etc/cron.d/yunohost-upgrade', 'w+') as f:
f.write('00 * * * * root PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin apt-get install %s -y && rm -f /etc/cron.d/yunohost-upgrade' % ' '.join(critical_upgrades))

18
user.py
View file

@ -66,7 +66,7 @@ def user_list(auth, fields=None, filter=None, limit=None, offset=None):
attrs.append(attr)
else:
raise MoulinetteError(errno.EINVAL,
m18n.n('field_invalid') % attr)
m18n.n('field_invalid', attr))
else:
attrs = [ 'uid', 'cn', 'mail' ]
@ -110,8 +110,8 @@ def user_create(auth, username, firstname, lastname, mail, password):
if mail[mail.find('@')+1:] not in domain_list(auth)['domains']:
raise MoulinetteError(errno.EINVAL,
m18n.n('mail_domain_unknown')
% mail[mail.find('@')+1:])
m18n.n('mail_domain_unknown',
mail[mail.find('@')+1:]))
# Get random UID/GID
uid_check = gid_check = 0
@ -267,8 +267,8 @@ def user_update(auth, username, firstname=None, lastname=None, mail=None, change
auth.validate_uniqueness({ 'mail': mail })
if mail[mail.find('@')+1:] not in domains:
raise MoulinetteError(errno.EINVAL,
m18n.n('mail_domain_unknown')
% mail[mail.find('@')+1:])
m18n.n('mail_domain_unknown',
mail[mail.find('@')+1:]))
del user['mail'][0]
new_attr_dict['mail'] = [mail] + user['mail']
@ -279,8 +279,8 @@ def user_update(auth, username, firstname=None, lastname=None, mail=None, change
auth.validate_uniqueness({ 'mail': mail })
if mail[mail.find('@')+1:] not in domains:
raise MoulinetteError(errno.EINVAL,
m18n.n('mail_domain_unknown')
% mail[mail.find('@')+1:])
m18n.n('mail_domain_unknown',
mail[mail.find('@')+1:]))
user['mail'].append(mail)
new_attr_dict['mail'] = user['mail']
@ -292,7 +292,7 @@ def user_update(auth, username, firstname=None, lastname=None, mail=None, change
user['mail'].remove(mail)
else:
raise MoulinetteError(errno.EINVAL,
m18n.n('mail_alias_remove_failed') % mail)
m18n.n('mail_alias_remove_failed', mail))
new_attr_dict['mail'] = user['mail']
if add_mailforward:
@ -312,7 +312,7 @@ def user_update(auth, username, firstname=None, lastname=None, mail=None, change
user['maildrop'].remove(mail)
else:
raise MoulinetteError(errno.EINVAL,
m18n.n('mail_forward_remove_failed') % mail)
m18n.n('mail_forward_remove_failed', mail))
new_attr_dict['maildrop'] = user['maildrop']
if auth.update('uid=%s,ou=users' % username, new_attr_dict):