public Task <Job> FindJobByDataProviderInfoAsync(DataProviderJobInfo jobInfo) { return(Context.Set <Project>() .Where(p => p.ApiProjectId == jobInfo.ProjectId && p.DataProviderName == jobInfo.ProviderName) .SelectMany(p => p.Pipelines) .SelectMany(pip => pip.Stages) .SelectMany(s => s.Jobs) .FirstOrDefaultAsync(j => j.DataProviderJobId == jobInfo.JobId)); }
private async Task UpdatePipelineStage(DataProviderJobInfo jobInfo) { var repoJob = await _projectRepository.FindJobByDataProviderInfoAsync(jobInfo); if (repoJob == null) { return; } repoJob.Status = jobInfo.Status; await _jobRepository.SaveAsync(); //TODO Update pipeline LastUpdate property }