-
Notifications
You must be signed in to change notification settings - Fork 0
/
driver_fake.go
76 lines (62 loc) · 2.29 KB
/
driver_fake.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
68
69
70
71
72
73
74
75
76
/*
Copyright (c) 2017 SAP SE or an SAP affiliate company. 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 driver contains the cloud provider specific implementations to manage machines
package driver
import corev1 "k8s.io/api/core/v1"
// FakeDriver is a fake driver returned when none of the actual drivers match
type FakeDriver struct {
create func() (string, string, error)
delete func(string) error
//existing func() (string, v1alpha1.MachinePhase, error)
existing func() (string, error)
getVMs func() (VMs, error)
getVolNames func([]corev1.PersistentVolumeSpec) ([]string, error)
}
// NewFakeDriver returns a new fakedriver object
func NewFakeDriver(create func() (string, string, error), delete func(string) error, existing func() (string, error), getVMs func() (VMs, error)) Driver {
return &FakeDriver{
create: create,
delete: delete,
existing: existing,
getVMs: getVMs,
}
}
// Create returns a newly created fake driver
func (d *FakeDriver) Create() (string, string, error) {
return d.create()
}
// Delete deletes a fake driver
func (d *FakeDriver) Delete(machineID string) error {
return d.delete(machineID)
}
// GetExisting returns the existing fake driver
func (d *FakeDriver) GetExisting() (string, error) {
return d.existing()
}
// GetVMs returns a list of VMs
func (d *FakeDriver) GetVMs(name string) (VMs, error) {
return d.getVMs()
}
// GetVolNames parses volume names from pv specs
func (d *FakeDriver) GetVolNames(specs []corev1.PersistentVolumeSpec) ([]string, error) {
volNames := []string{}
return volNames, nil
}
//GetUserData return the used data whit which the VM will be booted
func (d *FakeDriver) GetUserData() string {
return ""
}
//SetUserData set the used data whit which the VM will be booted
func (d *FakeDriver) SetUserData(userData string) {
return
}