Codegen: format golang code from cue (#105352)

This commit is contained in:
Ryan McKinley
2025-05-14 06:56:27 +03:00
committed by GitHub
parent a26d907dae
commit f0d6375b3b
4 changed files with 37 additions and 3 deletions
+1 -1
View File
@@ -9,6 +9,7 @@ require (
github.com/grafana/cog v0.0.28
github.com/grafana/cuetsy v0.1.11
github.com/matryer/is v1.4.1
golang.org/x/tools v0.32.0
)
require (
@@ -48,7 +49,6 @@ require (
golang.org/x/net v0.39.0 // indirect
golang.org/x/sync v0.13.0 // indirect
golang.org/x/text v0.24.0 // indirect
golang.org/x/tools v0.32.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
)
+29
View File
@@ -0,0 +1,29 @@
package codegen
import (
"go/format"
"path/filepath"
"golang.org/x/tools/imports"
"github.com/grafana/codejen"
)
// GoFormat applies go format to each go file
func GoFormat() codejen.FileMapper {
return func(f codejen.File) (codejen.File, error) {
if filepath.Ext(f.RelativePath) != ".go" {
return f, nil
}
formatted, err := format.Source(f.Data)
if err != nil {
return f, err
}
f.Data, err = imports.Process("", formatted, &imports.Options{
Comments: true,
})
return f, err
}
}