Make failed manifest parse be shown less breaking

Relates to #328
This commit is contained in:
Andrei Pohilko
2023-04-11 12:09:12 +01:00
parent a0bf59edc6
commit b1294cbe1a
2 changed files with 18 additions and 5 deletions

View File

@@ -20,6 +20,7 @@ import (
"helm.sh/helm/v3/pkg/release"
v1 "k8s.io/apimachinery/pkg/apis/testapigroup/v1"
"k8s.io/client-go/tools/clientcmd"
//"sigs.k8s.io/yaml"
)
type DataLayer struct {
@@ -113,20 +114,20 @@ func ParseManifests(out string) ([]*v1.Carp, error) {
}
if err != nil {
return nil, errorx.Decorate(err, "failed to parse manifest document #%d", len(res)+1)
return res, errorx.Decorate(err, "failed to parse manifest document #%d", len(res)+1)
}
// k8s libs uses only JSON tags defined, say hello to https://github.com/go-yaml/yaml/issues/424
// we can juggle it
jsoned, err := json.Marshal(tmp)
if err != nil {
return nil, err
return res, err
}
var doc v1.Carp
err = json.Unmarshal(jsoned, &doc)
if err != nil {
return nil, err
return res, err
}
if doc.Kind == "" {