/
kubernetestypes.go
67 lines (57 loc) · 2.09 KB
/
kubernetestypes.go
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
/*
Copyright © 2020 Dell Inc. or its subsidiaries. All Rights Reserved.
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.
*/
package k8integration
// MetadataSC struct had name details
type MetadataSC struct {
Name string `json:"name"`
}
//ParametersSC strucd had symid, srp details
type ParametersSC struct {
Symid string `json:"SYMID"`
Srp string `json:"SRP"`
ServiceLevel string `json:"ServiceLevel"`
}
//StorageClass struct details for all the parameters of sc
type StorageClass struct {
Apiversion string `json:"apiVersion"`
Kind string `json:"kind"`
Metadata MetadataSC `json:"metadata"`
Provisioner string `json:"provisioner"`
ReclaimPolicy string `json:"reclaimPolicy"`
Parameters ParametersSC `json:"parameters"`
}
// MetadataPVC Struct had details of name of pvc
type MetadataPVC struct {
Name string `json:"name"`
}
// ResourcesPVC Struct parameters for Persistent volume claim resouces
type ResourcesPVC struct {
Requests RequestsPVC `json:"requests"`
}
// RequestsPVC Struct parameters for Persistent volume claim requests
type RequestsPVC struct {
Storage string `json:"storage"`
}
// SpecPVC Struct parameters for spec PVC
type SpecPVC struct {
AccessModes []string `json:"accessModes"`
Resources ResourcesPVC `json:"resources"`
StorageClassName string `json:"storageClassName"`
}
// PVC Struct had all parameters for Persistent volume claim
type PVC struct {
Apiversion string `json:"apiVersion"`
Kind string `json:"kind"`
Metadata MetadataPVC `json:"metadata"`
Spec SpecPVC `json:"spec"`
}