chef-provisioning-oneview 1.0.1 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +43 -3
- data/lib/chef/provisioning/create_machine.rb +52 -0
- data/lib/chef/provisioning/customize_machine.rb +78 -0
- data/lib/chef/provisioning/icsp/api_v104.rb +27 -0
- data/lib/chef/provisioning/icsp/icsp_api.rb +282 -0
- data/lib/chef/provisioning/oneview/oneview_api.rb +56 -357
- data/lib/chef/provisioning/oneview/san_storage.rb +91 -0
- data/lib/chef/provisioning/oneview/v1.2/api.rb +3 -0
- data/lib/chef/provisioning/oneview_driver.rb +42 -5
- data/lib/chef/provisioning/rest.rb +51 -0
- data/lib/chef/provisioning/{oneview/version.rb → version.rb} +1 -1
- data/spec/shared_context.rb +77 -0
- data/spec/spec_helper.rb +8 -6
- data/spec/{unit/support → support}/fake_action_handler.rb +0 -0
- data/spec/support/fake_icsp.rb +73 -21
- data/spec/support/fake_machine_spec.rb +18 -0
- data/spec/support/fake_oneview.rb +148 -21
- data/spec/support/fixtures/icsp/v102/error_404.json +13 -13
- data/spec/support/fixtures/icsp/v102/login.json +4 -4
- data/spec/support/fixtures/icsp/v102/os-deployment-build-plans.json +99 -99
- data/spec/support/fixtures/icsp/v102/{os-deployment-servers_managed.json → os-deployment-servers.json} +178 -178
- data/spec/support/fixtures/icsp/v102/os-deployment-servers_1670001.json +83 -0
- data/spec/support/fixtures/icsp/v102/os-deployment-servers_fakesn.json +9 -0
- data/spec/support/fixtures/icsp/v102/{server_by_sn.json → server_by_sn_VCGE9KB041.json} +44 -44
- data/spec/support/fixtures/icsp/v102/server_by_sn_empty.json +16 -0
- data/spec/support/fixtures/icsp/v102/version.json +3 -3
- data/spec/support/fixtures/oneview/v120/error_404.json +13 -13
- data/spec/support/fixtures/oneview/v120/login.json +4 -4
- data/spec/support/fixtures/oneview/v120/server-hardware.json +1475 -1475
- data/spec/support/fixtures/oneview/v120/server-hardware_Template-WebServer.json +468 -0
- data/spec/support/fixtures/oneview/v120/server-hardware_specific.json +151 -0
- data/spec/support/fixtures/oneview/v120/server-profiles.json +368 -746
- data/spec/support/fixtures/oneview/v120/server-profiles_invalid_filter.json +14 -0
- data/spec/support/fixtures/oneview/v120/{server-profiles_specific.json → server-profiles_name_Template-WebServer.json} +132 -132
- data/spec/support/fixtures/oneview/v120/server-profiles_name_Template-WebServerWithSAN.json +200 -0
- data/spec/support/fixtures/oneview/v120/server-profiles_name_chef-web01.json +133 -0
- data/spec/support/fixtures/oneview/v120/server-profiles_name_chef-web03.json +133 -0
- data/spec/support/fixtures/oneview/v120/server-profiles_name_empty.json +15 -0
- data/spec/support/fixtures/oneview/v120/server-profiles_sn_VCGE9KB041.json +133 -0
- data/spec/support/fixtures/oneview/v120/server-profiles_sn_VCGE9KB042.json +206 -0
- data/spec/support/fixtures/oneview/v120/server-profiles_sn_empty.json +15 -0
- data/spec/support/fixtures/oneview/v120/storage-volumes_1B5D3CA2-6C5B-41C2-8B97-1821F1883F22.json +26 -0
- data/spec/support/fixtures/oneview/v120/tasks_fake_active.json +5 -0
- data/spec/support/fixtures/oneview/v120/tasks_fake_complete.json +5 -0
- data/spec/support/fixtures/oneview/v120/version.json +3 -3
- data/spec/support/fixtures/oneview/v200/server-profile-templates_WebServerTemplate.json +109 -0
- data/spec/support/fixtures/oneview/v200/server-profile-templates_WebServerTemplateWithSAN.json +144 -0
- data/spec/support/fixtures/oneview/v200/server-profile-templates_invalid.json +16 -0
- data/spec/support/fixtures/oneview/v200/server-profile-templates_new-profile_WebServerTemplate.json +125 -0
- data/spec/support/fixtures/oneview/v200/server-profile-templates_new-profile_WebServerTemplateWithSAN.json +178 -0
- data/spec/support/fixtures/oneview/v200/version.json +4 -0
- data/spec/unit/create_machine_spec.rb +78 -0
- data/spec/unit/destroy_spec.rb +26 -0
- data/spec/unit/icsp_nic_teams_spec.rb +38 -0
- data/spec/unit/icsp_search_spec.rb +25 -0
- data/spec/unit/oneview_driver_spec.rb +37 -64
- data/spec/unit/oneview_login_spec.rb +23 -0
- data/spec/unit/oneview_power_spec.rb +51 -0
- data/spec/unit/oneview_san_spec.rb +86 -0
- data/spec/unit/oneview_search_spec.rb +63 -0
- data/spec/unit/rest_api_spec.rb +115 -0
- metadata +90 -9
- data/lib/chef/provisioning/oneview/v1.20/api.rb +0 -3
@@ -0,0 +1,18 @@
|
|
1
|
+
module ChefProvisioningOneviewHelpers
|
2
|
+
class FakeMachineSpec
|
3
|
+
attr_reader :name
|
4
|
+
|
5
|
+
def initialize(name, sn)
|
6
|
+
@name = name
|
7
|
+
@sn = sn
|
8
|
+
end
|
9
|
+
|
10
|
+
def reference
|
11
|
+
ver = Chef::Provisioning::ONEVIEW_DRIVER_VERSION
|
12
|
+
{
|
13
|
+
'serial_number' => @sn, serial_number: @sn,
|
14
|
+
'driver_version' => ver, driver_version: ver
|
15
|
+
}
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -1,21 +1,148 @@
|
|
1
|
-
require 'sinatra/base'
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
1
|
+
require 'sinatra/base'
|
2
|
+
require 'json'
|
3
|
+
|
4
|
+
class FakeOneView < Sinatra::Base
|
5
|
+
|
6
|
+
get '/rest/version' do
|
7
|
+
json_response(200, 'version.json', '120')
|
8
|
+
end
|
9
|
+
|
10
|
+
post '/rest/login-sessions' do
|
11
|
+
version = env['HTTP_X_API_VERSION']
|
12
|
+
json_response(200, 'login.json', version)
|
13
|
+
end
|
14
|
+
|
15
|
+
get '/rest/server-profile-templates' do
|
16
|
+
version = env['HTTP_X_API_VERSION']
|
17
|
+
file_name = 'server-profile-templates_invalid.json'
|
18
|
+
if params['filter'] && params['filter'].match('name matches')
|
19
|
+
if params['filter'].match('Web Server Template with SAN')
|
20
|
+
file_name = 'server-profile-templates_WebServerTemplateWithSAN.json'
|
21
|
+
elsif params['filter'].match('Web Server Template')
|
22
|
+
file_name = 'server-profile-templates_WebServerTemplate.json'
|
23
|
+
end
|
24
|
+
end
|
25
|
+
json_response(200, file_name, version)
|
26
|
+
end
|
27
|
+
|
28
|
+
get '/rest/server-profile-templates/:id/new-profile' do |id|
|
29
|
+
version = env['HTTP_X_API_VERSION']
|
30
|
+
if id == 'd64da635-f08a-41d4-b6eb-6517206a8bae'
|
31
|
+
json_response(200, 'server-profile-templates_new-profile_WebServerTemplate.json', version)
|
32
|
+
elsif id == 'd64da635-f08a-41d4-b6eb-6517206a8baf'
|
33
|
+
json_response(200, 'server-profile-templates_new-profile_WebServerTemplateWithSAN.json', version)
|
34
|
+
else
|
35
|
+
json_response(404, 'error_404.json', '120')
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
get '/rest/server-profiles' do
|
40
|
+
version = env['HTTP_X_API_VERSION']
|
41
|
+
file_name = 'server-profiles.json'
|
42
|
+
if params['filter']
|
43
|
+
if params['filter'].match('matches \'\'') || params['filter'].match('INVALIDFILTER')
|
44
|
+
file_name = 'server-profiles_invalid_filter.json'
|
45
|
+
elsif params['filter'].match('serialNumber matches')
|
46
|
+
if params['filter'].match('VCGE9KB041')
|
47
|
+
file_name = 'server-profiles_sn_VCGE9KB041.json'
|
48
|
+
elsif params['filter'].match('VCGE9KB042')
|
49
|
+
file_name = 'server-profiles_sn_VCGE9KB042.json'
|
50
|
+
else
|
51
|
+
file_name = 'server-profiles_sn_empty.json'
|
52
|
+
end
|
53
|
+
elsif params['filter'].match('name matches')
|
54
|
+
if params['filter'].match('Template - Web Server with SAN')
|
55
|
+
file_name = 'server-profiles_name_Template-WebServerWithSAN.json'
|
56
|
+
elsif params['filter'].match('Template - Web Server')
|
57
|
+
file_name = 'server-profiles_name_Template-WebServer.json'
|
58
|
+
elsif params['filter'].match('chef-web01')
|
59
|
+
file_name = 'server-profiles_name_chef-web01.json'
|
60
|
+
elsif $server_created == 'chef-web03'
|
61
|
+
file_name = 'server-profiles_name_chef-web03.json'
|
62
|
+
else
|
63
|
+
file_name = 'server-profiles_name_empty.json'
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
67
|
+
json_response(200, file_name, version)
|
68
|
+
end
|
69
|
+
|
70
|
+
post '/rest/server-profiles' do
|
71
|
+
body = JSON.parse(request.body.read.to_s)
|
72
|
+
$server_created = body['name']
|
73
|
+
{ 'uri' => '/rest/tasks/FAKETASK' }.to_json
|
74
|
+
end
|
75
|
+
|
76
|
+
delete '/rest/server-profiles/:id' do |_id|
|
77
|
+
{ 'uri' => '/rest/tasks/FAKETASK' }.to_json
|
78
|
+
end
|
79
|
+
|
80
|
+
get '/rest/server-hardware' do
|
81
|
+
version = env['HTTP_X_API_VERSION']
|
82
|
+
file_name = 'server-hardware.json'
|
83
|
+
if params['filter'].match('enclosure-groups/3a11ccdd-b352-4046-a568-a8b0faa6cc39') # && params['filter'].match('') # TODO
|
84
|
+
file_name = 'server-hardware_Template-WebServer.json'
|
85
|
+
end
|
86
|
+
json_response(200, file_name, version)
|
87
|
+
end
|
88
|
+
|
89
|
+
get '/rest/server-hardware/:id' do |id|
|
90
|
+
version = env['HTTP_X_API_VERSION']
|
91
|
+
if id == '31363636-3136-584D-5132-333230314D38' || id == '37333036-3831-584D-5131-303030323037'
|
92
|
+
json_response(200, 'server-hardware_specific.json', version)
|
93
|
+
else
|
94
|
+
json_response(404, 'error_404.json', '120')
|
95
|
+
end
|
96
|
+
end
|
97
|
+
|
98
|
+
get '/rest/storage-volumes/:id' do |id|
|
99
|
+
version = env['HTTP_X_API_VERSION']
|
100
|
+
json_response(200, "storage-volumes_#{id}.json", version)
|
101
|
+
end
|
102
|
+
|
103
|
+
put '/rest/server-hardware/:id/powerState' do |_id|
|
104
|
+
{ 'uri' => '/rest/tasks/FAKETASK' }.to_json
|
105
|
+
end
|
106
|
+
|
107
|
+
get '/rest/tasks/FAKETASK' do
|
108
|
+
version = env['HTTP_X_API_VERSION']
|
109
|
+
json_response(200, 'tasks_fake_complete.json', version)
|
110
|
+
end
|
111
|
+
|
112
|
+
get '/' do
|
113
|
+
{ message: 'Fake OneView works!', method: env['REQUEST_METHOD'], content_type: env['CONTENT_TYPE'], query: env['QUERY_STRING'],
|
114
|
+
api_version: env['HTTP_X_API_VERSION'], auth: env['HTTP_AUTH'], params: params }.to_json
|
115
|
+
end
|
116
|
+
|
117
|
+
post '/' do
|
118
|
+
{ message: 'Fake OneView works!', method: env['REQUEST_METHOD'], content_type: env['CONTENT_TYPE'], query: env['QUERY_STRING'],
|
119
|
+
api_version: env['HTTP_X_API_VERSION'], auth: env['HTTP_AUTH'], params: params }.to_json
|
120
|
+
end
|
121
|
+
|
122
|
+
put '/' do
|
123
|
+
{ message: 'Fake OneView works!', method: env['REQUEST_METHOD'], content_type: env['CONTENT_TYPE'], query: env['QUERY_STRING'],
|
124
|
+
api_version: env['HTTP_X_API_VERSION'], auth: env['HTTP_AUTH'], params: params }.to_json
|
125
|
+
end
|
126
|
+
|
127
|
+
delete '/' do
|
128
|
+
{ message: 'Fake OneView works!', method: env['REQUEST_METHOD'], content_type: env['CONTENT_TYPE'], query: env['QUERY_STRING'],
|
129
|
+
api_version: env['HTTP_X_API_VERSION'], auth: env['HTTP_AUTH'], params: params }.to_json
|
130
|
+
end
|
131
|
+
|
132
|
+
get '/*' do # All other paths should return a 404 error
|
133
|
+
json_response(404, 'error_404.json', '120')
|
134
|
+
end
|
135
|
+
|
136
|
+
private
|
137
|
+
|
138
|
+
def json_response(response_code, file_name, version = 120)
|
139
|
+
content_type :json
|
140
|
+
status response_code
|
141
|
+
File.open(File.dirname(__FILE__) + "/fixtures/oneview/v#{version}/" + file_name, 'rb').read
|
142
|
+
rescue Errno::ENOENT
|
143
|
+
puts "ERROR: FakeOneView: File not found:\n '#{File.dirname(__FILE__) + "/fixtures/oneview/v#{version}/" + file_name}'"
|
144
|
+
content_type :json
|
145
|
+
status 404
|
146
|
+
File.open(File.dirname(__FILE__) + '/fixtures/oneview/v120/error_404.json', 'rb').read
|
147
|
+
end
|
148
|
+
end
|
@@ -1,14 +1,14 @@
|
|
1
|
-
{
|
2
|
-
"errorSource": null,
|
3
|
-
"nestedErrors": [
|
4
|
-
|
5
|
-
],
|
6
|
-
"errorCode": "GENERIC_HTTP_404",
|
7
|
-
"data": {
|
8
|
-
},
|
9
|
-
"recommendedActions": [
|
10
|
-
"Check the request URI, then resend the request."
|
11
|
-
],
|
12
|
-
"details": "The requested resource could not be found.",
|
13
|
-
"message": "Not Found"
|
1
|
+
{
|
2
|
+
"errorSource": null,
|
3
|
+
"nestedErrors": [
|
4
|
+
|
5
|
+
],
|
6
|
+
"errorCode": "GENERIC_HTTP_404",
|
7
|
+
"data": {
|
8
|
+
},
|
9
|
+
"recommendedActions": [
|
10
|
+
"Check the request URI, then resend the request."
|
11
|
+
],
|
12
|
+
"details": "The requested resource could not be found.",
|
13
|
+
"message": "Not Found"
|
14
14
|
}
|
@@ -1,5 +1,5 @@
|
|
1
|
-
{
|
2
|
-
"partnerData": {
|
3
|
-
},
|
4
|
-
"sessionID": "AA_aaAaa3AA3Aa0_aAaAA4AAAA3AAAAA"
|
1
|
+
{
|
2
|
+
"partnerData": {
|
3
|
+
},
|
4
|
+
"sessionID": "AA_aaAaa3AA3Aa0_aAaAA4AAAA3AAAAA"
|
5
5
|
}
|
@@ -1,99 +1,99 @@
|
|
1
|
-
{
|
2
|
-
"type": "OsdPaginatedCollection",
|
3
|
-
"members": [
|
4
|
-
{
|
5
|
-
"modifiedBy": "applianceserviceaccount",
|
6
|
-
"createdBy": "applianceserviceaccount",
|
7
|
-
"buildPlanHistory": [],
|
8
|
-
"buildPlanStepType": null,
|
9
|
-
"isCustomerContent": true,
|
10
|
-
"buildPlanCustAttrs": [],
|
11
|
-
"buildPlanItems": [],
|
12
|
-
"os": "OS - Red Hat Enterprise Linux Server 6",
|
13
|
-
"arch": "x64",
|
14
|
-
"lifeCycle": "AVAILABLE",
|
15
|
-
"description": "Performs a scripted install of Red Hat Enterprise Linux 6.5 using a generic kickstart file.\n(c) Copyright 2014 Hewlett-Packard Development Company, L.P.\n\nRequirements:\n* HP ProLiant server with iLO\n* IC server provisioning Media Server must contain the OS distribution\n\nRequired Custom Attribute: None\n\nOptional Custom Attributes:\n* encrypted_root_password (must be encrypted)\n* boot_disk\n* kernel_arguments",
|
16
|
-
"status": "",
|
17
|
-
"name": "CHEF-RHEL-6.5-x64",
|
18
|
-
"state": "",
|
19
|
-
"modified": "2015-07-14T03:51:30.000Z",
|
20
|
-
"eTag": "2015-07-14T03:51:30.000Z",
|
21
|
-
"created": "2015-05-19T19:05:37.000Z",
|
22
|
-
"category": "os-deployment-build-plans",
|
23
|
-
"uri": "/rest/os-deployment-build-plans/1280001"
|
24
|
-
},
|
25
|
-
{
|
26
|
-
"modifiedBy": "applianceserviceaccount",
|
27
|
-
"createdBy": "applianceserviceaccount",
|
28
|
-
"buildPlanHistory": [],
|
29
|
-
"buildPlanStepType": null,
|
30
|
-
"isCustomerContent": true,
|
31
|
-
"buildPlanCustAttrs": [],
|
32
|
-
"buildPlanItems": [],
|
33
|
-
"os": "Other",
|
34
|
-
"arch": "x64",
|
35
|
-
"lifeCycle": "AVAILABLE",
|
36
|
-
"description": "Reboots a target server in maintenance mode to the local disk. \n(c) Copyright 2013 Hewlett-Packard Development Company, L.P.\n\nRequirements:\n* HP ProLiant server with iLO\n\nCustom Attributes: None",
|
37
|
-
"status": "",
|
38
|
-
"name": "CHEF - RHEL 6.6 x64",
|
39
|
-
"state": "",
|
40
|
-
"modified": "2015-05-21T17:23:58.000Z",
|
41
|
-
"eTag": "2015-05-21T17:23:58.000Z",
|
42
|
-
"created": "2015-05-21T17:23:58.000Z",
|
43
|
-
"category": "os-deployment-build-plans",
|
44
|
-
"uri": "/rest/os-deployment-build-plans/1300001"
|
45
|
-
},
|
46
|
-
{
|
47
|
-
"modifiedBy": "applianceserviceaccount",
|
48
|
-
"createdBy": "applianceserviceaccount",
|
49
|
-
"buildPlanHistory": [],
|
50
|
-
"buildPlanStepType": null,
|
51
|
-
"isCustomerContent": true,
|
52
|
-
"buildPlanCustAttrs": [],
|
53
|
-
"buildPlanItems": [],
|
54
|
-
"os": "OS - Red Hat Enterprise Linux Server 7",
|
55
|
-
"arch": "x64",
|
56
|
-
"lifeCycle": "AVAILABLE",
|
57
|
-
"description": "Performs a scripted install of Red Hat Enterprise Linux 7.0 using a generic kickstart file.\n(c) Copyright 2014 Hewlett-Packard Development Company, L.P.\n\nRequirements:\n* HP ProLiant server with iLO\n* IC server provisioning Media Server must contain the OS distribution\n\nRequired Custom Attribute: None\n\nOptional Custom Attributes:\n* encrypted_root_password (must be encrypted)\n* boot_disk\n* kernel_arguments",
|
58
|
-
"status": "",
|
59
|
-
"name": "CHEF - RHEL 7.0 x64",
|
60
|
-
"state": "",
|
61
|
-
"modified": "2015-07-24T09:32:52.000Z",
|
62
|
-
"eTag": "2015-07-24T09:32:52.000Z",
|
63
|
-
"created": "2015-07-15T17:46:32.000Z",
|
64
|
-
"category": "os-deployment-build-plans",
|
65
|
-
"uri": "/rest/os-deployment-build-plans/1340001"
|
66
|
-
},
|
67
|
-
{
|
68
|
-
"modifiedBy": "detuser",
|
69
|
-
"createdBy": "opsware",
|
70
|
-
"buildPlanHistory": [],
|
71
|
-
"buildPlanStepType": null,
|
72
|
-
"isCustomerContent": false,
|
73
|
-
"buildPlanCustAttrs": [],
|
74
|
-
"buildPlanItems": [],
|
75
|
-
"os": "OS - Windows Server 2008 R2",
|
76
|
-
"arch": "x64",
|
77
|
-
"lifeCycle": "AVAILABLE",
|
78
|
-
"description": "Performs a scripted install of Windows 2008 R2 SP1 Standard using a generic unattend file.\n(c) Copyright 2013, 2014 Hewlett-Packard Development Company, L.P.\n\nRequirements:\n* HP ProLiant server with iLO\n* IC server provisioning Media Server must contain the OS distribution\n\nRequired Custom Attribute:\n* ProductKey_Win2008R2-Std-x64 - Set using the Settings -> Product Key page.\n\nOptional Custom Attributes:\n* ComputerName\n* EncryptedAdminPassword (must be encrypted)\n* SystemDisk\n* SystemDiskNumber",
|
79
|
-
"status": "",
|
80
|
-
"name": "ProLiant OS - Windows 2008 R2 SP1 Standard x64 Scripted Install",
|
81
|
-
"state": "",
|
82
|
-
"modified": "2014-09-15T02:30:17.000Z",
|
83
|
-
"eTag": "2014-09-15T02:30:17.000Z",
|
84
|
-
"created": "2014-09-15T02:30:17.000Z",
|
85
|
-
"category": "os-deployment-build-plans",
|
86
|
-
"uri": "/rest/os-deployment-build-plans/1040001"
|
87
|
-
}
|
88
|
-
],
|
89
|
-
"start": 0,
|
90
|
-
"prevPageUri": null,
|
91
|
-
"nextPageUri": null,
|
92
|
-
"total": 0,
|
93
|
-
"count": 71,
|
94
|
-
"modified": null,
|
95
|
-
"eTag": null,
|
96
|
-
"created": null,
|
97
|
-
"category": null,
|
98
|
-
"uri": null
|
99
|
-
}
|
1
|
+
{
|
2
|
+
"type": "OsdPaginatedCollection",
|
3
|
+
"members": [
|
4
|
+
{
|
5
|
+
"modifiedBy": "applianceserviceaccount",
|
6
|
+
"createdBy": "applianceserviceaccount",
|
7
|
+
"buildPlanHistory": [],
|
8
|
+
"buildPlanStepType": null,
|
9
|
+
"isCustomerContent": true,
|
10
|
+
"buildPlanCustAttrs": [],
|
11
|
+
"buildPlanItems": [],
|
12
|
+
"os": "OS - Red Hat Enterprise Linux Server 6",
|
13
|
+
"arch": "x64",
|
14
|
+
"lifeCycle": "AVAILABLE",
|
15
|
+
"description": "Performs a scripted install of Red Hat Enterprise Linux 6.5 using a generic kickstart file.\n(c) Copyright 2014 Hewlett-Packard Development Company, L.P.\n\nRequirements:\n* HP ProLiant server with iLO\n* IC server provisioning Media Server must contain the OS distribution\n\nRequired Custom Attribute: None\n\nOptional Custom Attributes:\n* encrypted_root_password (must be encrypted)\n* boot_disk\n* kernel_arguments",
|
16
|
+
"status": "",
|
17
|
+
"name": "CHEF-RHEL-6.5-x64",
|
18
|
+
"state": "",
|
19
|
+
"modified": "2015-07-14T03:51:30.000Z",
|
20
|
+
"eTag": "2015-07-14T03:51:30.000Z",
|
21
|
+
"created": "2015-05-19T19:05:37.000Z",
|
22
|
+
"category": "os-deployment-build-plans",
|
23
|
+
"uri": "/rest/os-deployment-build-plans/1280001"
|
24
|
+
},
|
25
|
+
{
|
26
|
+
"modifiedBy": "applianceserviceaccount",
|
27
|
+
"createdBy": "applianceserviceaccount",
|
28
|
+
"buildPlanHistory": [],
|
29
|
+
"buildPlanStepType": null,
|
30
|
+
"isCustomerContent": true,
|
31
|
+
"buildPlanCustAttrs": [],
|
32
|
+
"buildPlanItems": [],
|
33
|
+
"os": "Other",
|
34
|
+
"arch": "x64",
|
35
|
+
"lifeCycle": "AVAILABLE",
|
36
|
+
"description": "Reboots a target server in maintenance mode to the local disk. \n(c) Copyright 2013 Hewlett-Packard Development Company, L.P.\n\nRequirements:\n* HP ProLiant server with iLO\n\nCustom Attributes: None",
|
37
|
+
"status": "",
|
38
|
+
"name": "CHEF - RHEL 6.6 x64",
|
39
|
+
"state": "",
|
40
|
+
"modified": "2015-05-21T17:23:58.000Z",
|
41
|
+
"eTag": "2015-05-21T17:23:58.000Z",
|
42
|
+
"created": "2015-05-21T17:23:58.000Z",
|
43
|
+
"category": "os-deployment-build-plans",
|
44
|
+
"uri": "/rest/os-deployment-build-plans/1300001"
|
45
|
+
},
|
46
|
+
{
|
47
|
+
"modifiedBy": "applianceserviceaccount",
|
48
|
+
"createdBy": "applianceserviceaccount",
|
49
|
+
"buildPlanHistory": [],
|
50
|
+
"buildPlanStepType": null,
|
51
|
+
"isCustomerContent": true,
|
52
|
+
"buildPlanCustAttrs": [],
|
53
|
+
"buildPlanItems": [],
|
54
|
+
"os": "OS - Red Hat Enterprise Linux Server 7",
|
55
|
+
"arch": "x64",
|
56
|
+
"lifeCycle": "AVAILABLE",
|
57
|
+
"description": "Performs a scripted install of Red Hat Enterprise Linux 7.0 using a generic kickstart file.\n(c) Copyright 2014 Hewlett-Packard Development Company, L.P.\n\nRequirements:\n* HP ProLiant server with iLO\n* IC server provisioning Media Server must contain the OS distribution\n\nRequired Custom Attribute: None\n\nOptional Custom Attributes:\n* encrypted_root_password (must be encrypted)\n* boot_disk\n* kernel_arguments",
|
58
|
+
"status": "",
|
59
|
+
"name": "CHEF - RHEL 7.0 x64",
|
60
|
+
"state": "",
|
61
|
+
"modified": "2015-07-24T09:32:52.000Z",
|
62
|
+
"eTag": "2015-07-24T09:32:52.000Z",
|
63
|
+
"created": "2015-07-15T17:46:32.000Z",
|
64
|
+
"category": "os-deployment-build-plans",
|
65
|
+
"uri": "/rest/os-deployment-build-plans/1340001"
|
66
|
+
},
|
67
|
+
{
|
68
|
+
"modifiedBy": "detuser",
|
69
|
+
"createdBy": "opsware",
|
70
|
+
"buildPlanHistory": [],
|
71
|
+
"buildPlanStepType": null,
|
72
|
+
"isCustomerContent": false,
|
73
|
+
"buildPlanCustAttrs": [],
|
74
|
+
"buildPlanItems": [],
|
75
|
+
"os": "OS - Windows Server 2008 R2",
|
76
|
+
"arch": "x64",
|
77
|
+
"lifeCycle": "AVAILABLE",
|
78
|
+
"description": "Performs a scripted install of Windows 2008 R2 SP1 Standard using a generic unattend file.\n(c) Copyright 2013, 2014 Hewlett-Packard Development Company, L.P.\n\nRequirements:\n* HP ProLiant server with iLO\n* IC server provisioning Media Server must contain the OS distribution\n\nRequired Custom Attribute:\n* ProductKey_Win2008R2-Std-x64 - Set using the Settings -> Product Key page.\n\nOptional Custom Attributes:\n* ComputerName\n* EncryptedAdminPassword (must be encrypted)\n* SystemDisk\n* SystemDiskNumber",
|
79
|
+
"status": "",
|
80
|
+
"name": "ProLiant OS - Windows 2008 R2 SP1 Standard x64 Scripted Install",
|
81
|
+
"state": "",
|
82
|
+
"modified": "2014-09-15T02:30:17.000Z",
|
83
|
+
"eTag": "2014-09-15T02:30:17.000Z",
|
84
|
+
"created": "2014-09-15T02:30:17.000Z",
|
85
|
+
"category": "os-deployment-build-plans",
|
86
|
+
"uri": "/rest/os-deployment-build-plans/1040001"
|
87
|
+
}
|
88
|
+
],
|
89
|
+
"start": 0,
|
90
|
+
"prevPageUri": null,
|
91
|
+
"nextPageUri": null,
|
92
|
+
"total": 0,
|
93
|
+
"count": 71,
|
94
|
+
"modified": null,
|
95
|
+
"eTag": null,
|
96
|
+
"created": null,
|
97
|
+
"category": null,
|
98
|
+
"uri": null
|
99
|
+
}
|
@@ -1,179 +1,179 @@
|
|
1
|
-
{
|
2
|
-
"type": "OsdPaginatedCollection",
|
3
|
-
"members": [
|
4
|
-
{
|
5
|
-
"modified": "2015-08-10T16:45:57.019Z",
|
6
|
-
"deviceGroups": null,
|
7
|
-
"customAttributes": [],
|
8
|
-
"created": "2015-08-10T04:35:52.000Z",
|
9
|
-
"uuid": "2b4e5e6c-6154-7849-9807-c96a7e0d445b",
|
10
|
-
"cpus": [
|
11
|
-
{
|
12
|
-
"cacheSize": "15360",
|
13
|
-
"speed": "1200",
|
14
|
-
"stepping": "7",
|
15
|
-
"model": "Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz",
|
16
|
-
"family": "X64",
|
17
|
-
"status": "ON-LINE",
|
18
|
-
"slot": "0"
|
19
|
-
}
|
20
|
-
],
|
21
|
-
"ilo": null,
|
22
|
-
"serverLocation": {
|
23
|
-
"rack": "DemoRack",
|
24
|
-
"enclosure": "dazzle",
|
25
|
-
"bay": "3"
|
26
|
-
},
|
27
|
-
"operatingSystemVersion": null,
|
28
|
-
"opswLifecycle": "MANAGED",
|
29
|
-
"osSPVersion": null,
|
30
|
-
"peerIP": "192.168.133.41",
|
31
|
-
"stage": "UNKNOWN",
|
32
|
-
"running": "false",
|
33
|
-
"reporting": true,
|
34
|
-
"storageDevices": [],
|
35
|
-
"ram": "16291780",
|
36
|
-
"swap": "8216568",
|
37
|
-
"architecture": null,
|
38
|
-
"defaultGateway": "
|
39
|
-
"discoveredDate": "2015-08-10T04:35:52.000Z",
|
40
|
-
"facility": "Appliance",
|
41
|
-
"hardwareModel": "PROLIANT BL460C GEN8",
|
42
|
-
"jobsHistory": null,
|
43
|
-
"lastScannedDate": null,
|
44
|
-
"loopbackIP": null,
|
45
|
-
"managementIP": "192.168.133.41",
|
46
|
-
"manufacturer": "HP",
|
47
|
-
"mid": "1680001",
|
48
|
-
"netBios": null,
|
49
|
-
"operatingSystem": null,
|
50
|
-
"osFlavor": null,
|
51
|
-
"serialNumber": "
|
52
|
-
"locale": null,
|
53
|
-
"description": null,
|
54
|
-
"status": "OK",
|
55
|
-
"uri": "/rest/os-deployment-servers/1680001",
|
56
|
-
"name": "chef-web02.domain.com",
|
57
|
-
"interfaces": [
|
58
|
-
{
|
59
|
-
"speed": "10000",
|
60
|
-
"netmask": "255.255.254.0",
|
61
|
-
"duplex": "FULL",
|
62
|
-
"ipv6Addr": "",
|
63
|
-
"macAddr": "
|
64
|
-
"dhcpEnabled": false,
|
65
|
-
"ipv4Addr": "
|
66
|
-
"type": "ETHERNET",
|
67
|
-
"slot": "eth1"
|
68
|
-
},
|
69
|
-
{
|
70
|
-
"speed": "10000",
|
71
|
-
"netmask": "255.255.255.0",
|
72
|
-
"duplex": "FULL",
|
73
|
-
"ipv6Addr": "",
|
74
|
-
"macAddr": "
|
75
|
-
"dhcpEnabled": true,
|
76
|
-
"ipv4Addr": "192.168.133.41",
|
77
|
-
"type": "ETHERNET",
|
78
|
-
"slot": "eth0"
|
79
|
-
}
|
80
|
-
],
|
81
|
-
"state": "OK",
|
82
|
-
"hostName": "chef-web02.domain.com",
|
83
|
-
"eTag": "2015-08-10T16:45:57.019Z",
|
84
|
-
"category": "os-deployment-servers"
|
85
|
-
},
|
86
|
-
{
|
87
|
-
"modified": "2015-08-10T04:55:27.017Z",
|
88
|
-
"deviceGroups": null,
|
89
|
-
"customAttributes": [],
|
90
|
-
"created": "2015-08-10T04:35:40.000Z",
|
91
|
-
"uuid": "7d805e1c-beac-e84e-868b-2fb0b6504474",
|
92
|
-
"cpus": [
|
93
|
-
{
|
94
|
-
"cacheSize": "15360",
|
95
|
-
"speed": "1200",
|
96
|
-
"stepping": "7",
|
97
|
-
"model": "Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz",
|
98
|
-
"family": "X64",
|
99
|
-
"status": "ON-LINE",
|
100
|
-
"slot": "0"
|
101
|
-
}
|
102
|
-
],
|
103
|
-
"ilo": null,
|
104
|
-
"serverLocation": {
|
105
|
-
"rack": "DemoRack",
|
106
|
-
"enclosure": "dazzle",
|
107
|
-
"bay": "2"
|
108
|
-
},
|
109
|
-
"operatingSystemVersion": null,
|
110
|
-
"opswLifecycle": "MANAGED",
|
111
|
-
"osSPVersion": null,
|
112
|
-
"peerIP": "192.168.133.36",
|
113
|
-
"stage": "UNKNOWN",
|
114
|
-
"running": "false",
|
115
|
-
"reporting": true,
|
116
|
-
"storageDevices": [],
|
117
|
-
"ram": "16291780",
|
118
|
-
"swap": "8216568",
|
119
|
-
"architecture": null,
|
120
|
-
"defaultGateway": "
|
121
|
-
"discoveredDate": "2015-08-10T04:35:39.000Z",
|
122
|
-
"facility": "Appliance",
|
123
|
-
"hardwareModel": "PROLIANT BL460C GEN8",
|
124
|
-
"jobsHistory": null,
|
125
|
-
"lastScannedDate": null,
|
126
|
-
"loopbackIP": null,
|
127
|
-
"managementIP": "192.168.133.36",
|
128
|
-
"manufacturer": "HP",
|
129
|
-
"mid": "1670001",
|
130
|
-
"netBios": null,
|
131
|
-
"operatingSystem": null,
|
132
|
-
"osFlavor": null,
|
133
|
-
"serialNumber": "VCGE9KB041",
|
134
|
-
"locale": null,
|
135
|
-
"description": null,
|
136
|
-
"status": "OK",
|
137
|
-
"uri": "/rest/os-deployment-servers/1670001",
|
138
|
-
"name": "chef-web01.domain.com",
|
139
|
-
"interfaces": [
|
140
|
-
{
|
141
|
-
"speed": "10000",
|
142
|
-
"netmask": "255.255.254.0",
|
143
|
-
"duplex": "FULL",
|
144
|
-
"ipv6Addr": "",
|
145
|
-
"macAddr": "
|
146
|
-
"dhcpEnabled": false,
|
147
|
-
"ipv4Addr": "
|
148
|
-
"type": "ETHERNET",
|
149
|
-
"slot": "eth1"
|
150
|
-
},
|
151
|
-
{
|
152
|
-
"speed": "10000",
|
153
|
-
"netmask": "255.255.255.0",
|
154
|
-
"duplex": "FULL",
|
155
|
-
"ipv6Addr": "",
|
156
|
-
"macAddr": "
|
157
|
-
"dhcpEnabled": true,
|
158
|
-
"ipv4Addr": "192.168.133.36",
|
159
|
-
"type": "ETHERNET",
|
160
|
-
"slot": "eth0"
|
161
|
-
}
|
162
|
-
],
|
163
|
-
"state": "OK",
|
164
|
-
"hostName": "chef-web01.domain.com",
|
165
|
-
"eTag": "2015-08-10T04:55:27.017Z",
|
166
|
-
"category": "os-deployment-servers"
|
167
|
-
}
|
168
|
-
],
|
169
|
-
"start": 0,
|
170
|
-
"prevPageUri": null,
|
171
|
-
"nextPageUri": null,
|
172
|
-
"total": 2,
|
173
|
-
"count": 2,
|
174
|
-
"modified": null,
|
175
|
-
"eTag": null,
|
176
|
-
"created": null,
|
177
|
-
"category": null,
|
178
|
-
"uri": null
|
1
|
+
{
|
2
|
+
"type": "OsdPaginatedCollection",
|
3
|
+
"members": [
|
4
|
+
{
|
5
|
+
"modified": "2015-08-10T16:45:57.019Z",
|
6
|
+
"deviceGroups": null,
|
7
|
+
"customAttributes": [],
|
8
|
+
"created": "2015-08-10T04:35:52.000Z",
|
9
|
+
"uuid": "2b4e5e6c-6154-7849-9807-c96a7e0d445b",
|
10
|
+
"cpus": [
|
11
|
+
{
|
12
|
+
"cacheSize": "15360",
|
13
|
+
"speed": "1200",
|
14
|
+
"stepping": "7",
|
15
|
+
"model": "Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz",
|
16
|
+
"family": "X64",
|
17
|
+
"status": "ON-LINE",
|
18
|
+
"slot": "0"
|
19
|
+
}
|
20
|
+
],
|
21
|
+
"ilo": null,
|
22
|
+
"serverLocation": {
|
23
|
+
"rack": "DemoRack",
|
24
|
+
"enclosure": "dazzle",
|
25
|
+
"bay": "3"
|
26
|
+
},
|
27
|
+
"operatingSystemVersion": null,
|
28
|
+
"opswLifecycle": "MANAGED",
|
29
|
+
"osSPVersion": null,
|
30
|
+
"peerIP": "192.168.133.41",
|
31
|
+
"stage": "UNKNOWN",
|
32
|
+
"running": "false",
|
33
|
+
"reporting": true,
|
34
|
+
"storageDevices": [],
|
35
|
+
"ram": "16291780",
|
36
|
+
"swap": "8216568",
|
37
|
+
"architecture": null,
|
38
|
+
"defaultGateway": "172.125.32.1",
|
39
|
+
"discoveredDate": "2015-08-10T04:35:52.000Z",
|
40
|
+
"facility": "Appliance",
|
41
|
+
"hardwareModel": "PROLIANT BL460C GEN8",
|
42
|
+
"jobsHistory": null,
|
43
|
+
"lastScannedDate": null,
|
44
|
+
"loopbackIP": null,
|
45
|
+
"managementIP": "192.168.133.41",
|
46
|
+
"manufacturer": "HP",
|
47
|
+
"mid": "1680001",
|
48
|
+
"netBios": null,
|
49
|
+
"operatingSystem": null,
|
50
|
+
"osFlavor": null,
|
51
|
+
"serialNumber": "VCGE9KB035",
|
52
|
+
"locale": null,
|
53
|
+
"description": null,
|
54
|
+
"status": "OK",
|
55
|
+
"uri": "/rest/os-deployment-servers/1680001",
|
56
|
+
"name": "chef-web02.domain.com",
|
57
|
+
"interfaces": [
|
58
|
+
{
|
59
|
+
"speed": "10000",
|
60
|
+
"netmask": "255.255.254.0",
|
61
|
+
"duplex": "FULL",
|
62
|
+
"ipv6Addr": "",
|
63
|
+
"macAddr": "11:11:11:11:01:17",
|
64
|
+
"dhcpEnabled": false,
|
65
|
+
"ipv4Addr": "172.125.32.39",
|
66
|
+
"type": "ETHERNET",
|
67
|
+
"slot": "eth1"
|
68
|
+
},
|
69
|
+
{
|
70
|
+
"speed": "10000",
|
71
|
+
"netmask": "255.255.255.0",
|
72
|
+
"duplex": "FULL",
|
73
|
+
"ipv6Addr": "",
|
74
|
+
"macAddr": "11:11:11:11:01:16",
|
75
|
+
"dhcpEnabled": true,
|
76
|
+
"ipv4Addr": "192.168.133.41",
|
77
|
+
"type": "ETHERNET",
|
78
|
+
"slot": "eth0"
|
79
|
+
}
|
80
|
+
],
|
81
|
+
"state": "OK",
|
82
|
+
"hostName": "chef-web02.domain.com",
|
83
|
+
"eTag": "2015-08-10T16:45:57.019Z",
|
84
|
+
"category": "os-deployment-servers"
|
85
|
+
},
|
86
|
+
{
|
87
|
+
"modified": "2015-08-10T04:55:27.017Z",
|
88
|
+
"deviceGroups": null,
|
89
|
+
"customAttributes": [],
|
90
|
+
"created": "2015-08-10T04:35:40.000Z",
|
91
|
+
"uuid": "7d805e1c-beac-e84e-868b-2fb0b6504474",
|
92
|
+
"cpus": [
|
93
|
+
{
|
94
|
+
"cacheSize": "15360",
|
95
|
+
"speed": "1200",
|
96
|
+
"stepping": "7",
|
97
|
+
"model": "Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz",
|
98
|
+
"family": "X64",
|
99
|
+
"status": "ON-LINE",
|
100
|
+
"slot": "0"
|
101
|
+
}
|
102
|
+
],
|
103
|
+
"ilo": null,
|
104
|
+
"serverLocation": {
|
105
|
+
"rack": "DemoRack",
|
106
|
+
"enclosure": "dazzle",
|
107
|
+
"bay": "2"
|
108
|
+
},
|
109
|
+
"operatingSystemVersion": null,
|
110
|
+
"opswLifecycle": "MANAGED",
|
111
|
+
"osSPVersion": null,
|
112
|
+
"peerIP": "192.168.133.36",
|
113
|
+
"stage": "UNKNOWN",
|
114
|
+
"running": "false",
|
115
|
+
"reporting": true,
|
116
|
+
"storageDevices": [],
|
117
|
+
"ram": "16291780",
|
118
|
+
"swap": "8216568",
|
119
|
+
"architecture": null,
|
120
|
+
"defaultGateway": "172.125.32.1",
|
121
|
+
"discoveredDate": "2015-08-10T04:35:39.000Z",
|
122
|
+
"facility": "Appliance",
|
123
|
+
"hardwareModel": "PROLIANT BL460C GEN8",
|
124
|
+
"jobsHistory": null,
|
125
|
+
"lastScannedDate": null,
|
126
|
+
"loopbackIP": null,
|
127
|
+
"managementIP": "192.168.133.36",
|
128
|
+
"manufacturer": "HP",
|
129
|
+
"mid": "1670001",
|
130
|
+
"netBios": null,
|
131
|
+
"operatingSystem": null,
|
132
|
+
"osFlavor": null,
|
133
|
+
"serialNumber": "VCGE9KB041",
|
134
|
+
"locale": null,
|
135
|
+
"description": null,
|
136
|
+
"status": "OK",
|
137
|
+
"uri": "/rest/os-deployment-servers/1670001",
|
138
|
+
"name": "chef-web01.domain.com",
|
139
|
+
"interfaces": [
|
140
|
+
{
|
141
|
+
"speed": "10000",
|
142
|
+
"netmask": "255.255.254.0",
|
143
|
+
"duplex": "FULL",
|
144
|
+
"ipv6Addr": "",
|
145
|
+
"macAddr": "11:11:11:11:01:15",
|
146
|
+
"dhcpEnabled": false,
|
147
|
+
"ipv4Addr": "172.125.32.38",
|
148
|
+
"type": "ETHERNET",
|
149
|
+
"slot": "eth1"
|
150
|
+
},
|
151
|
+
{
|
152
|
+
"speed": "10000",
|
153
|
+
"netmask": "255.255.255.0",
|
154
|
+
"duplex": "FULL",
|
155
|
+
"ipv6Addr": "",
|
156
|
+
"macAddr": "11:11:11:11:01:14",
|
157
|
+
"dhcpEnabled": true,
|
158
|
+
"ipv4Addr": "192.168.133.36",
|
159
|
+
"type": "ETHERNET",
|
160
|
+
"slot": "eth0"
|
161
|
+
}
|
162
|
+
],
|
163
|
+
"state": "OK",
|
164
|
+
"hostName": "chef-web01.domain.com",
|
165
|
+
"eTag": "2015-08-10T04:55:27.017Z",
|
166
|
+
"category": "os-deployment-servers"
|
167
|
+
}
|
168
|
+
],
|
169
|
+
"start": 0,
|
170
|
+
"prevPageUri": null,
|
171
|
+
"nextPageUri": null,
|
172
|
+
"total": 2,
|
173
|
+
"count": 2,
|
174
|
+
"modified": null,
|
175
|
+
"eTag": null,
|
176
|
+
"created": null,
|
177
|
+
"category": null,
|
178
|
+
"uri": null
|
179
179
|
}
|