-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathadmin_mrt.rb
More file actions
117 lines (105 loc) · 3.27 KB
/
admin_mrt.rb
File metadata and controls
117 lines (105 loc) · 3.27 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
# frozen_string_literal: true
require 'sinatra'
require 'sinatra/base'
require 'sinatra/contrib'
require_relative 'admin_common'
require_relative 'lib/routes/home'
require_relative 'lib/routes/code'
require_relative 'lib/routes/resources'
require_relative 'lib/routes/services'
require_relative 'lib/routes/query'
require_relative 'lib/routes/ldap'
require_relative 'lib/routes/mrtzk'
require_relative 'lib/routes/config'
require_relative 'lib/routes/metrics'
require_relative 'lib/routes/opensearch'
set :bind, '0.0.0.0'
include Sinatra::UC3HomeRoutes
include Sinatra::UC3CodeRoutes
include Sinatra::UC3ResourcesRoutes
include Sinatra::UC3ServicesRoutes
include Sinatra::UC3QueryRoutes
include Sinatra::UC3LdapRoutes
include Sinatra::UC3S3Routes
Sinatra::UC3HomeRoutes.load_menu_file('app/config/mrt/menu.yml')
AdminUI::Context.css = '/mrt/custom.css'
AdminUI::Context.index_md = 'app/markdown/mrt/index.md'
register Sinatra::Contrib
get '/' do
supp = UC3S3::ConfigObjectsClient.client.get_doc_page('support.md')
if supp.empty?
fname = "app/markdown/mrt/#{UC3::UC3Client.stack_name}.md"
if File.exist?(fname)
adminui_show_markdown(
AdminUI::Context.new(request.path, request.params, show_formats: false),
fname
)
else
adminui_show_markdown(
AdminUI::Context.new(request.path, request.params, show_formats: false),
AdminUI::Context.index_md
)
end
else
adminui_show_markdown_text(
AdminUI::Context.new(request.path, request.params, show_formats: false),
supp
)
end
end
get '/context' do
adminui_show_table(
AdminUI::Context.new(request.path, request.params),
UC3::UC3Client.client.context
)
end
get '/clients' do
begin
puts "Init UC3Client #{Time.now}"
UC3::UC3Client.client
puts "Init FileSystemClient #{Time.now}"
UC3::FileSystemClient.client
puts "Init QueryClient #{Time.now}"
UC3Query::QueryClient.client
puts "Init ZKClient #{Time.now}"
UC3Queue::ZKClient.client
puts "Init SourceCodeClient #{Time.now}"
UC3Code::SourceCodeClient.client
puts "Init InstancesClient #{Time.now}"
UC3Resources::InstancesClient.client
puts "Init ParametersClient #{Time.now}"
UC3Resources::ParametersClient.client
puts "Init ServicesClient #{Time.now}"
UC3Resources::ServicesClient.client
puts "Init BucketsClient #{Time.now}"
UC3Resources::BucketsClient.client
puts "Init FunctionsClient #{Time.now}"
UC3Resources::FunctionsClient.client
puts "Init LoadBalancerClient #{Time.now}"
UC3Resources::LoadBalancerClient.client
puts "Init LDAPClient #{Time.now}"
UC3Ldap::LDAPClient.client
puts "Init ConfigObjectsClient #{Time.now}"
UC3S3::ConfigObjectsClient.client
puts "Init OSClient #{Time.now}"
UC3OpenSearch::OSClient.client
puts "Init TestClient #{Time.now}"
UC3::TestClient.client
rescue StandardError => e
puts "Error initializing clients: #{e.message}"
puts e.backtrace.join("\n")
end
adminui_show_table(
AdminUI::Context.new(request.path, request.params),
UC3::UC3Client.client.client_list
)
end
get '/**' do
adminui_show_none(
AdminUI::Context.new(request.path, request.params, show_formats: false)
)
end
post '/hello' do
content_type :json
{ message: 'Hello' }.to_json
end