Preview and validate endpoints for Octopus import
Summary
- Added
GET /api/octopus-import/{sessionId}/previewandPOST /api/octopus-import/{sessionId}/validatetoOctopusImportController. - Added preview request and validation command contracts, including
GetOctopusImportPreviewRequest,ValidateOctopusImportCommand, andOctopusImportValidatedPlanDto. - Added
OctopusImportPlanningPipelineto rebuild extraction, inventory, resource graph, dependency plan, conflicts, and preview plan from the temporary upload for preview/validation handlers. - Added handlers that enforce session state transitions:
Extracted -> Previewedfor preview andPreviewed -> Validatedfor successful validation, with blocker responses left untransitioned.
Test plan
-
dotnet build src/Squid.Api/Squid.Api.csproj --no-restore -p:BuildInParallel=false -p:UseSharedCompilation=false -v:minimal -clp:ErrorsOnly -
dotnet build tests/Squid.UnitTests/Squid.UnitTests.csproj --no-restore -p:BuildInParallel=false -p:UseSharedCompilation=false -v:minimal -clp:ErrorsOnly -
dotnet test tests/Squid.UnitTests/Squid.UnitTests.csproj --no-restore --no-build --filter "FullyQualifiedName~Squid.UnitTests.Handlers.OctopusImport|FullyQualifiedName~Squid.UnitTests.Services.OctopusImport" -v:minimalpassed: 262 tests.