Class InternalPipelineWebService
java.lang.Object
ubic.gemma.rest.InternalPipelineWebService
Service-to-service push callback for scheduler-side pipelines reporting
progress / terminal state. Distinct from the admin REST surface — auth is
a shared bearer secret (
gemma.pipeline.callback.token), not curator
session.
The scheduler-side pipeline calls
POST /internal/pipeline/jobs/{jobId}/events with
Authorization: Bearer <secret> on every progress / stage /
completion / error event. The endpoint persists the event and updates the
job state machine (see PipelineJobBatchService.recordEvent(Long, String, String)).
STUB AUTH: the bearer token validation is a TODO pending an operational decision on whether to share secrets via Gemma.properties, Vault, or mTLS. The handler currently rejects with 401 if no token is configured and accepts any matching token otherwise.
-
Nested Class Summary
Nested Classes -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionpostEvent(Long jobId, String authHeader, InternalPipelineWebService.PostEventRequest req)
-
Constructor Details
-
InternalPipelineWebService
public InternalPipelineWebService()
-
-
Method Details
-
postEvent
@POST @Path("/jobs/{jobId}/events") @Produces("application/json") public ResponseDataObject<PipelineJobEvent> postEvent(@PathParam("jobId") Long jobId, @HeaderParam("Authorization") String authHeader, InternalPipelineWebService.PostEventRequest req)
-