- Fix `simple_test_analysis` template in E2E test setup to align with Orchestrator's data fetch logic.
- Implement and verify additional E2E scenarios:
- Scenario C: Partial Provider Failure (verified error propagation fix in Orchestrator).
- Scenario D: Invalid Symbol input.
- Scenario E: Analysis Module failure.
- Update `WorkflowStateMachine::handle_report_failed` to correctly scope error broadcasting to the specific task instead of failing effectively silently or broadly.
- Update testing strategy documentation to reflect completed Phase 4 testing.
- Skip Scenario B (Orchestrator Restart) as persistence is not yet implemented (decision made to defer persistence).
29 lines
913 B
Docker
29 lines
913 B
Docker
# 1. Build Stage
|
|
FROM rust:1.90 as builder
|
|
|
|
WORKDIR /usr/src/app
|
|
# Copy necessary crates for compilation
|
|
COPY ./services/common-contracts /usr/src/app/services/common-contracts
|
|
COPY ./services/workflow-orchestrator-service /usr/src/app/services/workflow-orchestrator-service
|
|
|
|
WORKDIR /usr/src/app/services/workflow-orchestrator-service
|
|
# Build the binary
|
|
RUN cargo build --release
|
|
|
|
# 2. Runtime Stage
|
|
FROM debian:bookworm-slim
|
|
|
|
# Set timezone
|
|
ENV TZ=Asia/Shanghai
|
|
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
|
|
|
|
# Minimal runtime deps
|
|
RUN apt-get update && apt-get install -y --no-install-recommends ca-certificates curl && rm -rf /var/lib/apt/lists/*
|
|
|
|
# Copy the built binary
|
|
COPY --from=builder /usr/src/app/services/workflow-orchestrator-service/target/release/workflow-orchestrator-service /usr/local/bin/
|
|
|
|
# Run it
|
|
ENTRYPOINT ["/usr/local/bin/workflow-orchestrator-service"]
|
|
|