Skip to content

Commit 674ab7b

Browse files
Fix: hasura metadata replace
1 parent 1d3981d commit 674ab7b

File tree

3 files changed

+9
-17
lines changed

3 files changed

+9
-17
lines changed

hasura/api.go

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -158,17 +158,13 @@ func (api *API) ExportMetadata(ctx context.Context) (Metadata, error) {
158158
func (api *API) ReplaceMetadata(ctx context.Context, data *Metadata) error {
159159
req := versionedRequest{
160160
Type: "replace_metadata",
161-
Version: 1,
162-
Args: data,
163-
}
164-
var resp replaceMetadataResponse
165-
if err := api.post(ctx, "/v1/metadata", nil, req, &resp); err != nil {
166-
return err
167-
}
168-
if resp.Message == "success" {
169-
return nil
161+
Version: 2,
162+
Args: map[string]any{
163+
"metadata": data,
164+
"allow_inconsistent_metadata": true,
165+
},
170166
}
171-
return errors.Errorf("Can't replace hasura's metadata: %s", resp.Message)
167+
return api.post(ctx, "/v1/metadata", nil, req, nil)
172168
}
173169

174170
// TrackTable -

hasura/hasura.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ func checkHealth(ctx context.Context, api *API) {
2525
if err := api.Health(ctx); err != nil {
2626
return
2727
}
28-
ticker := time.NewTicker(5 * time.Second)
28+
ticker := time.NewTicker(time.Second)
2929
for {
3030
select {
3131
case <-ctx.Done():

hasura/requests.go

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ type Configuration struct {
4949
type ConnectionInfo struct {
5050
UsePreparedStatements bool `json:"use_prepared_statements"`
5151
IsolationLevel string `json:"isolation_level"`
52-
DatabaseUrl DatabaseUrl `json:"database_url,omitempty"`
52+
DatabaseUrl DatabaseUrl `json:"database_url"`
5353
}
5454

5555
// DatabaseUrl -
@@ -73,11 +73,7 @@ func (d *DatabaseUrl) UnmarshalJSON(data []byte) error {
7373
return err
7474
}
7575

76-
fromEnvValue := os.Getenv(fromEnv.FromEnv)
77-
if fromEnvValue == "" {
78-
return errors.Errorf("you have to set '%s' environment variable due to hasura connection info", fromEnv.FromEnv)
79-
}
80-
*d = DatabaseUrl(fromEnvValue)
76+
*d = DatabaseUrl(os.Getenv(fromEnv.FromEnv))
8177
return nil
8278
}
8379

0 commit comments

Comments
 (0)