handle secret types properly while masking sops data
Signed-off-by: Sanskar Jaiswal <jaiswalsanskar078@gmail.com>
This commit is contained in:
@@ -21,6 +21,7 @@ import (
|
||||
"context"
|
||||
"encoding/base64"
|
||||
"encoding/json"
|
||||
"errors"
|
||||
"fmt"
|
||||
"os"
|
||||
"sync"
|
||||
@@ -343,7 +344,11 @@ func maskSopsData(res *resource.Resource) error {
|
||||
res.PipeE(yaml.FieldClearer{Name: "sops"})
|
||||
|
||||
secretType, err := res.GetFieldValue(typeField)
|
||||
if err != nil {
|
||||
// If the intented type is Opaque, then it can be omitted from the manifest, since it's the default
|
||||
// Ref: https://kubernetes.io/docs/concepts/configuration/secret/#opaque-secrets
|
||||
if errors.As(err, &yaml.NoFieldError{}) {
|
||||
secretType = "Opaque"
|
||||
} else if err != nil {
|
||||
return fmt.Errorf("failed to mask secret %s sops data: %w", res.GetName(), err)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user