Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Infra ¶
type Infra struct { // Namespace is the Namespace used for managed infra. Namespace string // EnvoyGateway is the configuration used to startup Envoy Gateway. EnvoyGateway *egv1a1.EnvoyGateway // Client wrap k8s client. Client *InfraClient }
Infra manages the creation and deletion of Kubernetes infrastructure based on Infra IR resources.
func (*Infra) CreateOrUpdateProxyInfra ¶ added in v0.3.0
CreateOrUpdateProxyInfra creates the managed kube infra, if it doesn't exist.
func (*Infra) CreateOrUpdateRateLimitInfra ¶ added in v0.3.0
CreateOrUpdateRateLimitInfra creates the managed kube rate limit infra, if it doesn't exist.
func (*Infra) DeleteProxyInfra ¶ added in v0.3.0
DeleteProxyInfra removes the managed kube infra, if it doesn't exist.
type InfraClient ¶ added in v0.5.0
func New ¶ added in v0.5.0
func New(cli client.Client) *InfraClient
func (*InfraClient) GetUID ¶ added in v0.5.0
func (cli *InfraClient) GetUID(ctx context.Context, key client.ObjectKey, current client.Object) (types.UID, error)
GetUID retrieves the uid of one resource.
func (*InfraClient) ServerSideApply ¶ added in v1.0.2
type ResourceRender ¶ added in v0.5.0
type ResourceRender interface { Name() string ServiceAccount() (*corev1.ServiceAccount, error) Service() (*corev1.Service, error) ConfigMap() (*corev1.ConfigMap, error) Deployment() (*appsv1.Deployment, error) DeploymentSpec() (*egv1a1.KubernetesDeploymentSpec, error) DaemonSet() (*appsv1.DaemonSet, error) DaemonSetSpec() (*egv1a1.KubernetesDaemonSetSpec, error) HorizontalPodAutoscaler() (*autoscalingv2.HorizontalPodAutoscaler, error) HorizontalPodAutoscalerSpec() (*egv1a1.KubernetesHorizontalPodAutoscalerSpec, error) PodDisruptionBudget() (*policyv1.PodDisruptionBudget, error) PodDisruptionBudgetSpec() (*egv1a1.KubernetesPodDisruptionBudgetSpec, error) }
ResourceRender renders Kubernetes infrastructure resources based on Infra IR resources.
Source Files ¶
Click to show internal directories.
Click to hide internal directories.