Пример #1
0
 public ProjectService(
     IPipelineRepository pipelineRepository,
     IProjectRepository projectRepository,
     IValidationService validationService,
     ICiDataProviderFactory ciDataProviderFactory,
     ICronJobsManager cronJobsManager,
     IPanelRepository panelRepository,
     IStaticBranchPanelRepository staticBranchPanelRepository,
     IConfiguration configuration,
     ILogger <ProjectService> logger,
     IStageRepository stageRepository,
     IJobRepository jobRepository)
 {
     _ciDataProviderFactory       = ciDataProviderFactory;
     _cronJobsManager             = cronJobsManager;
     _validationService           = validationService;
     _projectRepository           = projectRepository;
     _pipelineRepository          = pipelineRepository;
     _panelRepository             = panelRepository;
     _staticBranchPanelRepository = staticBranchPanelRepository;
     _configuration   = configuration;
     _logger          = logger;
     _stageRepository = stageRepository;
     _jobRepository   = jobRepository;
 }
 public CreateProjectValidator(ICiDataProviderFactory factory)
 {
     ValidateTitle();
     ValidateApiHostUrl();
     ValidateApiProjectId();
     ValidateApiAuthenticationToken();
     ValidateDataProviderName();
     ValidateCiDataUpdateCronExpression();
     ValidateApiCredentials(factory);
 }
Пример #3
0
        private async Task <bool> TestApiCredentials(Project project, string apiHostUrl, ICiDataProviderFactory factory)
        {
            var provider = factory.CreateForProviderName(project.DataProviderName);

            try
            {
                var result = await provider.TestApiCredentials(project.ApiHostUrl, project.ApiAuthenticationToken);

                return(result);
            }
            catch (Exception)
            {
                return(false);
            }
        }
Пример #4
0
 protected void ValidateApiCredentials(ICiDataProviderFactory factory)
 {
     RuleFor(p => p.ApiHostUrl)
     .MustAsync((project, hostUrl, ct) => TestApiCredentials(project, hostUrl, factory))
     .WithMessage("Can't access secured API endpoint with these credentials");
 }
Пример #5
0
 public DashboardDataController(IProjectService projectService, ICiDataProviderFactory ciDataProviderFactory, IPanelRepository panelRepository)
 {
     _projectService        = projectService;
     _ciDataProviderFactory = ciDataProviderFactory;
     _panelRepository       = panelRepository;
 }