forked from Azure/acs-engine
-
Notifications
You must be signed in to change notification settings - Fork 0
/
types.go
87 lines (76 loc) · 2.79 KB
/
types.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
77
78
79
80
81
82
83
84
85
86
87
package acsengine
import (
"github.com/Azure/acs-engine/pkg/api"
"github.com/Azure/acs-engine/pkg/api/v20160330"
"github.com/Azure/acs-engine/pkg/api/vlabs"
"github.com/Azure/acs-engine/pkg/i18n"
)
// DCOSNodeType represents the type of DCOS Node
type DCOSNodeType string
// VlabsContainerService is the type we read and write from file
// needed because the json that is sent to ARM and acs-engine
// is different from the json that the ACS RP Api gets from ARM
type VlabsContainerService struct {
api.TypeMeta
*vlabs.ContainerService
}
// V20160330ContainerService is the type we read and write from file
// needed because the json that is sent to ARM and acs-engine
// is different from the json that the ACS RP Api gets from ARM
type V20160330ContainerService struct {
api.TypeMeta
*v20160330.ContainerService
}
//DockerSpecConfig is the configurations of docker
type DockerSpecConfig struct {
DockerEngineRepo string
DockerComposeDownloadURL string
}
//DCOSSpecConfig is the configurations of DCOS
type DCOSSpecConfig struct {
DCOS188BootstrapDownloadURL string
DCOS190BootstrapDownloadURL string
DCOS198BootstrapDownloadURL string
DCOS110BootstrapDownloadURL string
DCOS111BootstrapDownloadURL string
DCOSWindowsBootstrapDownloadURL string
DcosRepositoryURL string // For custom install, for example CI, need these three addributes
DcosClusterPackageListID string // the id of the package list file
DcosProviderPackageID string // the id of the dcos-provider-xxx package
}
//KubernetesSpecConfig is the kubernetes container images used.
type KubernetesSpecConfig struct {
KubernetesImageBase string
TillerImageBase string
ACIConnectorImageBase string
EtcdDownloadURLBase string
KubeBinariesSASURLBase string
WindowsPackageSASURLBase string
WindowsTelemetryGUID string
CNIPluginsDownloadURL string
VnetCNILinuxPluginsDownloadURL string
VnetCNIWindowsPluginsDownloadURL string
}
//AzureEndpointConfig describes an Azure endpoint
type AzureEndpointConfig struct {
ResourceManagerVMDNSSuffix string
}
//AzureOSImageConfig describes an Azure OS image
type AzureOSImageConfig struct {
ImageOffer string
ImageSku string
ImagePublisher string
ImageVersion string
}
//AzureEnvironmentSpecConfig is the overall configuration differences in different cloud environments.
type AzureEnvironmentSpecConfig struct {
DockerSpecConfig DockerSpecConfig
KubernetesSpecConfig KubernetesSpecConfig
DCOSSpecConfig DCOSSpecConfig
EndpointConfig AzureEndpointConfig
OSImageConfig map[api.Distro]AzureOSImageConfig
}
// Context represents the object that is passed to the package
type Context struct {
Translator *i18n.Translator
}