ソースを参照

change order of datastore install / record put (#4176)

Feroze Mohideen 2 年 前
コミット
03ec0f1435
1 ファイル変更14 行追加14 行削除
  1. 14 14
      api/server/handlers/datastore/update.go

+ 14 - 14
api/server/handlers/datastore/update.go

@@ -72,6 +72,20 @@ func (h *UpdateDatastoreHandler) ServeHTTP(w http.ResponseWriter, r *http.Reques
 		telemetry.AttributeKV{Key: "engine", Value: request.Engine},
 	)
 
+	// TODO: replace this with ccp call
+	err := h.InstallDatastore(ctx, InstallDatastoreInput{
+		Name:    request.Name,
+		Type:    request.Type,
+		Engine:  request.Engine,
+		Values:  request.Values,
+		Request: r,
+	})
+	if err != nil {
+		err := telemetry.Error(ctx, span, err, "error installing datastore")
+		h.HandleAPIError(w, r, apierrors.NewErrPassThroughToClient(err, http.StatusInternalServerError))
+		return
+	}
+
 	record, err := datastore.CreateOrGetRecord(ctx, datastore.CreateOrGetRecordInput{
 		ProjectID:           project.ID,
 		ClusterID:           cluster.ID,
@@ -87,20 +101,6 @@ func (h *UpdateDatastoreHandler) ServeHTTP(w http.ResponseWriter, r *http.Reques
 		return
 	}
 
-	// TODO: replace this with ccp call
-	err = h.InstallDatastore(ctx, InstallDatastoreInput{
-		Name:    record.Name,
-		Type:    record.Type,
-		Engine:  record.Engine,
-		Values:  request.Values,
-		Request: r,
-	})
-	if err != nil {
-		err := telemetry.Error(ctx, span, err, "error installing datastore")
-		h.HandleAPIError(w, r, apierrors.NewErrPassThroughToClient(err, http.StatusInternalServerError))
-		return
-	}
-
 	updateReq := connect.NewRequest(&porterv1.UpdateDatastoreRequest{
 		ProjectId:   int64(project.ID),
 		DatastoreId: record.ID.String(),