-
Notifications
You must be signed in to change notification settings - Fork 52
Export History job #494
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Export History job #494
Conversation
…urabletask-dotnet into wangbill/exportfinal
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This pull request introduces comprehensive support for exporting orchestration history to Azure Blob Storage through a new ExportHistory library and sample web application. The changes enable users to create batch or continuous export jobs that export completed orchestration instances.
Key changes:
- Adds new
ExportHistorylibrary with entity-based job management, orchestrators for export operations, and Azure Blob Storage integration - Introduces
ExportHistoryWebAppsample with REST API endpoints for managing export jobs - Extends Durable Task client with history streaming and instance ID listing capabilities
- Includes comprehensive test coverage for all models, entities, and client operations
Reviewed Changes
Copilot reviewed 71 out of 71 changed files in this pull request and generated 20 comments.
Show a summary per file
| File | Description |
|---|---|
src/ExportHistory/* |
Core library implementation including entities, orchestrators, activities, models, and client abstractions |
test/ExportHistory.Tests/* |
Comprehensive unit tests for models, entities, orchestrations, and client operations |
src/Client/Core/DurableTaskClient.cs |
Adds ListInstanceIdsAsync and StreamInstanceHistoryAsync methods for export support |
src/Client/Grpc/GrpcDurableTaskClient.cs |
Implements gRPC-based history streaming and instance ID listing |
src/Grpc/orchestrator_service.proto |
Adds protobuf definitions for ListInstanceIds RPC endpoint |
samples/ExportHistoryWebApp/* |
Sample ASP.NET Core web app with REST API for export job management |
Microsoft.DurableTask.sln |
Updates solution to include new ExportHistory projects |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
src/ExportHistory/Orchestrations/ExecuteExportJobOperationOrchestrator.cs
Outdated
Show resolved
Hide resolved
test/ExportHistory.Tests/Client/DefaultExportHistoryJobClientTests.cs
Outdated
Show resolved
Hide resolved
halspang
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Haven't gotten through to the tests yet, but wanted to publish what I have so far.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 71 out of 71 changed files in this pull request and generated 2 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 71 out of 71 changed files in this pull request and generated 6 comments.
This pull request introduces a new sample web application,
ExportHistoryWebApp, for managing export history jobs via a REST API. The changes add new project files, configuration files, and controller logic, as well as update the solution file to include the new projects and their build configurations.New Export History Web Application
ExportHistoryWebAppto the solution, including its project file (ExportHistoryWebApp.csproj) and necessary references to Durable Task components and the newExportHistoryproject. [1] [2]ExportJobControllerto provide REST endpoints for creating, retrieving, listing, and deleting export history jobs. This controller uses the Durable Task ExportHistory client and models.CreateExportJobRequestmodel to represent the payload for creating export jobs, supporting various configuration options such as mode, time ranges, storage container, and filtering.Configuration and Environment Setup
launchSettings.json) and application configuration files (appsettings.json,appsettings.Development.json) to support local development and environment variable management for connection strings and storage settings. [1] [2] [3]Program.csto configure dependency injection, Durable Task client and worker services, and controller routing for the web application.API Usage and Documentation
ExportHistoryWebApp.http) with example requests for creating, listing, retrieving, and deleting export jobs, including tips and usage notes for common scenarios.Solution File Updates
Microsoft.DurableTask.slnto include the newExportHistoryandExportHistoryWebAppprojects, and adjusted build configuration and project nesting accordingly. [1] [2] [3] [4]