Skip to content

Commit 98a1e99

Browse files
author
MUzairS15
committed
finalize changes
Signed-off-by: MUzairS15 <[email protected]>
1 parent 45521cd commit 98a1e99

File tree

2 files changed

+23
-7
lines changed

2 files changed

+23
-7
lines changed

generators/github/package.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ func (gp GitHubPackage) GenerateComponents() ([]_component.ComponentDefinition,
5151

5252
comps, err := component.GenerateFromOpenAPI(string(crd), gp)
5353
if err != nil {
54-
errs = append(errs, err)
54+
errs = append(errs, component.ErrGetSchema(err))
5555
continue
5656
}
5757
components = append(components, comps...)

utils/component/openapi_generator.go

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,12 @@ func GenerateFromOpenAPI(resource string, pkg models.Package) ([]component.Compo
3030
}
3131
cuectx := cuecontext.New()
3232
cueParsedManExpr, err := cueJson.Extract("", []byte(resource))
33+
if err != nil {
34+
return nil, err
35+
}
36+
3337
parsedManifest := cuectx.BuildExpr(cueParsedManExpr)
34-
definitions := parsedManifest.LookupPath(cue.ParsePath("components.schemas"))
38+
definitions, err := utils.Lookup(parsedManifest, "components.schemas")
3539

3640
if err != nil {
3741
return nil, err
@@ -46,8 +50,8 @@ func GenerateFromOpenAPI(resource string, pkg models.Package) ([]component.Compo
4650

4751
for fields.Next() {
4852
fieldVal := fields.Value()
49-
kindCue := fieldVal.LookupPath(cue.ParsePath(`"x-kubernetes-group-version-kind"[0].kind`))
50-
if kindCue.Err() != nil {
53+
kindCue, err := utils.Lookup(fieldVal, `"x-kubernetes-group-version-kind"[0].kind`)
54+
if err != nil {
5155
continue
5256
}
5357
kind, err := kindCue.String()
@@ -62,8 +66,16 @@ func GenerateFromOpenAPI(resource string, pkg models.Package) ([]component.Compo
6266
fmt.Printf("%v", err)
6367
continue
6468
}
65-
versionCue := fieldVal.LookupPath(cue.ParsePath(`"x-kubernetes-group-version-kind"[0].version`))
66-
groupCue := fieldVal.LookupPath(cue.ParsePath(`"x-kubernetes-group-version-kind"[0].group`))
69+
versionCue, err := utils.Lookup(fieldVal, `"x-kubernetes-group-version-kind"[0].version`)
70+
if err != nil {
71+
continue
72+
}
73+
74+
groupCue, err := utils.Lookup(fieldVal, `"x-kubernetes-group-version-kind"[0].group`)
75+
if err != nil {
76+
continue
77+
}
78+
6779
apiVersion, _ := versionCue.String()
6880
if g, _ := groupCue.String(); g != "" {
6981
apiVersion = g + "/" + apiVersion
@@ -140,8 +152,12 @@ func getResolvedManifest(manifest string) (string, error) {
140152

141153
cuectx := cuecontext.New()
142154
cueParsedManExpr, err := cueJson.Extract("", byt)
155+
if err != nil {
156+
return "", ErrGetSchema(err)
157+
}
158+
143159
parsedManifest := cuectx.BuildExpr(cueParsedManExpr)
144-
definitions := parsedManifest.LookupPath(cue.ParsePath("components.schemas"))
160+
definitions, err := utils.Lookup(parsedManifest, "components.schemas")
145161
if err != nil {
146162
return "", err
147163
}

0 commit comments

Comments
 (0)