Class JobLaunchServiceImpl
java.lang.Object
com.netflix.genie.web.services.impl.JobLaunchServiceImpl
- All Implemented Interfaces:
JobLaunchService
Default implementation of the
JobLaunchService.- Since:
- 4.0.0
-
Constructor Summary
ConstructorsConstructorDescriptionJobLaunchServiceImpl(DataServices dataServices, JobResolverService jobResolverService, AgentLauncherSelector agentLauncherSelector, com.netflix.genie.common.internal.tracing.brave.BraveTracingComponents tracingComponents, io.micrometer.core.instrument.MeterRegistry registry) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionlaunchJob(@Valid JobSubmission jobSubmission) Launches a job on behalf of the user.
-
Constructor Details
-
JobLaunchServiceImpl
public JobLaunchServiceImpl(DataServices dataServices, JobResolverService jobResolverService, AgentLauncherSelector agentLauncherSelector, com.netflix.genie.common.internal.tracing.brave.BraveTracingComponents tracingComponents, io.micrometer.core.instrument.MeterRegistry registry) Constructor.- Parameters:
dataServices- TheDataServicesinstance to usejobResolverService-JobResolverServiceimplementation used to resolve job detailsagentLauncherSelector-AgentLauncherimplementation to launch agentstracingComponents-BraveTracingComponentsinstance to use to get access to instrumentationregistry-MeterRegistrymetrics repository
-
-
Method Details
-
launchJob
@Nonnull public String launchJob(@Valid @Valid JobSubmission jobSubmission) throws AgentLaunchException, com.netflix.genie.common.internal.exceptions.checked.GenieJobResolutionException, IdAlreadyExistsException, NotFoundException Launches a job on behalf of the user.Given the information submitted to Genie this service will attempt to run the job which will include: - Saving the job submission information including attachments - Resolving the resources needed to run the job and persisting them - Launching the agent
- Specified by:
launchJobin interfaceJobLaunchService- Parameters:
jobSubmission- The payload of metadata and resources making up all the information needed to launch a job- Returns:
- The id of the job. Upon return the job will at least be in
JobStatus.ACCEPTEDstate - Throws:
AgentLaunchException- If the system was unable to launch an agent to handle job executioncom.netflix.genie.common.internal.exceptions.checked.GenieJobResolutionException- If the job, based on user input and current system state, can't be successfully resolved for whatever reasonIdAlreadyExistsException- If the unique identifier for the job conflicts with an already existing jobNotFoundException- When a resource that is expected to exist, like a job or a cluster, is not found in the system at runtime for some reason
-