feat: add GetSecretNamesForStack, tidy up GetConfigNamesForStack

This commit is contained in:
3wc
2025-09-02 11:32:37 -04:00
parent f3edfea744
commit c2848cb3ec
3 changed files with 38 additions and 8 deletions

View File

@ -3,6 +3,8 @@ package client
import (
"context"
appPkg "coopcloud.tech/abra/pkg/app"
"github.com/docker/docker/api/types/filters"
"github.com/docker/docker/api/types/swarm"
"github.com/docker/docker/client"
)
@ -17,3 +19,25 @@ func StoreSecret(cl *client.Client, secretName, secretValue string) error {
return nil
}
func GetSecretNamesForStack(cl *client.Client, app appPkg.App) ([]string, error) {
filters, err := app.Filters(false, false)
if err != nil {
return nil, err
}
secretList, err := cl.SecretList(context.Background(), swarm.SecretListOptions{Filters: filters})
if err != nil {
return nil, err
}
return GetSecretNames(secretList), nil
}
func GetSecretNames(secrets []swarm.Secret) []string {
var secretNames []string
for _, secret := range secrets {
secretNames = append(secretNames, secret.Spec.Name)
}
return secretNames
}