diff --git a/release_notes.md b/release_notes.md new file mode 100644 index 0000000..36c76e2 --- /dev/null +++ b/release_notes.md @@ -0,0 +1 @@ +* Add Version property to $Context diff --git a/src/DurableEngine/DurableEngine.csproj b/src/DurableEngine/DurableEngine.csproj index 9d4acb9..340ac89 100644 --- a/src/DurableEngine/DurableEngine.csproj +++ b/src/DurableEngine/DurableEngine.csproj @@ -7,8 +7,8 @@ - - + + diff --git a/src/DurableEngine/Models/OrchestrationContext.cs b/src/DurableEngine/Models/OrchestrationContext.cs index 52af3d8..2c2217f 100644 --- a/src/DurableEngine/Models/OrchestrationContext.cs +++ b/src/DurableEngine/Models/OrchestrationContext.cs @@ -24,7 +24,7 @@ public class OrchestrationContext /// [DataMember] public object Input - { + { get => DTFxContext?.GetInput(); } @@ -77,5 +77,10 @@ public DateTime CurrentUtcDateTime /// [DataMember] internal HistoryEvent[] History { get; set; } + + /// + /// Gets the version of the current orchestration instance, which was set when the instance was created. + /// + public string Version => DTFxContext?.Version; } } \ No newline at end of file diff --git a/test/E2E/AzureFunctions.PowerShell.Durable.SDK.E2E/DurableClientTests.cs b/test/E2E/AzureFunctions.PowerShell.Durable.SDK.E2E/DurableClientTests.cs index 8c23ccc..eef7ffb 100644 --- a/test/E2E/AzureFunctions.PowerShell.Durable.SDK.E2E/DurableClientTests.cs +++ b/test/E2E/AzureFunctions.PowerShell.Durable.SDK.E2E/DurableClientTests.cs @@ -84,7 +84,8 @@ await ValidateDurableWorkflowResults( { Assert.Equal("Completed", (string)finalStatusResponseBody.runtimeStatus); Assert.Equal("Hello Tokyo", finalStatusResponseBody.output[0].ToString()); - Assert.Equal("Hello Seattle", finalStatusResponseBody.output[1].ToString()); + Assert.Equal("Context.Version: 1.0", finalStatusResponseBody.output[1].ToString()); + Assert.Equal("Hello Seattle", finalStatusResponseBody.output[2].ToString()); }); } diff --git a/test/E2E/AzureFunctions.PowerShell.Durable.SDK.E2E/OrchestrationTests.cs b/test/E2E/AzureFunctions.PowerShell.Durable.SDK.E2E/OrchestrationTests.cs index 41ca736..300de12 100644 --- a/test/E2E/AzureFunctions.PowerShell.Durable.SDK.E2E/OrchestrationTests.cs +++ b/test/E2E/AzureFunctions.PowerShell.Durable.SDK.E2E/OrchestrationTests.cs @@ -72,6 +72,7 @@ await ValidateDurableWorkflowResults( Assert.Equal("True", finalStatusResponseBody.output[0].ToString()); Assert.Equal("Hello myInstanceId", finalStatusResponseBody.output[1].ToString()); Assert.Equal("False", finalStatusResponseBody.output[2].ToString()); + Assert.Equal("1.0", finalStatusResponseBody.output[3].ToString()); }); } } diff --git a/test/E2E/durableApp/DurableOrchestratorAccessContextProps/run.ps1 b/test/E2E/durableApp/DurableOrchestratorAccessContextProps/run.ps1 index 4cccf5a..1b42c7d 100644 --- a/test/E2E/durableApp/DurableOrchestratorAccessContextProps/run.ps1 +++ b/test/E2E/durableApp/DurableOrchestratorAccessContextProps/run.ps1 @@ -5,4 +5,5 @@ $output = @() $output += $Context.IsReplaying $output += Invoke-DurableActivity -FunctionName 'Hello' -Input $Context.InstanceId $output += $Context.IsReplaying +$output += $Context.Version $output diff --git a/test/E2E/durableApp/SimpleOrchestrator/run.ps1 b/test/E2E/durableApp/SimpleOrchestrator/run.ps1 index 19c4ae4..072b117 100644 --- a/test/E2E/durableApp/SimpleOrchestrator/run.ps1 +++ b/test/E2E/durableApp/SimpleOrchestrator/run.ps1 @@ -7,3 +7,5 @@ $ErrorActionPreference = 'Stop' $output = Invoke-DurableActivity -FunctionName "Hello" -Input "Tokyo" $output + +"Context.Version: $($Context.Version)" diff --git a/test/E2E/durableApp/extensions.csproj b/test/E2E/durableApp/extensions.csproj index 924e415..c6c5a1d 100644 --- a/test/E2E/durableApp/extensions.csproj +++ b/test/E2E/durableApp/extensions.csproj @@ -1,11 +1,11 @@ - netcoreapp3.1 + net6.0 ** - + diff --git a/test/E2E/durableApp/host.json b/test/E2E/durableApp/host.json index 4020465..ad44881 100644 --- a/test/E2E/durableApp/host.json +++ b/test/E2E/durableApp/host.json @@ -10,5 +10,10 @@ }, "managedDependency": { "enabled": true + }, + "extensions": { + "durableTask": { + "defaultVersion": "1.0" + } } } \ No newline at end of file