-
Notifications
You must be signed in to change notification settings - Fork 17
/
Copy pathserver_profile.pp
166 lines (150 loc) · 4.61 KB
/
server_profile.pp
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
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
################################################################################
# (C) Copyright 2016-2020 Hewlett Packard Enterprise Development LP
#
# Licensed under the Apache License, Version 2.0 (the "License");
# You may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
################################################################################
# This example requires:
# A server hardware '172.18.6.15'
# Some get endpoints accept query parameters. Please check the API reference for more
# information on which filters can be used
# As the patch operation only supports one specific set of values, it has been replaced
# by 'update_from_template'
# The server template needs to be associated with a profile in order to perform this action
# oneview_server_profile{'Server Profile Update From Template':
# ensure => 'update_from_template',
# require => Oneview_server_profile['Server Profile Found'],
# data =>
# {
# name => 'Test Server Profile'
# }
# }
oneview_server_profile{'Server Profile Get Available Targets':
ensure => 'get_available_targets',
data => {
query_parameters => {
enclosureGroupUri => 'EG'
}
}
}
oneview_server_profile{'Server Profile Get Available Networks':
ensure => 'get_available_networks',
data => {
query_parameters => {
enclosureGroupUri => 'EG',
serverHardwareTypeUri => 'SY 480 Gen9 2'
}
}
}
# The method #get_available_server is available till API 1200.
oneview_server_profile{'Server Profile Get Available Servers':
ensure => 'get_available_servers',
data => {
query_parameters => {
enclosureGroupUri => 'EG'
}
}
}
oneview_server_profile{'Server Profile Create':
ensure => 'present',
data =>
{
type => 'ServerProfileV12',
name => 'Test Server Profile',
serverHardwareUri => '0000A66101, bay 7',
}
}
# Optional filters
oneview_server_profile{'Server Profile Found':
ensure => 'found',
data => {
name => 'Test Server Profile'
}
}
# This ensure method is only available for Synergy Hardware
oneview_server_profile{'Server Profile get_sas_logical_jbods':
ensure => 'get_sas_logical_jbods',
data =>
{
name => 'Test Server Profile',
}
}
# This ensure method is only available for Synergy Hardware
oneview_server_profile{'Server Profile get_sas_logical_jbod_drives':
ensure => 'get_sas_logical_jbod_drives',
data =>
{
name => 'Test Server Profile',
}
}
# This ensure method is only available for Synergy Hardware
oneview_server_profile{'Server Profile get_sas_logical_jbod_attachments':
ensure => 'get_sas_logical_jbod_attachments',
data =>
{
name => 'Test Server Profile',
}
}
# To update/modify the server profile name
oneview_server_profile{'Server Profile Edit':
ensure => 'present',
require => Oneview_server_profile['Server Profile Create'],
data =>
{
name => 'Test Server Profile',
new_name => 'Edited Server Profile'
}
}
# CAUTION: More than one matching server profile can be deleted at once
oneview_server_profile{'Server Profile Destroy':
ensure => 'absent',
require => Oneview_server_profile['Server Profile Edit'],
data =>
{
name => 'Edited Server Profile'
}
}
# The server profile must have been created based on a server profile template
# in order to get the compliance preview
# oneview_server_profile{'Server Profile Found':
# ensure => 'get_compliance_preview',
# # require => Oneview_server_profile['Server Profile Create'],
# data =>
# {
# name => 'Server_Profile_created_from_New SPT #2',
# # query_parameters =>
# # {
# # count => 1
# # }
# }
# }
# If you need to assign a network set, make sure its functionType is 'Set'
# oneview_server_profile{'Server Profile Found':
# ensure => 'present',
# data =>
# {
# name => 'Server_Profile_created_from_New SPT #2',
# connections =>
# [
# {
# name => 'My Connection',
# connectionUri => 'My network set'
# functionType => 'Set',
# },
# {
# name => 'My Connection 2',
# connectionUri => 'My ethernet'
# functionType => 'Ethernet',
# }
# ]
# }
# }