Skip to content

Commit d5f1d45

Browse files
authored
fix: logging missing for member in failed deploy state (#1091)
1 parent 0a393ef commit d5f1d45

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

testprojects/tests.go

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -320,7 +320,7 @@ func (options *TestProjectsOptions) TriggerDeployAndWait() (errorList []error) {
320320
deployableState = true
321321
case project.ProjectConfig_State_Deployed, project.ProjectConfig_State_Approved:
322322
currentDeployStatus = fmt.Sprintf("%s%s%s is %s\n", currentDeployStatus, memberLabel, memberName, Statuses[*member.State])
323-
case project.ProjectConfig_State_ValidatingFailed, project.ProjectConfig_State_DeployingFailed:
323+
case project.ProjectConfig_State_ValidatingFailed:
324324
re := regexp.MustCompile(`workspace:(.+)$`)
325325
if member.Schematics != nil && member.Schematics.WorkspaceCrn != nil {
326326
matches := re.FindStringSubmatch(*member.Schematics.WorkspaceCrn)
@@ -339,16 +339,24 @@ func (options *TestProjectsOptions) TriggerDeployAndWait() (errorList []error) {
339339
deployableState = true
340340
failed = false
341341
options.Logger.ShortInfo("Project Validation failed, but Schematics Workspace Plan succeeded. Continuing with deployment.")
342+
currentDeployStatus = fmt.Sprintf("%s%s%s is in state %s and state code %s\n", currentDeployStatus, memberLabel, memberName, Statuses[*member.State], Statuses[stateCode])
342343
continue
343344
}
344345
}
345346
}
347+
currentDeployStatus = fmt.Sprintf("%s%s%s is in state %s and state code %s\n", currentDeployStatus, memberLabel, memberName, Statuses[*member.State], Statuses[stateCode])
348+
logMessage, terraLogs := options.CloudInfoService.GetSchematicsJobLogsForMember(member, memberName, options.currentProjectConfig.Location, options.currentStackConfig.ProjectID, *member.ID)
349+
deployableState = false
350+
failed = true
351+
options.Logger.ShortError(terraLogs)
352+
errorList = append(errorList, fmt.Errorf("%s", logMessage))
353+
case project.ProjectConfig_State_DeployingFailed:
354+
currentDeployStatus = fmt.Sprintf("%s%s%s is in state %s and state code %s\n", currentDeployStatus, memberLabel, memberName, Statuses[*member.State], Statuses[stateCode])
346355
logMessage, terraLogs := options.CloudInfoService.GetSchematicsJobLogsForMember(member, memberName, options.currentProjectConfig.Location, options.currentStackConfig.ProjectID, *member.ID)
347356
deployableState = false
348357
failed = true
349358
options.Logger.ShortError(terraLogs)
350359
errorList = append(errorList, fmt.Errorf("%s", logMessage))
351-
352360
case project.ProjectConfig_State_Draft:
353361
if stateCode == project.ProjectConfig_StateCode_AwaitingPrerequisite || (stateCode == project.ProjectConfig_StateCode_AwaitingMemberDeployment && strings.HasSuffix(memberName, " Container")) {
354362
currentDeployStatus = fmt.Sprintf("%s%s%s is in state %s and state code %s\n", currentDeployStatus, memberLabel, memberName, Statuses[*member.State], Statuses[stateCode])

0 commit comments

Comments
 (0)