diff --git a/cmd/metal-api/internal/datastore/health.go b/cmd/metal-api/internal/datastore/health.go index 85e1460b..bff42e8a 100644 --- a/cmd/metal-api/internal/datastore/health.go +++ b/cmd/metal-api/internal/datastore/health.go @@ -40,7 +40,7 @@ func (rs *RethinkStore) Check(ctx context.Context) (rest.HealthResult, error) { return returnStatus(err) } - cursor, err := r.DB("rethinkdb").Table("server_status").Field("process").Field("version").Run(rs.session) + cursor, err := r.DB("rethinkdb").Table("server_status").Field("process").Field("version").Run(rs.session, r.RunOpts{Context: ctx}) if err != nil { return returnStatus(err) } diff --git a/cmd/metal-api/internal/datastore/rethinkdb.go b/cmd/metal-api/internal/datastore/rethinkdb.go index 82512f81..38cbc07c 100644 --- a/cmd/metal-api/internal/datastore/rethinkdb.go +++ b/cmd/metal-api/internal/datastore/rethinkdb.go @@ -140,6 +140,10 @@ func (rs *RethinkStore) initializeTables(opts r.TableCreateOpts) error { if err != nil { return err } + _, err = r.DB("rethinkdb").Grant(DemotedUser, map[string]interface{}{"read": true}).RunWrite(rs.session) + if err != nil { + return err + } // integer pools err = rs.GetVRFPool().initIntegerPool(rs.log)