From 02e0b200cfea0b0fc7700c82e8f62ad5a29936fe Mon Sep 17 00:00:00 2001 From: Neil South Date: Fri, 3 Nov 2023 11:58:12 +0000 Subject: [PATCH 1/3] fixing overwriting of workflowInstance Signed-off-by: Neil South --- .../WorkflowExecuter/Services/WorkflowExecuterService.cs | 4 ++++ 1 file changed, 4 insertions(+) mode change 100644 => 100755 src/WorkflowManager/WorkflowExecuter/Services/WorkflowExecuterService.cs diff --git a/src/WorkflowManager/WorkflowExecuter/Services/WorkflowExecuterService.cs b/src/WorkflowManager/WorkflowExecuter/Services/WorkflowExecuterService.cs old mode 100644 new mode 100755 index 7b4072c35..ed99c50f7 --- a/src/WorkflowManager/WorkflowExecuter/Services/WorkflowExecuterService.cs +++ b/src/WorkflowManager/WorkflowExecuter/Services/WorkflowExecuterService.cs @@ -270,6 +270,10 @@ private async Task ProcessArtifactReceivedOutputs(ArtifactsReceivedEvent message } } + var currentTask = workflowInstance.Tasks?.FirstOrDefault(t => t.TaskId == taskId); + + currentTask!.OutputArtifacts = validArtifacts; // added here are the parent function saves the object ! + _logger.LogDebug($"adding files to workflowInstance {workflowInstance.Id} :Task {taskId} : {JsonConvert.SerializeObject(validArtifacts)}"); await _workflowInstanceRepository.UpdateTaskOutputArtifactsAsync(workflowInstance.Id, taskId, validArtifacts); } From 03ab167bc664cd53d496fa866d508693b95c6c57 Mon Sep 17 00:00:00 2001 From: Neil South Date: Fri, 3 Nov 2023 12:26:15 +0000 Subject: [PATCH 2/3] fixup test Signed-off-by: Neil South --- .../Services/WorkflowExecuterServiceTests.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) mode change 100644 => 100755 tests/UnitTests/WorkflowExecuter.Tests/Services/WorkflowExecuterServiceTests.cs diff --git a/tests/UnitTests/WorkflowExecuter.Tests/Services/WorkflowExecuterServiceTests.cs b/tests/UnitTests/WorkflowExecuter.Tests/Services/WorkflowExecuterServiceTests.cs old mode 100644 new mode 100755 index d7fdb1048..d8f7a9202 --- a/tests/UnitTests/WorkflowExecuter.Tests/Services/WorkflowExecuterServiceTests.cs +++ b/tests/UnitTests/WorkflowExecuter.Tests/Services/WorkflowExecuterServiceTests.cs @@ -3161,6 +3161,7 @@ public async Task ArtifactReceveid_Valid_ReturnesTrue() Assert.True(result); } + [Fact] public async Task ProcessArtifactReceived_Calls_WorkflowInstanceRepository_UpdateTaskOutputArtifactsAsync() { @@ -3174,7 +3175,7 @@ public async Task ProcessArtifactReceived_Calls_WorkflowInstanceRepository_Updat var workflowInstance = new WorkflowInstance { WorkflowId = "789", Tasks = new List() - { new TaskExecution() { TaskId = "not456" } } + { new TaskExecution() { TaskId = "456" } } }; _workflowInstanceRepository.Setup(w => w.GetByWorkflowInstanceIdAsync(message.WorkflowInstanceId))! .ReturnsAsync(workflowInstance); From c4cea6b74d61bc58af69a194222a25c086008952 Mon Sep 17 00:00:00 2001 From: Neil South Date: Fri, 3 Nov 2023 12:40:25 +0000 Subject: [PATCH 3/3] fixing sonarcloud gripes Signed-off-by: Neil South --- .../WorkflowExecuter/Services/WorkflowExecuterService.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/WorkflowManager/WorkflowExecuter/Services/WorkflowExecuterService.cs b/src/WorkflowManager/WorkflowExecuter/Services/WorkflowExecuterService.cs index ed99c50f7..2837791f7 100755 --- a/src/WorkflowManager/WorkflowExecuter/Services/WorkflowExecuterService.cs +++ b/src/WorkflowManager/WorkflowExecuter/Services/WorkflowExecuterService.cs @@ -270,7 +270,7 @@ private async Task ProcessArtifactReceivedOutputs(ArtifactsReceivedEvent message } } - var currentTask = workflowInstance.Tasks?.FirstOrDefault(t => t.TaskId == taskId); + var currentTask = workflowInstance.Tasks?.Find(t => t.TaskId == taskId); currentTask!.OutputArtifacts = validArtifacts; // added here are the parent function saves the object ! @@ -686,7 +686,7 @@ private async Task HandleOutputArtifacts(WorkflowInstance workflowInstance return false; } - var currentTask = workflowInstance.Tasks?.FirstOrDefault(t => t.TaskId == task.TaskId); + var currentTask = workflowInstance.Tasks?.Find(t => t.TaskId == task.TaskId); if (currentTask is not null) {