cloudmunch_sdk_v3 3.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/lib/cloudmunch_Ruby_sdk_v2/AppAbstract.rb +146 -0
- data/lib/cloudmunch_Ruby_sdk_v2/AppContext.rb +59 -0
- data/lib/cloudmunch_Ruby_sdk_v2/AssetHelper.rb +127 -0
- data/lib/cloudmunch_Ruby_sdk_v2/CloudmunchConstants.rb +24 -0
- data/lib/cloudmunch_Ruby_sdk_v2/CloudmunchService.rb +249 -0
- data/lib/cloudmunch_Ruby_sdk_v2/ElasticBeanStalkServer.rb +52 -0
- data/lib/cloudmunch_Ruby_sdk_v2/EnvironmentHelper.rb +292 -0
- data/lib/cloudmunch_Ruby_sdk_v2/InsightHelper.rb +770 -0
- data/lib/cloudmunch_Ruby_sdk_v2/IntegrationHelper.rb +69 -0
- data/lib/cloudmunch_Ruby_sdk_v2/PluginLoaderAbstract.rb +140 -0
- data/lib/cloudmunch_Ruby_sdk_v2/PluginReporterAbstract.rb +141 -0
- data/lib/cloudmunch_Ruby_sdk_v2/RoleHelper.rb +170 -0
- data/lib/cloudmunch_Ruby_sdk_v2/Server.rb +77 -0
- data/lib/cloudmunch_Ruby_sdk_v2/ServerHelper.rb +284 -0
- data/lib/cloudmunch_Ruby_sdk_v2/ServiceProvider.rb +25 -0
- data/lib/cloudmunch_Ruby_sdk_v2/Util.rb +119 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/AppAbstract.html +1062 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/AppContext.html +1402 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/AssetHelper.html +694 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/Cloudmunch.html +117 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/CloudmunchConstants.html +184 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/CloudmunchService.html +1195 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/ElasticBeanStalkServer.html +1375 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/InsightHelper.html +2889 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/IntegrationHelper.html +400 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/RoleHelper.html +809 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/Server.html +2302 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/ServerHelper.html +1181 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/ServiceProvider.html +328 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/Util.html +540 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/_index.html +214 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/class_list.html +58 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/css/common.css +1 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/css/full_list.css +57 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/css/style.css +339 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/file_list.html +57 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/frames.html +26 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/index.html +214 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/js/app.js +219 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/js/full_list.js +181 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/js/jquery.js +4 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/method_list.html +993 -0
- data/lib/cloudmunch_Ruby_sdk_v2/doc/top-level-namespace.html +114 -0
- data/lib/cloudmunch_Ruby_sdk_v2/version.rb +3 -0
- data/lib/cloudmunch_Ruby_sdk_v3/AppAbstract.rb +146 -0
- data/lib/cloudmunch_Ruby_sdk_v3/AppContext.rb +59 -0
- data/lib/cloudmunch_Ruby_sdk_v3/AssetHelper.rb +127 -0
- data/lib/cloudmunch_Ruby_sdk_v3/CloudmunchConstants.rb +24 -0
- data/lib/cloudmunch_Ruby_sdk_v3/CloudmunchService.rb +300 -0
- data/lib/cloudmunch_Ruby_sdk_v3/ElasticBeanStalkServer.rb +52 -0
- data/lib/cloudmunch_Ruby_sdk_v3/EnvironmentHelper.rb +292 -0
- data/lib/cloudmunch_Ruby_sdk_v3/InsightHelper.rb +770 -0
- data/lib/cloudmunch_Ruby_sdk_v3/IntegrationHelper.rb +69 -0
- data/lib/cloudmunch_Ruby_sdk_v3/PluginLoaderAbstract.rb +140 -0
- data/lib/cloudmunch_Ruby_sdk_v3/PluginReporterAbstract.rb +141 -0
- data/lib/cloudmunch_Ruby_sdk_v3/RoleHelper.rb +170 -0
- data/lib/cloudmunch_Ruby_sdk_v3/Server.rb +77 -0
- data/lib/cloudmunch_Ruby_sdk_v3/ServerHelper.rb +284 -0
- data/lib/cloudmunch_Ruby_sdk_v3/ServiceProvider.rb +25 -0
- data/lib/cloudmunch_Ruby_sdk_v3/Util.rb +119 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/AppAbstract.html +1062 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/AppContext.html +1402 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/AssetHelper.html +694 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/Cloudmunch.html +117 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/CloudmunchConstants.html +184 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/CloudmunchService.html +1195 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/ElasticBeanStalkServer.html +1375 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/InsightHelper.html +2889 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/IntegrationHelper.html +400 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/RoleHelper.html +809 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/Server.html +2302 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/ServerHelper.html +1181 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/ServiceProvider.html +328 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/Util.html +540 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/_index.html +214 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/class_list.html +58 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/css/common.css +1 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/css/full_list.css +57 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/css/style.css +339 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/file_list.html +57 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/frames.html +26 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/index.html +214 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/js/app.js +219 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/js/full_list.js +181 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/js/jquery.js +4 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/method_list.html +993 -0
- data/lib/cloudmunch_Ruby_sdk_v3/doc/top-level-namespace.html +114 -0
- data/lib/cloudmunch_Ruby_sdk_v3/version.rb +3 -0
- data/lib/cloudmunch_sdk.rb +5 -0
- data/lib/cloudmunch_sdk_v3.rb +5 -0
- metadata +194 -0
@@ -0,0 +1,114 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
2
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
3
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
4
|
+
<head>
|
5
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
6
|
+
<title>
|
7
|
+
Top Level Namespace
|
8
|
+
|
9
|
+
— Documentation by YARD 0.8.7.6
|
10
|
+
|
11
|
+
</title>
|
12
|
+
|
13
|
+
<link rel="stylesheet" href="css/style.css" type="text/css" charset="utf-8" />
|
14
|
+
|
15
|
+
<link rel="stylesheet" href="css/common.css" type="text/css" charset="utf-8" />
|
16
|
+
|
17
|
+
<script type="text/javascript" charset="utf-8">
|
18
|
+
hasFrames = window.top.frames.main ? true : false;
|
19
|
+
relpath = '';
|
20
|
+
framesUrl = "frames.html#!top-level-namespace.html";
|
21
|
+
</script>
|
22
|
+
|
23
|
+
|
24
|
+
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
|
25
|
+
|
26
|
+
<script type="text/javascript" charset="utf-8" src="js/app.js"></script>
|
27
|
+
|
28
|
+
|
29
|
+
</head>
|
30
|
+
<body>
|
31
|
+
<div id="header">
|
32
|
+
<div id="menu">
|
33
|
+
|
34
|
+
<a href="_index.html">Index</a> »
|
35
|
+
|
36
|
+
|
37
|
+
<span class="title">Top Level Namespace</span>
|
38
|
+
|
39
|
+
|
40
|
+
<div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
|
41
|
+
</div>
|
42
|
+
|
43
|
+
<div id="search">
|
44
|
+
|
45
|
+
<a class="full_list_link" id="class_list_link"
|
46
|
+
href="class_list.html">
|
47
|
+
Class List
|
48
|
+
</a>
|
49
|
+
|
50
|
+
<a class="full_list_link" id="method_list_link"
|
51
|
+
href="method_list.html">
|
52
|
+
Method List
|
53
|
+
</a>
|
54
|
+
|
55
|
+
<a class="full_list_link" id="file_list_link"
|
56
|
+
href="file_list.html">
|
57
|
+
File List
|
58
|
+
</a>
|
59
|
+
|
60
|
+
</div>
|
61
|
+
<div class="clear"></div>
|
62
|
+
</div>
|
63
|
+
|
64
|
+
<iframe id="search_frame"></iframe>
|
65
|
+
|
66
|
+
<div id="content"><h1>Top Level Namespace
|
67
|
+
|
68
|
+
|
69
|
+
|
70
|
+
</h1>
|
71
|
+
|
72
|
+
<dl class="box">
|
73
|
+
|
74
|
+
|
75
|
+
|
76
|
+
|
77
|
+
|
78
|
+
|
79
|
+
|
80
|
+
|
81
|
+
</dl>
|
82
|
+
<div class="clear"></div>
|
83
|
+
|
84
|
+
<h2>Defined Under Namespace</h2>
|
85
|
+
<p class="children">
|
86
|
+
|
87
|
+
|
88
|
+
<strong class="modules">Modules:</strong> <span class='object_link'><a href="Cloudmunch.html" title="Cloudmunch (module)">Cloudmunch</a></span>, <span class='object_link'><a href="CloudmunchService.html" title="CloudmunchService (module)">CloudmunchService</a></span>, <span class='object_link'><a href="InsightHelper.html" title="InsightHelper (module)">InsightHelper</a></span>, <span class='object_link'><a href="Util.html" title="Util (module)">Util</a></span>
|
89
|
+
|
90
|
+
|
91
|
+
|
92
|
+
<strong class="classes">Classes:</strong> <span class='object_link'><a href="AppAbstract.html" title="AppAbstract (class)">AppAbstract</a></span>, <span class='object_link'><a href="AppContext.html" title="AppContext (class)">AppContext</a></span>, <span class='object_link'><a href="AssetHelper.html" title="AssetHelper (class)">AssetHelper</a></span>, <span class='object_link'><a href="CloudmunchConstants.html" title="CloudmunchConstants (class)">CloudmunchConstants</a></span>, <span class='object_link'><a href="ElasticBeanStalkServer.html" title="ElasticBeanStalkServer (class)">ElasticBeanStalkServer</a></span>, <span class='object_link'><a href="IntegrationHelper.html" title="IntegrationHelper (class)">IntegrationHelper</a></span>, <span class='object_link'><a href="RoleHelper.html" title="RoleHelper (class)">RoleHelper</a></span>, <span class='object_link'><a href="Server.html" title="Server (class)">Server</a></span>, <span class='object_link'><a href="ServerHelper.html" title="ServerHelper (class)">ServerHelper</a></span>, <span class='object_link'><a href="ServiceProvider.html" title="ServiceProvider (class)">ServiceProvider</a></span>
|
93
|
+
|
94
|
+
|
95
|
+
</p>
|
96
|
+
|
97
|
+
|
98
|
+
|
99
|
+
|
100
|
+
|
101
|
+
|
102
|
+
|
103
|
+
|
104
|
+
|
105
|
+
</div>
|
106
|
+
|
107
|
+
<div id="footer">
|
108
|
+
Generated on Mon Jan 11 14:09:52 2016 by
|
109
|
+
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
110
|
+
0.8.7.6 (ruby-2.0.0).
|
111
|
+
</div>
|
112
|
+
|
113
|
+
</body>
|
114
|
+
</html>
|
@@ -0,0 +1,146 @@
|
|
1
|
+
#!/usr/bin/ruby
|
2
|
+
$LOAD_PATH << '.'
|
3
|
+
|
4
|
+
require_relative "CloudmunchService"
|
5
|
+
require_relative "InsightHelper"
|
6
|
+
require_relative "Util"
|
7
|
+
require_relative "ServiceProvider"
|
8
|
+
require_relative "AppContext"
|
9
|
+
|
10
|
+
class AppAbstract
|
11
|
+
include CloudmunchService
|
12
|
+
include InsightHelper
|
13
|
+
include Util
|
14
|
+
|
15
|
+
@@config = nil
|
16
|
+
|
17
|
+
def initialize(param = nil)
|
18
|
+
end
|
19
|
+
|
20
|
+
def logInit(log_level)
|
21
|
+
@logger = @logger ? @logger : Util.logInit()
|
22
|
+
@log_level = log_level
|
23
|
+
end
|
24
|
+
|
25
|
+
def log(level,logString)
|
26
|
+
if @logger.nil?
|
27
|
+
logInit("DEBUG")
|
28
|
+
end
|
29
|
+
Util.logIt(@logger, @log_level, level.to_s.downcase, logString)
|
30
|
+
end
|
31
|
+
|
32
|
+
|
33
|
+
def logClose()
|
34
|
+
Util.logClose(@logger)
|
35
|
+
end
|
36
|
+
|
37
|
+
def getJSONArgs()
|
38
|
+
jsonin = nil
|
39
|
+
varin=nil
|
40
|
+
integrations=nil
|
41
|
+
loop { case ARGV[0]
|
42
|
+
when '-jsoninput' then ARGV.shift; jsonin = ARGV.shift
|
43
|
+
when '-variables' then ARGV.shift; varin = ARGV.shift
|
44
|
+
when '-integrations' then ARGV.shift; integrations = ARGV.shift
|
45
|
+
|
46
|
+
when /^-/ then usage("Unknown option: #{ARGV[0].inspect}")
|
47
|
+
else break
|
48
|
+
end; }
|
49
|
+
@json_input = JSON.load(jsonin)
|
50
|
+
@var_input =JSON.load(varin)
|
51
|
+
@integration_input=JSON.load(integrations)
|
52
|
+
createAppContext();
|
53
|
+
return @json_input
|
54
|
+
end
|
55
|
+
|
56
|
+
def createAppContext()
|
57
|
+
@appContext = AppContext.new(@var_input)
|
58
|
+
end
|
59
|
+
|
60
|
+
def getAppContext()
|
61
|
+
return @appContext
|
62
|
+
end
|
63
|
+
|
64
|
+
# def getCloudmunchContext(context)
|
65
|
+
# begin
|
66
|
+
# return @@config[context+"_context"]
|
67
|
+
# rescue
|
68
|
+
# return false
|
69
|
+
# end
|
70
|
+
# end
|
71
|
+
|
72
|
+
def getCloudmunchService()
|
73
|
+
@cloudmunchservice = self.extend(CloudmunchService)
|
74
|
+
return @cloudmunchservice
|
75
|
+
end
|
76
|
+
|
77
|
+
def getInsightHelper()
|
78
|
+
@insightHelper = self.extend(InsightHelper)
|
79
|
+
return @insightHelper
|
80
|
+
end
|
81
|
+
|
82
|
+
def getIntegrationDetails(param = nil)
|
83
|
+
serviceProvider = ServiceProvider.new(@json_input["providername"])
|
84
|
+
serviceProvider.load_data(@integration_input)
|
85
|
+
return serviceProvider
|
86
|
+
end
|
87
|
+
|
88
|
+
def initializeApp()
|
89
|
+
end
|
90
|
+
|
91
|
+
def process()
|
92
|
+
end
|
93
|
+
|
94
|
+
def cleanupApp()
|
95
|
+
log("INFO", "\nExiting app")
|
96
|
+
end
|
97
|
+
|
98
|
+
def start()
|
99
|
+
initializeApp()
|
100
|
+
process()
|
101
|
+
cleanupApp()
|
102
|
+
end
|
103
|
+
|
104
|
+
# def openJSONFile(fileNameWithPath)
|
105
|
+
# Util.openJSONFile(fileNameWithPath)
|
106
|
+
# end
|
107
|
+
|
108
|
+
# def generateReport(reportFilename, reportString)
|
109
|
+
# Util.generateReport(reportFilename, reportString)
|
110
|
+
# end
|
111
|
+
|
112
|
+
# def getDataContextFromCMDB(param)
|
113
|
+
# appContext = getAppContext()
|
114
|
+
# params = {
|
115
|
+
# "username" => @@config['username'],
|
116
|
+
# "customcontext" => param["job"] + "_" + param["context"],
|
117
|
+
# "action" => "listcustomcontext"
|
118
|
+
# }
|
119
|
+
# param.delete("context")
|
120
|
+
# params = param.merge(params)
|
121
|
+
|
122
|
+
# return CloudmunchService.getDataContext(appContext.get_data('masterurl'), @@config["endpoint"], params)
|
123
|
+
# end
|
124
|
+
|
125
|
+
# def updateDataContextToCMDB(param)
|
126
|
+
# appContext = getAppContext()
|
127
|
+
# params = {
|
128
|
+
# "username" => @@config['username'],
|
129
|
+
# "customcontext" => param["job"] + "_" + param["context"],
|
130
|
+
# "action" => "updatecustomcontext"
|
131
|
+
# }
|
132
|
+
# param.delete("context")
|
133
|
+
# params = param.merge(params)
|
134
|
+
# return CloudmunchService.updateDataContext(appContext.get_data('masterurl'), @@config['endpoint'], params)
|
135
|
+
# end
|
136
|
+
|
137
|
+
# def getTemplate(template_name)
|
138
|
+
# begin
|
139
|
+
# Util.getTemplate(template_name)
|
140
|
+
# rescue
|
141
|
+
# return false
|
142
|
+
# end
|
143
|
+
# end
|
144
|
+
|
145
|
+
|
146
|
+
end
|
@@ -0,0 +1,59 @@
|
|
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
|
+
class AppContext
|
14
|
+
attr_accessor :masterurl
|
15
|
+
attr_accessor :cloudproviders
|
16
|
+
attr_accessor :domainName
|
17
|
+
attr_accessor :project
|
18
|
+
attr_accessor :job
|
19
|
+
attr_accessor :workspaceLocation
|
20
|
+
attr_accessor :archiveLocation
|
21
|
+
attr_accessor :stepid
|
22
|
+
attr_accessor :targetServer
|
23
|
+
attr_accessor :integrations
|
24
|
+
attr_accessor :reportsLocation
|
25
|
+
attr_accessor :runnumber
|
26
|
+
attr_accessor :apikey
|
27
|
+
attr_accessor :stepname
|
28
|
+
attr_accessor :environmentId
|
29
|
+
|
30
|
+
|
31
|
+
def initialize(param)
|
32
|
+
@masterurl = ""
|
33
|
+
@cloudproviders = ""
|
34
|
+
@domainName = ""
|
35
|
+
@project = ""
|
36
|
+
@job = ""
|
37
|
+
@workspaceLocation = ""
|
38
|
+
@archiveLocation = ""
|
39
|
+
@stepid = ""
|
40
|
+
@targetServer=""
|
41
|
+
@integrations=""
|
42
|
+
@reportsLocation=""
|
43
|
+
@runnumber=""
|
44
|
+
@apikey=""
|
45
|
+
@stepname=""
|
46
|
+
@environmentId=""
|
47
|
+
load_data(param)
|
48
|
+
end
|
49
|
+
|
50
|
+
def load_data(param)
|
51
|
+
@AppContextParams = param
|
52
|
+
end
|
53
|
+
|
54
|
+
def get_data(keyname)
|
55
|
+
@AppContextParams[keyname]
|
56
|
+
end
|
57
|
+
|
58
|
+
|
59
|
+
end
|
@@ -0,0 +1,127 @@
|
|
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 AssetHelper
|
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
|
+
def getAsset(assetID, filterData)
|
29
|
+
paramHash = {}
|
30
|
+
if !filterData.nil?
|
31
|
+
paramHash["filter"] = filterData.to_json
|
32
|
+
end
|
33
|
+
serverUrl = @appContext.getMasterURL() + "/applications/" + @appContext.getProject() + "/assets/" + assetID
|
34
|
+
assetResult = @cloudmunchDataService.getDataForContext(serverUrl, @appContext.getAPIJey(), paramHash)
|
35
|
+
|
36
|
+
if assetResult == nil then
|
37
|
+
log("ERROR", "Unable to get data from cloudmunch")
|
38
|
+
return nil
|
39
|
+
else
|
40
|
+
assetResult = JSON.parse(assetResult)
|
41
|
+
assetData = assetResult["data"]
|
42
|
+
if assetData.nil? then
|
43
|
+
log("ERROR", "Asset does not exist")
|
44
|
+
return nil
|
45
|
+
else
|
46
|
+
return assetData
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
def addAsset(assetName, assetType, assetStatus, assetExternalRef, assetData)
|
52
|
+
if assetName.empty? || assetType.empty? || assetStatus.empty? then
|
53
|
+
log("ERROR", "Asset name ,status and type need to be provided")
|
54
|
+
return false
|
55
|
+
end
|
56
|
+
|
57
|
+
statusArray = [::STATUS_RUNNING, ::STATUS_STOPPED, ::STATUS_NIL]
|
58
|
+
if !statusArray.include?(assetStatus) then
|
59
|
+
log("ERROR", "Invalid status sent. Allowed values " + ::STATUS_RUNNING, ::STATUS_STOPPED, ::STATUS_NIL)
|
60
|
+
return false
|
61
|
+
end
|
62
|
+
|
63
|
+
assetData["name"] = assetName
|
64
|
+
assetData["type"] = assetType
|
65
|
+
assetData["status"] = assetStatus
|
66
|
+
assetData["external_reference"] = assetExternalRef
|
67
|
+
|
68
|
+
serverUrl = @appContext.getMasterURL() + "/applications/" + @appContext.getProject() + "/assets/"
|
69
|
+
retResult = @cloudmunchDataService.updateDataForContext(serverUrl, @appContext.getAPIKey(), assetData)
|
70
|
+
|
71
|
+
if retResult == nil then
|
72
|
+
return nil
|
73
|
+
else
|
74
|
+
retResult = JSON.parse(retResult)
|
75
|
+
retData = retResult["data"]
|
76
|
+
if retData.nil? then
|
77
|
+
return nil
|
78
|
+
else
|
79
|
+
return retData
|
80
|
+
end
|
81
|
+
end
|
82
|
+
|
83
|
+
end
|
84
|
+
|
85
|
+
|
86
|
+
def updateAsset(assetID, assetData)
|
87
|
+
serverUrl = @appContext.getMasterURL() + "/applications/" + @appContext.getProject() + "/assets/" + assetID
|
88
|
+
@cloudmunchDataService.updateDataForContext(serverUrl, @appContext.getAPIKey(), assetData)
|
89
|
+
end
|
90
|
+
|
91
|
+
def deleteAsset(assetID)
|
92
|
+
serverUrl = @appContext.getMasterURL() + "/applications/" + @appContext.getProject() + "/assets/" + assetID
|
93
|
+
@cloudmunchDataService.deleteDataForContext(serverUrl, @appContext.getAPIKey())
|
94
|
+
end
|
95
|
+
|
96
|
+
def updateStatus(assetID, status)
|
97
|
+
statusArray = [::STATUS_RUNNING, ::STATUS_STOPPED, ::STATUS_NIL]
|
98
|
+
if !statusArray.include?(status) then
|
99
|
+
log("ERROR", "Invalid status")
|
100
|
+
return false
|
101
|
+
end
|
102
|
+
|
103
|
+
assetData = {}
|
104
|
+
assetData["status"] = status
|
105
|
+
updateAsset(assetID, assetData)
|
106
|
+
end
|
107
|
+
|
108
|
+
def checkIfAssetExists(assetID)
|
109
|
+
serverUrl = @appContext.getMasterURL() + "/applications/" + @appContext.getProject() + "/assets/" + assetID
|
110
|
+
|
111
|
+
assetResult = @cloudmunchDataService.getDataForContext(serverUrl, @appContext.getAPIKey(), "")
|
112
|
+
if assetResult == nil then
|
113
|
+
return nil
|
114
|
+
else
|
115
|
+
assetResult = JSON.parse(assetResult)
|
116
|
+
assetData = assetResult["data"]
|
117
|
+
if assetData.nil? then
|
118
|
+
log("ERROR", "Asset does not exist")
|
119
|
+
return false
|
120
|
+
else
|
121
|
+
return true
|
122
|
+
end
|
123
|
+
end
|
124
|
+
end
|
125
|
+
|
126
|
+
|
127
|
+
end
|