Exemple #1
0
        public async Task <Build> GetLastBuildAsync(Guid buildConfigId)
        {
            var allBuilds = await buildRepository.GetAllFromBuildConfigAsync(buildConfigId);

            if (allBuilds.Any(b => b.FinishTime == null))
            {
                return(ModelsMapper.ConvertBuildDbModelToServiceModel(allBuilds.First(b => b.FinishTime == null)));
            }
            return(ModelsMapper.ConvertBuildDbModelToServiceModel(allBuilds.OrderByDescending(b => b.StartTime).FirstOrDefault()));
        }
Exemple #2
0
        public async Task <Build> RunAsync(Guid id, string userId)
        {
            var dbBuildConfig = await buildConfigRepository.FindByIdAsync(id);

            var buildConfig  = ModelsMapper.ConvertBuildConfigDbModelToServiceModel(dbBuildConfig);
            var buildTaskDto = new BuildTaskDto
            {
                BuildConfig     = buildConfig,
                StartedByUserId = userId
            };
            var pushTaskResult = await buildTaskProvider.PushTaskAsync(buildTaskDto);

            if (!pushTaskResult.IsSuccessful)
            {
                throw new Exception(pushTaskResult.Error);
            }
            var build = await buildRepository.FindByIdAsync(pushTaskResult.Value.Id);

            if (build == null)
            {
                throw new EntityNotFoundException(nameof(Build), pushTaskResult.Value.Id.ToString());
            }
            return(ModelsMapper.ConvertBuildDbModelToServiceModel(build));
        }
Exemple #3
0
        public async Task <Build> GetByIdAsync(Guid buildConfigId, Guid buildId)
        {
            var builds = await buildRepository.GetAllFromBuildConfigAsync(buildConfigId);

            return(ModelsMapper.ConvertBuildDbModelToServiceModel(builds.FirstOrDefault(x => x.Id == buildId)));
        }