This repository has been archived by the owner on Nov 20, 2021. It is now read-only.
/
awsinfrastructureprovider_types.go
62 lines (49 loc) · 2.13 KB
/
awsinfrastructureprovider_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
/*
Copyright 2020 Critical Stack, LLC
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 v1alpha1
import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
)
// AWSInfrastructureProviderSpec defines the desired state of AWSInfrastructureProvider
type AWSInfrastructureProviderSpec struct {
Region string `json:"region"`
// other stuff
}
// InfrastructureProviderStatus defines the observed state of AWSInfrastructureProvider
type AWSInfrastructureProviderStatus struct {
Ready bool `json:"ready"`
LastUpdated metav1.Time `json:"lastUpdated"`
}
// +kubebuilder:object:root=true
// +kubebuilder:resource:path=awsinfrastructureproviders,scope=Namespaced,categories=machine-api
// +kubebuilder:storageversion
// +kubebuilder:subresource:status
// +kubebuilder:printcolumn:name="Ready",type="string",JSONPath=".status.ready",description="Provider is ready"
// +kubebuilder:printcolumn:name="Age",type=date,JSONPath=`.metadata.creationTimestamp`
// AWSInfrastructureProvider is the Schema for the awsinfrastructureproviders API
type AWSInfrastructureProvider struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec AWSInfrastructureProviderSpec `json:"spec,omitempty"`
Status AWSInfrastructureProviderStatus `json:"status,omitempty"`
}
// +kubebuilder:object:root=true
// InfrastructureProviderList contains a list of AWSInfrastructureProvider
type AWSInfrastructureProviderList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []AWSInfrastructureProvider `json:"items"`
}
func init() {
SchemeBuilder.Register(&AWSInfrastructureProvider{}, &AWSInfrastructureProviderList{})
}