public MergePolicyRunnerFactoryContext(IAzureDevOpsClient azDoClient, string repositoryId, string organization, string baseUrl = "")
 {
     AzDoClient   = azDoClient ?? throw new ArgumentNullException(nameof(azDoClient));
     RepositoryId = repositoryId ?? throw new ArgumentNullException(nameof(repositoryId));
     Organization = organization ?? throw new ArgumentNullException(nameof(organization));
     BaseURL      = baseUrl;
 }
Beispiel #2
0
        public async Task RunAsync(IAzureDevOpsClient azDoclient, GitPushEventPayload payload)
        {
            _logger.LogInformation(new EventId(1, "RunningPolicies"), "Running policies for {RepositoryId} with {UpdateCount}", payload.Resource.Repository.Id, payload.Resource.RefUpdates.Count);

            //run policies serially to avoid race conditions in AzDO like duplicate pull request creation.
            foreach (var policy in _policies)
            {
                _logger.LogDebug(new EventId(2, "RunningPolicy"), "Running {Policy}", policy.Name);
                foreach (var update in payload.Resource.RefUpdates)
                {
                    if (IsNewBranch(update.OldObjectId))
                    {
                        _logger.LogInformation(new EventId(2, "SkippingNewBranch"), "Skipping new branch push");
                        continue;
                    }

                    var context = new MergePolicyContext(azDoclient, update, payload);
                    try
                    {
                        await policy.HandleAsync(context);
                    }
                    catch (Exception e)
                    {
                        _logger.LogError(new EventId(7, "PolicyFailure"), e, "Policy {@Policy} for {RepositoryId} failed: {Message}", policy, payload.Resource.Repository.Id, e.Message);
                    }
                }
            }
        }
 private static async Task <Build[]> GetBuildsAsync(
     IAzureDevOpsClient azureServer,
     string project,
     DateTimeOffset minDateTime,
     int limit,
     CancellationToken cancellationToken)
 {
     return(await azureServer.ListBuilds(project, cancellationToken, minDateTime, limit));
 }
Beispiel #4
0
 public AzureDevOpsAvatarProvider(
     IAzureDevOpsClient client,
     IUserRepository userRepository,
     ILogger <IAvatarProvider> logger,
     ImageFormatManager imageFormatManager,
     IImageResizer imageResizer)
 {
     _client             = client;
     _userRepository     = userRepository ?? throw new ArgumentNullException(nameof(userRepository));
     _logger             = logger ?? throw new ArgumentNullException(nameof(logger));
     _imageFormatManager = imageFormatManager ?? throw new ArgumentNullException(nameof(imageFormatManager));
     _imageResizer       = imageResizer ?? throw new ArgumentNullException(nameof(imageResizer));
 }
 public AzureDevOpsTimeline(
     ILogger <AzureDevOpsTimeline> logger,
     IOptionsSnapshot <AzureDevOpsTimelineOptions> options,
     ITimelineTelemetryRepository timelineTelemetryRepository,
     IAzureDevOpsClient azureDevopsClient,
     ISystemClock systemClock)
 {
     _logger  = logger;
     _options = options;
     _timelineTelemetryRepository = timelineTelemetryRepository;
     _azureServer = azureDevopsClient;
     _systemClock = systemClock;
 }
Beispiel #6
0
 public AzureDevOpsBuildProvider(
     IAzureDevOpsClient client,
     IBuildDtoConverter buildDtoConverter,
     IEnumerable <IBuildFilter> buildFilters,
     ITestResultsProvider testResultsProvider,
     IAzureDevOpsConfig config,
     ILogger <IBuildProvider> logger)
 {
     _buildFilters        = buildFilters == null ? new List <IBuildFilter>() : buildFilters.ToList();
     _client              = client ?? throw new ArgumentNullException(nameof(client));
     _buildDtoConverter   = buildDtoConverter ?? throw new ArgumentNullException(nameof(buildDtoConverter));
     _testResultsProvider = testResultsProvider ?? throw new ArgumentNullException(nameof(testResultsProvider));
     _config              = config ?? throw new ArgumentNullException(nameof(config));
     _logger              = logger ?? throw new ArgumentNullException(nameof(logger));
 }
 public CSharpProjectFileFetcher(IAzureDevOpsClient azureDevOpsClient)
 {
     _azureDevOpsClient = azureDevOpsClient;
 }
Beispiel #8
0
 public TestResultsProvider(IAzureDevOpsClient client)
 {
     _client = client ?? throw new ArgumentNullException(nameof(client));
 }
Beispiel #9
0
 public PullRequestCreator(IAzureDevOpsClient azureDevOpsClient)
 {
     _azureDevOpsClient = azureDevOpsClient;
 }
 public PullRequestMonitorItem(IAzureDevOpsClient azDoClient, GitPullRequest pullRequest)
 {
     AzDoClient  = azDoClient ?? throw new ArgumentNullException(nameof(azDoClient));
     PullRequest = pullRequest ?? throw new ArgumentNullException(nameof(pullRequest));
 }
 public UserRepository(IAzureDevOpsClient client, ILogger <IUserRepository> logger, IAzureDevOpsConfig config)
 {
     _client = client ?? throw new ArgumentNullException(nameof(client));
     _logger = logger ?? throw new ArgumentNullException(nameof(logger));
     _config = config ?? throw new ArgumentNullException(nameof(config));
 }
Beispiel #12
0
 public IndirectLinksCrawler(IAzureDevOpsClient client)
 {
     _client = client;
 }
Beispiel #13
0
 public Task RunAsync(IAzureDevOpsClient azDoclient, GitPushEventPayload payload)
 {
     return(Task.CompletedTask);
 }
Beispiel #14
0
 public MergePolicyContext(IAzureDevOpsClient azDoClient, GitPushEventRefUpdate update, GitPushEventPayload payload)
 {
     AzDoClient = azDoClient;
     Update     = update;
     Payload    = payload;
 }