cloudmunch_sdk_v3 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. checksums.yaml +7 -0
  2. data/lib/cloudmunch_Ruby_sdk_v2/AppAbstract.rb +146 -0
  3. data/lib/cloudmunch_Ruby_sdk_v2/AppContext.rb +59 -0
  4. data/lib/cloudmunch_Ruby_sdk_v2/AssetHelper.rb +127 -0
  5. data/lib/cloudmunch_Ruby_sdk_v2/CloudmunchConstants.rb +24 -0
  6. data/lib/cloudmunch_Ruby_sdk_v2/CloudmunchService.rb +249 -0
  7. data/lib/cloudmunch_Ruby_sdk_v2/ElasticBeanStalkServer.rb +52 -0
  8. data/lib/cloudmunch_Ruby_sdk_v2/EnvironmentHelper.rb +292 -0
  9. data/lib/cloudmunch_Ruby_sdk_v2/InsightHelper.rb +770 -0
  10. data/lib/cloudmunch_Ruby_sdk_v2/IntegrationHelper.rb +69 -0
  11. data/lib/cloudmunch_Ruby_sdk_v2/PluginLoaderAbstract.rb +140 -0
  12. data/lib/cloudmunch_Ruby_sdk_v2/PluginReporterAbstract.rb +141 -0
  13. data/lib/cloudmunch_Ruby_sdk_v2/RoleHelper.rb +170 -0
  14. data/lib/cloudmunch_Ruby_sdk_v2/Server.rb +77 -0
  15. data/lib/cloudmunch_Ruby_sdk_v2/ServerHelper.rb +284 -0
  16. data/lib/cloudmunch_Ruby_sdk_v2/ServiceProvider.rb +25 -0
  17. data/lib/cloudmunch_Ruby_sdk_v2/Util.rb +119 -0
  18. data/lib/cloudmunch_Ruby_sdk_v2/doc/AppAbstract.html +1062 -0
  19. data/lib/cloudmunch_Ruby_sdk_v2/doc/AppContext.html +1402 -0
  20. data/lib/cloudmunch_Ruby_sdk_v2/doc/AssetHelper.html +694 -0
  21. data/lib/cloudmunch_Ruby_sdk_v2/doc/Cloudmunch.html +117 -0
  22. data/lib/cloudmunch_Ruby_sdk_v2/doc/CloudmunchConstants.html +184 -0
  23. data/lib/cloudmunch_Ruby_sdk_v2/doc/CloudmunchService.html +1195 -0
  24. data/lib/cloudmunch_Ruby_sdk_v2/doc/ElasticBeanStalkServer.html +1375 -0
  25. data/lib/cloudmunch_Ruby_sdk_v2/doc/InsightHelper.html +2889 -0
  26. data/lib/cloudmunch_Ruby_sdk_v2/doc/IntegrationHelper.html +400 -0
  27. data/lib/cloudmunch_Ruby_sdk_v2/doc/RoleHelper.html +809 -0
  28. data/lib/cloudmunch_Ruby_sdk_v2/doc/Server.html +2302 -0
  29. data/lib/cloudmunch_Ruby_sdk_v2/doc/ServerHelper.html +1181 -0
  30. data/lib/cloudmunch_Ruby_sdk_v2/doc/ServiceProvider.html +328 -0
  31. data/lib/cloudmunch_Ruby_sdk_v2/doc/Util.html +540 -0
  32. data/lib/cloudmunch_Ruby_sdk_v2/doc/_index.html +214 -0
  33. data/lib/cloudmunch_Ruby_sdk_v2/doc/class_list.html +58 -0
  34. data/lib/cloudmunch_Ruby_sdk_v2/doc/css/common.css +1 -0
  35. data/lib/cloudmunch_Ruby_sdk_v2/doc/css/full_list.css +57 -0
  36. data/lib/cloudmunch_Ruby_sdk_v2/doc/css/style.css +339 -0
  37. data/lib/cloudmunch_Ruby_sdk_v2/doc/file_list.html +57 -0
  38. data/lib/cloudmunch_Ruby_sdk_v2/doc/frames.html +26 -0
  39. data/lib/cloudmunch_Ruby_sdk_v2/doc/index.html +214 -0
  40. data/lib/cloudmunch_Ruby_sdk_v2/doc/js/app.js +219 -0
  41. data/lib/cloudmunch_Ruby_sdk_v2/doc/js/full_list.js +181 -0
  42. data/lib/cloudmunch_Ruby_sdk_v2/doc/js/jquery.js +4 -0
  43. data/lib/cloudmunch_Ruby_sdk_v2/doc/method_list.html +993 -0
  44. data/lib/cloudmunch_Ruby_sdk_v2/doc/top-level-namespace.html +114 -0
  45. data/lib/cloudmunch_Ruby_sdk_v2/version.rb +3 -0
  46. data/lib/cloudmunch_Ruby_sdk_v3/AppAbstract.rb +146 -0
  47. data/lib/cloudmunch_Ruby_sdk_v3/AppContext.rb +59 -0
  48. data/lib/cloudmunch_Ruby_sdk_v3/AssetHelper.rb +127 -0
  49. data/lib/cloudmunch_Ruby_sdk_v3/CloudmunchConstants.rb +24 -0
  50. data/lib/cloudmunch_Ruby_sdk_v3/CloudmunchService.rb +300 -0
  51. data/lib/cloudmunch_Ruby_sdk_v3/ElasticBeanStalkServer.rb +52 -0
  52. data/lib/cloudmunch_Ruby_sdk_v3/EnvironmentHelper.rb +292 -0
  53. data/lib/cloudmunch_Ruby_sdk_v3/InsightHelper.rb +770 -0
  54. data/lib/cloudmunch_Ruby_sdk_v3/IntegrationHelper.rb +69 -0
  55. data/lib/cloudmunch_Ruby_sdk_v3/PluginLoaderAbstract.rb +140 -0
  56. data/lib/cloudmunch_Ruby_sdk_v3/PluginReporterAbstract.rb +141 -0
  57. data/lib/cloudmunch_Ruby_sdk_v3/RoleHelper.rb +170 -0
  58. data/lib/cloudmunch_Ruby_sdk_v3/Server.rb +77 -0
  59. data/lib/cloudmunch_Ruby_sdk_v3/ServerHelper.rb +284 -0
  60. data/lib/cloudmunch_Ruby_sdk_v3/ServiceProvider.rb +25 -0
  61. data/lib/cloudmunch_Ruby_sdk_v3/Util.rb +119 -0
  62. data/lib/cloudmunch_Ruby_sdk_v3/doc/AppAbstract.html +1062 -0
  63. data/lib/cloudmunch_Ruby_sdk_v3/doc/AppContext.html +1402 -0
  64. data/lib/cloudmunch_Ruby_sdk_v3/doc/AssetHelper.html +694 -0
  65. data/lib/cloudmunch_Ruby_sdk_v3/doc/Cloudmunch.html +117 -0
  66. data/lib/cloudmunch_Ruby_sdk_v3/doc/CloudmunchConstants.html +184 -0
  67. data/lib/cloudmunch_Ruby_sdk_v3/doc/CloudmunchService.html +1195 -0
  68. data/lib/cloudmunch_Ruby_sdk_v3/doc/ElasticBeanStalkServer.html +1375 -0
  69. data/lib/cloudmunch_Ruby_sdk_v3/doc/InsightHelper.html +2889 -0
  70. data/lib/cloudmunch_Ruby_sdk_v3/doc/IntegrationHelper.html +400 -0
  71. data/lib/cloudmunch_Ruby_sdk_v3/doc/RoleHelper.html +809 -0
  72. data/lib/cloudmunch_Ruby_sdk_v3/doc/Server.html +2302 -0
  73. data/lib/cloudmunch_Ruby_sdk_v3/doc/ServerHelper.html +1181 -0
  74. data/lib/cloudmunch_Ruby_sdk_v3/doc/ServiceProvider.html +328 -0
  75. data/lib/cloudmunch_Ruby_sdk_v3/doc/Util.html +540 -0
  76. data/lib/cloudmunch_Ruby_sdk_v3/doc/_index.html +214 -0
  77. data/lib/cloudmunch_Ruby_sdk_v3/doc/class_list.html +58 -0
  78. data/lib/cloudmunch_Ruby_sdk_v3/doc/css/common.css +1 -0
  79. data/lib/cloudmunch_Ruby_sdk_v3/doc/css/full_list.css +57 -0
  80. data/lib/cloudmunch_Ruby_sdk_v3/doc/css/style.css +339 -0
  81. data/lib/cloudmunch_Ruby_sdk_v3/doc/file_list.html +57 -0
  82. data/lib/cloudmunch_Ruby_sdk_v3/doc/frames.html +26 -0
  83. data/lib/cloudmunch_Ruby_sdk_v3/doc/index.html +214 -0
  84. data/lib/cloudmunch_Ruby_sdk_v3/doc/js/app.js +219 -0
  85. data/lib/cloudmunch_Ruby_sdk_v3/doc/js/full_list.js +181 -0
  86. data/lib/cloudmunch_Ruby_sdk_v3/doc/js/jquery.js +4 -0
  87. data/lib/cloudmunch_Ruby_sdk_v3/doc/method_list.html +993 -0
  88. data/lib/cloudmunch_Ruby_sdk_v3/doc/top-level-namespace.html +114 -0
  89. data/lib/cloudmunch_Ruby_sdk_v3/version.rb +3 -0
  90. data/lib/cloudmunch_sdk.rb +5 -0
  91. data/lib/cloudmunch_sdk_v3.rb +5 -0
  92. metadata +194 -0
@@ -0,0 +1,77 @@
1
+ #!/usr/bin/ruby
2
+ ###
3
+ ### (c) CloudMunch Inc.
4
+ ### All Rights Reserved
5
+ ### Un-authorized copying of this file, via any medium is strictly prohibited
6
+ ### Proprietary and confidential
7
+ ###
8
+ ### ganesan@cloudmunch.com
9
+ ###
10
+
11
+ $LOAD_PATH << '.'
12
+
13
+
14
+ class Server
15
+ attr_accessor :description
16
+ attr_accessor :dns
17
+ attr_accessor :domainName
18
+ attr_accessor :emailID
19
+ attr_accessor :CI
20
+ attr_accessor :deploymentStatus
21
+ attr_accessor :instanceId
22
+ attr_accessor :imageID
23
+ attr_accessor :launcheduser
24
+ attr_accessor :build
25
+ attr_accessor :appName
26
+ attr_accessor :deployTempLoc
27
+ attr_accessor :buildLocation
28
+ attr_accessor :privateKeyLoc
29
+ attr_accessor :publicKeyLoc
30
+ attr_accessor :loginUser
31
+ attr_accessor :serverType
32
+ attr_accessor :assetType
33
+ attr_accessor :status
34
+ attr_accessor :startTime
35
+ attr_accessor :provider
36
+ attr_accessor :region
37
+ attr_accessor :cmserver
38
+ attr_accessor :assetName
39
+ attr_accessor :instanceSize
40
+ attr_accessor :serverName
41
+ attr_accessor :password
42
+ attr_accessor :sshport
43
+ attr_accessor :tier
44
+
45
+ def initialize
46
+ @description=""
47
+ @dns=""
48
+ @domainName=""
49
+ @emailID=""
50
+ @CI=""
51
+ @deploymentStatus=""
52
+ @instanceId=""
53
+ @imageID=""
54
+ @launcheduser=""
55
+ @build=""
56
+ @appName=""
57
+ @deployTempLoc=""
58
+ @buildLocation=""
59
+ @privateKeyLoc=""
60
+ @publicKeyLoc=""
61
+ @loginUser=""
62
+ @serverType=""
63
+ @assettype=""
64
+ @status=""
65
+ @starttime=""
66
+ @provider=""
67
+ @region=""
68
+ @cmserver=""
69
+ @assetname=""
70
+ @instancesize=""
71
+ @servername=""
72
+ @password=""
73
+ @sshport=22
74
+ @tier=""
75
+ end
76
+
77
+ end
@@ -0,0 +1,284 @@
1
+ #!/usr/bin/ruby
2
+ ###
3
+ ### (c) CloudMunch Inc.
4
+ ### All Rights Reserved
5
+ ### Un-authorized copying of this file, via any medium is strictly prohibited
6
+ ### Proprietary and confidential
7
+ ###
8
+ ### ganesan@cloudmunch.com
9
+ ###
10
+
11
+ $LOAD_PATH << '.'
12
+ require 'json'
13
+ require_relative "CloudmunchConstants"
14
+
15
+ class ServerHelper
16
+ include CloudmunchService
17
+ include Util
18
+
19
+ @appContext = nil;
20
+ @cmDataManager = nil;
21
+ @logHelper = nil;
22
+
23
+ def initialize(appContext)
24
+ @appContext = appContext
25
+ @cloudmunchDataService = CloudmunchService.new
26
+ end
27
+
28
+ # ###
29
+ # ### This method retreives the details of server from cloudmunch.
30
+ # ### @param string $servername Name of the server as registered in cloudmunch.
31
+ # ### @return \CloudMunch\Server
32
+ # ###
33
+ def getServerName(serverName)
34
+ server = nil
35
+ serverUrl = @appContext.getMasterURL() + "/applications/" + @appContext.getProject() + "/assets/" + serverName
36
+ log("DEBUG", "serverurl from serverhelper:" + serverUrl)
37
+
38
+ deployResult = @cloudmunchDataService.getDataForContext(serverUrl, @appContext.getAPIKey(),nil)
39
+ if deployResult == nil then
40
+ return false
41
+ else
42
+ deployResult = JSON.parse(deployResult)
43
+ deployData = deployResult["data"]
44
+ if deployData.nil? then
45
+ log("ERROR", "Server does not exist")
46
+ return nil
47
+ else
48
+ if (deployResult[serverName].include?("assetname")) && (deployResult[serverName]["assetname"] == "ElasticBeanStalk") then
49
+ server = ElasticBeanStalkServer.new
50
+ else
51
+ server = Server.new
52
+
53
+ server.servername = deployData["id"]
54
+ server.description = deployData["description"]
55
+ server.dns = deployData["dnsName"]
56
+ server.domainName = deployData["domainName"]
57
+ server.CI = deployData["CI"]
58
+ server.deploymentStatus = deployData["deploymentStatus"]
59
+ server.instanceId = deployData["instanceId"]
60
+ server.imageID = deployData["amiID"]
61
+ server.launcheduser = deployData["username"]
62
+ server.build = deployData["build"]
63
+ server.appName = deployData["appName"]
64
+ server.deployTempLoc = deployData["deployTempLoc"]
65
+ server.buildLocation = deployData["buildLoc"]
66
+ server.privateKeyLoc = deployData["privateKeyLoc"]
67
+ server.publicKeyLoc = deployData["publicKeyLoc"]
68
+ server.loginUser = deployData["loginUser"]
69
+ server.serverType = deployData["serverType"]
70
+ server.assetType = deployData["assettype"]
71
+ server.status = deployData["status"]
72
+ server.startTime = deployData["starttime"]
73
+ server.provider = deployData["provider"]
74
+ server.region = deployData["region"]
75
+ server.cmserver = deployData["cmserver"]
76
+ server.assetName = deployData["assetname"]
77
+ server.instanceSize = deployData["instancesize"]
78
+ server.password = deployData["password"]
79
+ server.sshport = deployData["sshport"]
80
+ server.tier = deployData["tier"]
81
+
82
+ if server.instance_of?(ElasticBeanStalkServer) then
83
+ server.environmentName = deployData["environmentName"]
84
+ server.bucketName = deployData["bucketName"]
85
+ server.applicationName = deployData["applicationName"]
86
+ server.templateName = deployData["templateName"]
87
+ end
88
+
89
+ return server
90
+ end
91
+ end
92
+ end
93
+ end
94
+
95
+
96
+ # ###
97
+ # ### This method can be used to add or register a server to cloudmunch data .
98
+ # ### @param \CloudMunch\Server server
99
+ # ### @param string docker
100
+ # ###
101
+ def addServer(server, serverStatus, docker)
102
+
103
+ if serverStatus.empty? then
104
+ log("ERROR", "Server status need to be provided")
105
+ return false
106
+ end
107
+
108
+ statusArray = [::STATUS_RUNNING, ::STATUS_STOPPED, ::STATUS_NIL]
109
+ if !statusArray.include?(serverStatus) then
110
+ log("ERROR", "Invalid status")
111
+ return false
112
+ end
113
+
114
+ paramHash = {}
115
+ paramHash["description"] = server.description
116
+ paramHash["dnsName"] = server.dns
117
+ paramHash["domainName"] = server.domainName
118
+ paramHash["emailID"] = server.emailID
119
+ paramHash["CI"] = server.CI ? "y" : "n"
120
+ paramHash["deploymentStatus"] = server.deploymentStatus
121
+ paramHash["instanceId"] = server.instanceId
122
+ paramHash["amiID"] = server.imageID
123
+ paramHash["username"] = server.username
124
+ paramHash["build"] = server.build
125
+ paramHash["appName"] = server.appName
126
+ paramHash["deployTempLoc"] = server.deployTempLoc
127
+ paramHash["buildLoc"] = server.buildLocation
128
+ paramHash["privateKeyLoc"] = server.privateKeyLoc
129
+ paramHash["publicKeyLoc"] = server.publicKeyLoc
130
+ paramHash["loginUser"] = server.loginUser
131
+ paramHash["serverType"] = server.serverType
132
+ paramHash["type"] = "server"
133
+ paramHash["status"] = server.status
134
+ paramHash["starttime"] = server.startTime
135
+ paramHash["provider"] = server.provider
136
+ paramHash["region"] = server.region
137
+ paramHash["cmserver"] = server.cmserver
138
+ paramHash["name"] = server.serverName
139
+ paramHash["instancesize"] = server.instanceSize
140
+ paramHash["password"] = server.password
141
+ paramHash["sshport"] = server.sshport
142
+ paramHash["tier"] = server.tier
143
+
144
+ if server.instance_of?(ElasticBeanStalkServer) then
145
+ paramHash["applicationName"] = server.applicationName
146
+ paramHash["templateName"] = server.templateName
147
+ paramHash["environmentName"] = server.environmentName
148
+ paramHash["bucketName"] = server.bucketName
149
+ end
150
+
151
+ paramHash["status"] = serverStatus
152
+
153
+ if docker then
154
+ dataInnerHash = {}
155
+ dataInnerHash["buildNo"] = server.build
156
+ dataServerNode = {}
157
+ dataServerNode[server.appName] = dataInnerHash
158
+ paramHash["projects"] = dataServerNode
159
+ end
160
+
161
+ serverUrl = @appContext.getMasterURL() + "/applications/" + @appContext.getProject() + "/assets/"
162
+ @cloudmunchDataService.updateDataForContext(serverUrl, @appContext.getAPIKey(), paramHash)
163
+ end
164
+
165
+ # ###
166
+ # ### This method is used to update server data.
167
+ # ### @param \CloudMunch\Server server
168
+ # ###
169
+ def updateServer(server, serverID)
170
+ paramHash = {}
171
+ paramHash["description"] = server.description
172
+ paramHash["dnsName"] = server.dns
173
+ paramHash["domainName"] = server.domainName
174
+ paramHash["emailID"] = server.emailID
175
+ paramHash["CI"] = server.CI ? "y" : "n"
176
+ paramHash["deploymentStatus"] = server.deploymentStatus
177
+ paramHash["instanceId"] = server.instanceId
178
+ paramHash["amiID"] = server.imageID
179
+ paramHash["username"] = server.username
180
+ paramHash["build"] = server.build
181
+ paramHash["appName"] = server.appName
182
+ paramHash["deployTempLoc"] = server.deployTempLoc
183
+ paramHash["buildLoc"] = server.buildLocation
184
+ paramHash["privateKeyLoc"] = server.privateKeyLoc
185
+ paramHash["publicKeyLoc"] = server.publicKeyLoc
186
+ paramHash["loginUser"] = server.loginUser
187
+ paramHash["serverType"] = server.serverType
188
+ paramHash["type"] = "server"
189
+ paramHash["status"] = server.status
190
+ paramHash["starttime"] = server.startTime
191
+ paramHash["provider"] = server.provider
192
+ paramHash["region"] = server.region
193
+ paramHash["cmserver"] = server.cmserver
194
+ paramHash["name"] = server.serverName
195
+ paramHash["instancesize"] = server.instanceSize
196
+ paramHash["password"] = server.password
197
+ paramHash["sshport"] = server.sshport
198
+ paramHash["tier"] = server.tier
199
+
200
+ serverUrl = @appContext.getMasterURL() + "/applications/" + @appContext.getProject() + "/assets/" + serverID
201
+ return @cloudmunchDataService.updateDataForContext(serverUrl, @appContext.getAPIKey(), paramHash)
202
+ end
203
+
204
+ # ###
205
+ # ### This method is to delete server from cloudmunch.
206
+ # ### @param $serverName Name of server.
207
+ # ###
208
+ def deleteServer(serverID)
209
+ serverUrl = @appContext.getMasterURL() + "/applications/" + @appContext.getProject() + "/assets/" + serverID
210
+ return @cloudmunchDataService.deleteDataForContext(serverUrl, @appContext.getAPIKey() )
211
+ end
212
+
213
+ # ###
214
+ # ### This method checks if server exists or is registered in cloudmunch data.
215
+ # ### @param $servername Name of server.
216
+ # ### @return boolean
217
+ # ###
218
+ def checkServerExists(serverName)
219
+ serverUrl = @appContext.getMasterURL() + "/applications/" + @appContext.getProject() + "/assets/" + serverName
220
+
221
+ serverResult = @cloudmunchDataService.getDataForContext(serverUrl, @appContext.getAPIKey(), "")
222
+ if serverResult == nil then
223
+ return nil
224
+ else
225
+ serverResult = JSON.parse(serverResult)
226
+ serverData = serverResult["data"]
227
+ if serverData.nil? then
228
+ log("ERROR", "Server does not exist")
229
+ return false
230
+ else
231
+ return true
232
+ end
233
+ end
234
+ end
235
+
236
+ # ###
237
+ # ### Checks if server is up and running
238
+ # ###
239
+ # ### @param string dns : dns of target server
240
+ # ### @param number sshport : ssh port (22) to be used to check for connection
241
+ # ### @return string Success : displays an appropriate message
242
+ # ### Failure : exits with a failure status with an appropriate message
243
+ # ###
244
+ def checkConnect(dns, sshport)
245
+ connectionTimeout = Time.now
246
+ connectionTimeout = connectionTimeout + (10 * 10)
247
+ connection = false
248
+
249
+ while ((connection == false) && ( Time.now < connectionTimeout )) do
250
+ if dns.nil? || dns.empty? then
251
+ log("ERROR", "Invalid dns" + dns)
252
+ return false
253
+ end
254
+ log("INFO", "Checking connectivity to: " + dns)
255
+
256
+ connection = ssh2_connect(dns, sshport)
257
+ if connection == false then
258
+ sleep(10)
259
+ end
260
+ end
261
+
262
+ if connection == false then
263
+ log("ERROR", "Failed to connect to " + dns )
264
+ return false
265
+ else
266
+ return true
267
+ end
268
+ end
269
+
270
+ def checkConnectionToServer(servername)
271
+ end
272
+
273
+ def getConnectionToServer(servername)
274
+ end
275
+
276
+ # ###
277
+ # ### This method returns SSHConnection helper
278
+ # ### @return \CloudMunch\sshConnection
279
+ # ###
280
+ def getSSHConnectionHelper()
281
+ return SSHConnection.new
282
+ end
283
+
284
+ end
@@ -0,0 +1,25 @@
1
+
2
+
3
+ class ServiceProvider
4
+
5
+ def initialize(providername)
6
+ @providername = providername
7
+ end
8
+
9
+ def load_data(param)
10
+ if param[@providername].nil?
11
+ return nil
12
+ else
13
+ @SP_data = param[@providername]["configuration"]
14
+ end
15
+ end
16
+
17
+ def get_data(keyname)
18
+ if @SP_data.nil?
19
+ return nil
20
+ else
21
+ @SP_data[keyname]
22
+ end
23
+ end
24
+
25
+ end
@@ -0,0 +1,119 @@
1
+ #!/usr/bin/ruby
2
+ require 'logger'
3
+ require 'json'
4
+
5
+
6
+
7
+ module Util
8
+ def Util.logInit()
9
+ logger = Logger.new(STDOUT)
10
+ logger.formatter = proc do |severity, datetime, progname, msg|
11
+ "#{severity}: #{msg}\n"
12
+ end
13
+ return logger
14
+ end
15
+
16
+ def Util.log(logger, level, logString)
17
+ case level
18
+ when "debug"
19
+ logger.debug(logString)
20
+ when "fatal"
21
+ logger.fatal(logString)
22
+ when "error"
23
+ logger.error(logString)
24
+ when "warn"
25
+ logger.warn(logString)
26
+ when "info"
27
+ logger.info(logString)
28
+ else
29
+ logger.unknown(logString)
30
+ end
31
+ end
32
+
33
+ def Util.logIt(logger, log_level, log_level_string, messageString)
34
+ case log_level.downcase
35
+ when "debug"
36
+ if "debug".eql? log_level_string or "fatal".eql? log_level_string or "error".eql? log_level_string or "warn".eql? log_level_string or "info".eql? log_level_string
37
+ log(logger, "debug", messageString)
38
+ end
39
+ when "fatal"
40
+ if "fatal".eql? log_level_string
41
+ log(logger, "fatal", messageString)
42
+ end
43
+ when "error"
44
+ if "error".eql? log_level_string
45
+ log(logger, "error", messageString)
46
+ end
47
+ when "warn"
48
+ if "warn".eql? log_level_string
49
+ log(logger, "warn", messageString)
50
+ end
51
+ when "info"
52
+ if "info".eql? log_level_string
53
+ log(logger, "info", messageString)
54
+ end
55
+ else
56
+ log(logger, "unknown", messageString)
57
+ end
58
+ end
59
+
60
+ def Util.logClose(logger)
61
+ logger.close
62
+ end
63
+
64
+ def Util.getJSONArgs()
65
+ jsonin = nil
66
+ loop { case ARGV[0]
67
+ when '-jsoninput' then ARGV.shift; jsonin = ARGV.shift
68
+ when /^-/ then usage("Unknown option: #{ARGV[0].inspect}")
69
+ else break
70
+ end; }
71
+ return JSON.load(jsonin);
72
+ end
73
+
74
+ def Util.openJSONFile(fileNameWithPath)
75
+ begin
76
+ config = JSON.load(File.open(fileNameWithPath))
77
+ return config
78
+ rescue
79
+ return false
80
+ end
81
+ end
82
+
83
+ # def Util.generateReport(reportFileName, reportContent)
84
+ # begin
85
+ # fp=File.new(reportFileName, 'w')
86
+ # fp.write(reportContent)
87
+ # fp.close
88
+ # return true
89
+ # rescue
90
+ # puts("ERROR: Could not open output file. Framework error!")
91
+ # # exit 1
92
+ # return false
93
+ # end
94
+ # end
95
+
96
+ # def Util.getUrlForViewCards(server, endpoint, params)
97
+ # newParam = {
98
+ # :action => "listcustomcontext",
99
+ # :fields => "*",
100
+ # }
101
+
102
+ # newParam = params.merge(newParam)
103
+ # cqlQuery = CloudmunchService.getDataContext(server, endpoint, newParam)
104
+ # cqlQuery = JSON.parse(cqlQuery)
105
+ # if !cqlQuery[0].nil? && !cqlQuery[0]["url"].nil?
106
+ # url = cqlQuery[0]["url"]
107
+ # else
108
+ # url = ""
109
+ # end
110
+
111
+ # return url
112
+ # end
113
+
114
+ # def Util.getTemplate(template_name)
115
+ # openJSONFile(File.dirname(__FILE__) +"/templates/#{template_name}.json")
116
+ # end
117
+
118
+ end
119
+