-
Notifications
You must be signed in to change notification settings - Fork 50
/
provider.go
30 lines (27 loc) · 1.16 KB
/
provider.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
package types
// Provider specifies the provider-related information Hydroform needs to perform its tasks.
type Provider struct {
// Type specifies the cloud provider to use.
Type ProviderType `json:"type"`
// ProjectName specifies the project the cluster will be created in.
// In the case of Azure, it represents the resource group.
ProjectName string `json:"projectName"`
// CredentialsFilePath specifies the path to credentials used to access the cloud provider.
CredentialsFilePath string `json:"credentialsFilePath"`
// CustomConfigurations is a list of custom properties relevant for the chosen provider.
CustomConfigurations map[string]interface{} `json:"customConfigurations"`
}
// ProviderType lists available cloud providers.
type ProviderType string
const (
// GCP stands for the Google Cloud Platform.
GCP ProviderType = "gcp"
// Azure stands for the Microsoft Azure Cloud Computing Platform.
Azure ProviderType = "azure"
// AWS stands for Amazon Web Services.
AWS ProviderType = "aws"
// Gardener stands for the Gardener platform.
Gardener ProviderType = "gardener"
// Kind stands for the kind (kubernetes in docker) platform.
Kind ProviderType = "kind"
)