test(kubernetes): increase test coverage (#546)

This commit is contained in:
Alexis Couvreur
2025-03-03 22:05:20 -05:00
committed by GitHub
parent 25ab9e1c7a
commit a37f5943cc
14 changed files with 615 additions and 92 deletions

View File

@@ -4,18 +4,20 @@ import (
"context"
"github.com/sablierapp/sablier/app/discovery"
"github.com/sablierapp/sablier/app/types"
"github.com/sablierapp/sablier/pkg/provider"
v1 "k8s.io/api/apps/v1"
core_v1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"strings"
)
func (p *KubernetesProvider) DeploymentList(ctx context.Context, options provider.InstanceListOptions) ([]types.Instance, error) {
func (p *KubernetesProvider) DeploymentList(ctx context.Context) ([]types.Instance, error) {
labelSelector := metav1.LabelSelector{
MatchLabels: map[string]string{
discovery.LabelEnable: "true",
},
}
deployments, err := p.Client.AppsV1().Deployments(core_v1.NamespaceAll).List(ctx, metav1.ListOptions{
LabelSelector: strings.Join(options.Labels, ","),
LabelSelector: metav1.FormatLabelSelector(&labelSelector),
})
if err != nil {
return nil, err
}
@@ -47,3 +49,33 @@ func (p *KubernetesProvider) deploymentToInstance(d *v1.Deployment) types.Instan
Group: group,
}
}
func (p *KubernetesProvider) DeploymentGroups(ctx context.Context) (map[string][]string, error) {
labelSelector := metav1.LabelSelector{
MatchLabels: map[string]string{
discovery.LabelEnable: "true",
},
}
deployments, err := p.Client.AppsV1().Deployments(core_v1.NamespaceAll).List(ctx, metav1.ListOptions{
LabelSelector: metav1.FormatLabelSelector(&labelSelector),
})
if err != nil {
return nil, err
}
groups := make(map[string][]string)
for _, deployment := range deployments.Items {
groupName := deployment.Labels[discovery.LabelGroup]
if len(groupName) == 0 {
groupName = discovery.LabelGroupDefaultValue
}
group := groups[groupName]
parsed := DeploymentName(&deployment, ParseOptions{Delimiter: p.delimiter})
group = append(group, parsed.Original)
groups[groupName] = group
}
return groups, nil
}