Skip to content

Commit 6e6dea2

Browse files
committed
fixup! fix: generate typescript types for healthcheck
1 parent 088cabb commit 6e6dea2

File tree

9 files changed

+51
-92
lines changed

9 files changed

+51
-92
lines changed

coderd/apidoc/docs.go

+6-14
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

coderd/apidoc/swagger.json

+6-14
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

coderd/healthcheck/websocket.go

+7-13
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,10 @@ type WebsocketReportOptions struct {
2121

2222
// @typescript-generate WebsocketReport
2323
type WebsocketReport struct {
24-
Healthy bool `json:"healthy"`
25-
Response WebsocketResponse `json:"response"`
26-
Error *string `json:"error"`
27-
}
28-
29-
type WebsocketResponse struct {
30-
Body string `json:"body"`
31-
Code int `json:"code"`
24+
Healthy bool `json:"healthy"`
25+
Body string `json:"body"`
26+
Code int `json:"code"`
27+
Error *string `json:"error"`
3228
}
3329

3430
func (r *WebsocketReport) Run(ctx context.Context, opts *WebsocketReportOptions) {
@@ -60,10 +56,8 @@ func (r *WebsocketReport) Run(ctx context.Context, opts *WebsocketReportOptions)
6056
}
6157
}
6258

63-
r.Response = WebsocketResponse{
64-
Body: body,
65-
Code: res.StatusCode,
66-
}
59+
r.Body = body
60+
r.Code = res.StatusCode
6761
}
6862
if err != nil {
6963
r.Error = convertError(xerrors.Errorf("websocket dial: %w", err))
@@ -116,7 +110,7 @@ func (s *WebsocketEchoServer) ServeHTTP(rw http.ResponseWriter, r *http.Request)
116110
c, err := websocket.Accept(rw, r, &websocket.AcceptOptions{})
117111
if err != nil {
118112
rw.WriteHeader(http.StatusBadRequest)
119-
rw.Write([]byte(fmt.Sprint("unable to accept:", err)))
113+
_, _ = rw.Write([]byte(fmt.Sprint("unable to accept:", err)))
120114
return
121115
}
122116
defer c.Close(websocket.StatusGoingAway, "goodbye")

coderd/healthcheck/websocket_test.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ func TestWebsocket(t *testing.T) {
6363
})
6464

6565
require.NotNil(t, wsReport.Error)
66-
assert.Equal(t, wsReport.Response.Body, "test error")
67-
assert.Equal(t, wsReport.Response.Code, http.StatusBadRequest)
66+
assert.Equal(t, wsReport.Body, "test error")
67+
assert.Equal(t, wsReport.Code, http.StatusBadRequest)
6868
})
6969
}

docs/api/debug.md

+3-5
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/api/schemas.md

+12-31
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

go.mod

+1-1
Original file line numberDiff line numberDiff line change
@@ -356,7 +356,7 @@ require (
356356
go.opentelemetry.io/otel/metric v1.16.0 // indirect
357357
go.opentelemetry.io/proto/otlp v0.19.0 // indirect
358358
go4.org/mem v0.0.0-20210711025021-927187094b94 // indirect
359-
golang.org/x/text v0.11.0 // indirect
359+
golang.org/x/text v0.11.0
360360
golang.org/x/time v0.3.0 // indirect
361361
golang.zx2c4.com/wintun v0.0.0-20230126152724-0fa3db229ce2 // indirect
362362
golang.zx2c4.com/wireguard/wgctrl v0.0.0-20230215201556-9c5414ab4bde // indirect

scripts/apitypings/main.go

+9-3
Original file line numberDiff line numberDiff line change
@@ -492,6 +492,10 @@ func (g *Generator) buildStruct(obj types.Object, st *types.Struct) (string, err
492492
panic("invalid struct tags on type " + obj.String())
493493
}
494494

495+
if !field.Exported() {
496+
continue
497+
}
498+
495499
// Use the json name if present
496500
jsonTag, err := tags.Get("json")
497501
var (
@@ -692,11 +696,12 @@ func (g *Generator) typescriptType(ty types.Type) (TypescriptType, error) {
692696
}, nil
693697
case *types.Map:
694698
// map[string][string] -> Record<string, string>
695-
keyType, err := g.typescriptType(ty.Key())
699+
m := ty
700+
keyType, err := g.typescriptType(m.Key())
696701
if err != nil {
697702
return TypescriptType{}, xerrors.Errorf("map key: %w", err)
698703
}
699-
valueType, err := g.typescriptType(ty.Elem())
704+
valueType, err := g.typescriptType(m.Elem())
700705
if err != nil {
701706
return TypescriptType{}, xerrors.Errorf("map key: %w", err)
702707
}
@@ -787,7 +792,8 @@ func (g *Generator) typescriptType(ty types.Type) (TypescriptType, error) {
787792
objName := objName(n.Obj())
788793
genericName := ""
789794
genericTypes := make(map[string]string)
790-
if obj := g.pkg.Types.Scope().Lookup(n.Obj().Name()); obj != nil {
795+
pkgName := n.Obj().Pkg().Name()
796+
if obj := g.pkg.Types.Scope().Lookup(n.Obj().Name()); g.pkg.Name == pkgName && obj != nil {
791797
// Sweet! Using other typescript types as fields. This could be an
792798
// enum or another struct
793799
if args := n.TypeArgs(); args != nil && args.Len() > 0 {

site/src/api/typesGenerated.ts

+5-9
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)