Software /
code /
prosody
Comparison
prosodyctl @ 10188:dbd9880bf5c6
prosodyctl: The install, remove and list commands now work by calling the execute_command function
author | João Duarte <jvsDuarte08@gmail.com> |
---|---|
date | Wed, 31 Jul 2019 11:01:36 -0700 |
parent | 10186:520e879a40f2 |
child | 10190:f506964a1123 |
comparison
equal
deleted
inserted
replaced
10187:85725e11c509 | 10188:dbd9880bf5c6 |
---|---|
74 local show_message, show_warning = prosodyctl.show_message, prosodyctl.show_warning; | 74 local show_message, show_warning = prosodyctl.show_message, prosodyctl.show_warning; |
75 local show_usage = prosodyctl.show_usage; | 75 local show_usage = prosodyctl.show_usage; |
76 local show_yesno = prosodyctl.show_yesno; | 76 local show_yesno = prosodyctl.show_yesno; |
77 local show_prompt = prosodyctl.show_prompt; | 77 local show_prompt = prosodyctl.show_prompt; |
78 local read_password = prosodyctl.read_password; | 78 local read_password = prosodyctl.read_password; |
79 local check_flags = prosodyctl.check_flags; | 79 local execute_command = prosodyctl.execute_command; |
80 local call_luarocks = prosodyctl.call_luarocks; | |
81 local get_path_custom_plugins = prosodyctl.get_path_custom_plugins; | |
82 | 80 |
83 local jid_split = require "util.jid".prepped_split; | 81 local jid_split = require "util.jid".prepped_split; |
84 | 82 |
85 local prosodyctl_timeout = (configmanager.get("*", "prosodyctl_timeout") or 5) * 2; | 83 local prosodyctl_timeout = (configmanager.get("*", "prosodyctl_timeout") or 5) * 2; |
86 ----------------------- | 84 ----------------------- |
90 function commands.install(arg) | 88 function commands.install(arg) |
91 if arg[1] == "--help" then | 89 if arg[1] == "--help" then |
92 show_usage([[install]], [[Installs a prosody/luarocks plugin]]); | 90 show_usage([[install]], [[Installs a prosody/luarocks plugin]]); |
93 return 1; | 91 return 1; |
94 end | 92 end |
95 local operation = "install"; | 93 table.insert(arg, "install"); |
96 local tree, mod, dir = check_flags(arg); | 94 execute_command(arg); |
97 if tree then | |
98 call_luarocks(operation, mod, dir); | |
99 return 0; | |
100 else | |
101 dir = get_path_custom_plugins(prosody.paths.plugins); | |
102 call_luarocks(operation, mod, dir); | |
103 return 0; | |
104 end | |
105 end | 95 end |
106 | 96 |
107 function commands.remove(arg) | 97 function commands.remove(arg) |
108 if arg[1] == "--help" then | 98 if arg[1] == "--help" then |
109 show_usage([[remove]], [[Removes a module installed in the wroking directory's plugins folder]]); | 99 show_usage([[remove]], [[Removes a module installed in the wroking directory's plugins folder]]); |
110 return 1; | 100 return 1; |
111 end | 101 end |
112 local operation = "remove"; | 102 table.insert(arg, "remove"); |
113 local tree, mod, dir = check_flags(arg); | 103 execute_command(arg); |
114 if tree then | |
115 call_luarocks(operation, mod, dir); | |
116 return 0; | |
117 else | |
118 dir = get_path_custom_plugins(prosody.paths.plugins); | |
119 call_luarocks(operation, mod, dir); | |
120 return 0; | |
121 end | |
122 end | 104 end |
123 | 105 |
124 function commands.list(arg) | 106 function commands.list(arg) |
125 if arg[1] == "--help" then | 107 if arg[1] == "--help" then |
126 show_usage([[list]], [[Shows installed rocks]]); | 108 show_usage([[list]], [[Shows installed rocks]]); |
127 return 1; | 109 return 1; |
128 end | 110 end |
129 local operation = "list"; | 111 table.insert(arg, "list"); |
130 local tree, mod, dir = check_flags(arg); | 112 execute_command(arg); |
131 if tree then | |
132 call_luarocks(operation, mod, dir); | |
133 return 0; | |
134 else | |
135 dir = get_path_custom_plugins(prosody.paths.plugins); | |
136 call_luarocks(operation, mod, dir); | |
137 return 0; | |
138 end | |
139 end | 113 end |
140 | 114 |
141 function commands.enabled_plugins(arg) | 115 function commands.enabled_plugins(arg) |
142 if arg[1] == "--help" then | 116 if arg[1] == "--help" then |
143 show_usage([[enabled_plugins]], [[Shows plugins currently enabled on prosody]]); | 117 show_usage([[enabled_plugins]], [[Shows plugins currently enabled on prosody]]); |