Pārlūkot izejas kodu

fix passing validate apply v2 flag to segment (#3677)

Feroze Mohideen 2 gadi atpakaļ
vecāks
revīzija
5636bb4b3d

+ 4 - 3
api/server/handlers/porter_app/analytics.go

@@ -110,6 +110,7 @@ func TrackStackBuildStatus(
 	stackName string,
 	stackName string,
 	errorMessage string,
 	errorMessage string,
 	status types.PorterAppEventStatus,
 	status types.PorterAppEventStatus,
+	validateApplyV2 bool,
 ) error {
 ) error {
 	_, span := telemetry.NewSpan(ctx, "track-build-status")
 	_, span := telemetry.NewSpan(ctx, "track-build-status")
 	defer span.End()
 	defer span.End()
@@ -126,7 +127,7 @@ func TrackStackBuildStatus(
 			FirstName:              user.FirstName,
 			FirstName:              user.FirstName,
 			LastName:               user.LastName,
 			LastName:               user.LastName,
 			CompanyName:            user.CompanyName,
 			CompanyName:            user.CompanyName,
-			ValidateApplyV2:        project.ValidateApplyV2,
+			ValidateApplyV2:        validateApplyV2,
 		}))
 		}))
 	}
 	}
 
 
@@ -138,7 +139,7 @@ func TrackStackBuildStatus(
 			FirstName:              user.FirstName,
 			FirstName:              user.FirstName,
 			LastName:               user.LastName,
 			LastName:               user.LastName,
 			CompanyName:            user.CompanyName,
 			CompanyName:            user.CompanyName,
-			ValidateApplyV2:        project.ValidateApplyV2,
+			ValidateApplyV2:        validateApplyV2,
 		}))
 		}))
 	}
 	}
 
 
@@ -151,7 +152,7 @@ func TrackStackBuildStatus(
 			FirstName:              user.FirstName,
 			FirstName:              user.FirstName,
 			LastName:               user.LastName,
 			LastName:               user.LastName,
 			CompanyName:            user.CompanyName,
 			CompanyName:            user.CompanyName,
-			ValidateApplyV2:        project.ValidateApplyV2,
+			ValidateApplyV2:        validateApplyV2,
 		}))
 		}))
 	}
 	}
 
 

+ 4 - 3
api/server/handlers/porter_app/create_and_update_events.go

@@ -65,7 +65,8 @@ func (p *CreateUpdatePorterAppEventHandler) ServeHTTP(w http.ResponseWriter, r *
 	)
 	)
 
 
 	if request.Type == types.PorterAppEventType_Build {
 	if request.Type == types.PorterAppEventType_Build {
-		reportBuildStatus(ctx, request, p.Config(), user, project, appName)
+		validateApplyV2 := project.GetFeatureFlag(models.ValidateApplyV2, p.Config().LaunchDarklyClient)
+		reportBuildStatus(ctx, request, p.Config(), user, project, appName, validateApplyV2)
 	}
 	}
 
 
 	if request.ID == "" {
 	if request.ID == "" {
@@ -88,7 +89,7 @@ func (p *CreateUpdatePorterAppEventHandler) ServeHTTP(w http.ResponseWriter, r *
 	p.WriteResult(w, r, event)
 	p.WriteResult(w, r, event)
 }
 }
 
 
-func reportBuildStatus(ctx context.Context, request *types.CreateOrUpdatePorterAppEventRequest, config *config.Config, user *models.User, project *models.Project, stackName string) {
+func reportBuildStatus(ctx context.Context, request *types.CreateOrUpdatePorterAppEventRequest, config *config.Config, user *models.User, project *models.Project, stackName string, validateApplyV2 bool) {
 	ctx, span := telemetry.NewSpan(ctx, "report-build-status")
 	ctx, span := telemetry.NewSpan(ctx, "report-build-status")
 	defer span.End()
 	defer span.End()
 
 
@@ -113,7 +114,7 @@ func reportBuildStatus(ctx context.Context, request *types.CreateOrUpdatePorterA
 		}
 		}
 	}
 	}
 
 
-	_ = TrackStackBuildStatus(ctx, config, user, project, stackName, errStr, request.Status)
+	_ = TrackStackBuildStatus(ctx, config, user, project, stackName, errStr, request.Status, validateApplyV2)
 }
 }
 
 
 // createNewAppEvent will create a new app event for the given porter app name. If the app event is an agent event, then it will be created only if there is no existing event which has the agent ID. In the case that an existing event is found, that will be returned instead
 // createNewAppEvent will create a new app event for the given porter app name. If the app event is an agent event, then it will be created only if there is no existing event which has the agent ID. In the case that an existing event is found, that will be returned instead

+ 5 - 3
api/server/handlers/porter_app/list_events.go

@@ -132,7 +132,8 @@ func (p *PorterAppEventListHandler) updateExistingAppEvent(
 
 
 	// TODO: get rid of this block and related methods if still here after 08-04-2023
 	// TODO: get rid of this block and related methods if still here after 08-04-2023
 	if appEvent.Type == string(types.PorterAppEventType_Build) && appEvent.TypeExternalSource == "GITHUB" {
 	if appEvent.Type == string(types.PorterAppEventType_Build) && appEvent.TypeExternalSource == "GITHUB" {
-		err = p.updateBuildEvent_Github(ctx, &event, user, project, stackName)
+		validateApplyV2 := project.GetFeatureFlag(models.ValidateApplyV2, p.Config().LaunchDarklyClient)
+		err = p.updateBuildEvent_Github(ctx, &event, user, project, stackName, validateApplyV2)
 		if err != nil {
 		if err != nil {
 			return appEvent, telemetry.Error(ctx, span, err, "error updating porter app event for github build")
 			return appEvent, telemetry.Error(ctx, span, err, "error updating porter app event for github build")
 		}
 		}
@@ -158,6 +159,7 @@ func (p *PorterAppEventListHandler) updateBuildEvent_Github(
 	user *models.User,
 	user *models.User,
 	project *models.Project,
 	project *models.Project,
 	stackName string,
 	stackName string,
+	validateApplyV2 bool,
 ) error {
 ) error {
 	ctx, span := telemetry.NewSpan(ctx, "update-porter-app-build-event")
 	ctx, span := telemetry.NewSpan(ctx, "update-porter-app-build-event")
 	defer span.End()
 	defer span.End()
@@ -220,10 +222,10 @@ func (p *PorterAppEventListHandler) updateBuildEvent_Github(
 	if *actionRun.Status == "completed" {
 	if *actionRun.Status == "completed" {
 		if *actionRun.Conclusion == "success" {
 		if *actionRun.Conclusion == "success" {
 			event.Status = string(types.PorterAppEventStatus_Success)
 			event.Status = string(types.PorterAppEventStatus_Success)
-			_ = TrackStackBuildStatus(ctx, p.Config(), user, project, stackName, "", types.PorterAppEventStatus_Success)
+			_ = TrackStackBuildStatus(ctx, p.Config(), user, project, stackName, "", types.PorterAppEventStatus_Success, validateApplyV2)
 		} else {
 		} else {
 			event.Status = string(types.PorterAppEventStatus_Failed)
 			event.Status = string(types.PorterAppEventStatus_Failed)
-			_ = TrackStackBuildStatus(ctx, p.Config(), user, project, stackName, "", types.PorterAppEventStatus_Failed)
+			_ = TrackStackBuildStatus(ctx, p.Config(), user, project, stackName, "", types.PorterAppEventStatus_Failed, validateApplyV2)
 		}
 		}
 		event.Metadata["end_time"] = actionRun.GetUpdatedAt().Time
 		event.Metadata["end_time"] = actionRun.GetUpdatedAt().Time
 	}
 	}