Diff

prosodyctl @ 10609:f35cbfe546d1

Merge 0.11->trunk
author Matthew Wild <mwild1@gmail.com>
date Thu, 23 Jan 2020 21:44:42 +0000
parent 10579:16099e8964d8
parent 10608:87003b937672
child 10611:c10511380c0f
line wrap: on
line diff
--- a/prosodyctl	Sun Jan 19 16:01:29 2020 +0000
+++ b/prosodyctl	Thu Jan 23 21:44:42 2020 +0000
@@ -222,11 +222,25 @@
 	return 1;
 end
 
+local function service_command_warning(command)
+	if prosody.installed and configmanager.get("*", "prosodyctl_service_warnings") ~= false then
+		show_warning("WARNING: Use of prosodyctl start/stop/restart/reload is not recommended");
+		show_warning("         if Prosody is managed by an init system - use that directly instead.");
+		if lfs.attributes("/etc/systemd") then
+			show_warning("         e.g. systemctl %s prosody", command);
+		elseif lfs.attributes("/etc/init.d/prosody") then
+			show_warning("         e.g. /etc/init.d/prosody %s", command);
+		end
+		show_warning("");
+	end
+end
+
 function commands.start(arg)
 	if arg[1] == "--help" then
 		show_usage([[start]], [[Start Prosody]]);
 		return 1;
 	end
+	service_command_warning("start");
 	local ok, ret = prosodyctl.isrunning();
 	if not ok then
 		show_message(error_messages[ret]);
@@ -325,6 +339,8 @@
 		return 1;
 	end
 
+	service_command_warning("stop");
+
 	if not prosodyctl.isrunning() then
 		show_message("Prosody is not running");
 		return 1;
@@ -360,6 +376,8 @@
 		return 1;
 	end
 
+	service_command_warning("restart");
+
 	commands.stop(arg);
 	return commands.start(arg);
 end
@@ -460,6 +478,8 @@
 		return 1;
 	end
 
+	service_command_warning("reload");
+
 	if not prosodyctl.isrunning() then
 		show_message("Prosody is not running");
 		return 1;