Mercurial > prosody-modules
annotate mod_discodot/mod_discodot.tl @ 5466:398d936e77fb
mod_http_oauth2: Add support for the OpenID 'login_hint' parameter
This allows the client to suggest to the authorization screen which user
is trying to login, so they don't have to fill that in twice if they
already did so at the client.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Wed, 17 May 2023 18:49:22 +0200 |
parents | 253df0798996 |
children |
rev | line source |
---|---|
4577
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
1 local cm = require"core.configmanager"; |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
2 |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
3 local function format_host(host:string, conf:{string:any}) : string |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
4 if host == "*" then |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
5 return "Global"; |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
6 end |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
7 local component_module = conf["component_module"]; |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
8 if component_module is string then |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
9 if component_module == "component" then |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
10 return string.format("Component %q", host); |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
11 else |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
12 return string.format("Component %q %q", host, component_module); |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
13 end |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
14 else |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
15 return string.format("VirtualHost %q", host); |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
16 end |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
17 end |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
18 |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
19 function module.command(arg : { string }) : integer |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
20 |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
21 local config : { string : { string : any } } = cm.getconfig(); |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
22 |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
23 print"digraph \"prosody\" {" |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
24 for host, conf in pairs(config) do |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
25 print(string.format("%q [label=%q]", host, format_host(host, conf))); |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
26 local parent = host:match("%.(.*)"); |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
27 if parent and rawget(config, parent) then |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
28 print(string.format("%q -> %q", parent, host)); |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
29 end |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
30 local disco_items = conf["disco_items"] |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
31 if disco_items is { { string, string } } then |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
32 for _, pair in ipairs(disco_items) do |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
33 print(string.format("%q -> %q", host, pair[1])); |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
34 end |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
35 end |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
36 |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
37 end |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
38 |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
39 print"}" |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
40 |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
41 return 0 |
253df0798996
mod_discodot: Print a graph of service discovery
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
42 end |