Exemplo n.º 1
0
        public async Task ReportJobStarted(DateTimeOffset offsetTime, string message, CancellationToken cancellationToken)
        {
            var vstsPlanUrl = this.vstsMessage.VstsPlanUri;
            var vstsUrl     = this.vstsMessage.VstsUri;
            var authToken   = this.vstsMessage.AuthToken;
            var planId      = this.vstsMessage.PlanId;
            var projectId   = this.vstsMessage.ProjectId;
            var jobId       = this.vstsMessage.JobId;
            var hubName     = this.vstsMessage.VstsHub.ToString();
            var eventTime   = offsetTime.UtcDateTime;

            var buildHttpClientWrapper   = GetBuildClient(vstsUrl, authToken);
            var releaseHttpClientWrapper = GetReleaseClient(vstsPlanUrl, authToken);
            var isSessionValid           = await IsSessionValid(this.vstsMessage, buildHttpClientWrapper, releaseHttpClientWrapper, cancellationToken).ConfigureAwait(false);

            if (!isSessionValid)
            {
                await this.logger.LogInfo("SessionAlreadyCancelled", "Skipping ReportJobStarted for cancelled or deleted build/release", this.eventProperties, cancellationToken).ConfigureAwait(false);

                return;
            }

            var startedEvent = new JobStartedEvent(jobId);
            var taskClient   = GetTaskClient(this.vstsMessage.VstsPlanUri, this.vstsMessage.AuthToken, this.vstsMessage.SkipRaisePlanEvents);
            await taskClient.RaisePlanEventAsync(projectId, hubName, planId, startedEvent, cancellationToken).ConfigureAwait(false);

            await logger.LogInfo("JobStarted", message, this.eventProperties, cancellationToken, eventTime);
        }
Exemplo n.º 2
0
        public async Task ReportJobStarted(DateTimeOffset offsetTime, string message, CancellationToken cancellationToken)
        {
            var vstsPlanUrl = this.vstsContext.VstsPlanUri;
            var vstsUrl     = this.vstsContext.VstsUri;
            var authToken   = this.vstsContext.AuthToken;
            var planId      = this.vstsContext.PlanId;
            var projectId   = this.vstsContext.ProjectId;
            var jobId       = this.vstsContext.JobId;
            var hubName     = this.vstsContext.VstsHub.ToString();
            var eventTime   = offsetTime.UtcDateTime;

            var buildHttpClientWrapper   = this.CreateBuildClient(vstsUrl, authToken);
            var releaseHttpClientWrapper = this.CreateReleaseClient(vstsPlanUrl, authToken);
            var isSessionValid           = await IsSessionValid(this.vstsContext, buildHttpClientWrapper, releaseHttpClientWrapper, cancellationToken).ConfigureAwait(false);

            if (!isSessionValid)
            {
                await this.baseInstrumentation.HandleInfoEvent("SessionAlreadyCancelled", "Skipping ReportJobStarted for cancelled or deleted build/release", this.eventProperties, cancellationToken).ConfigureAwait(false);

                return;
            }

            var taskHttpClientWrapper     = this.CreateTaskHttpClient(vstsPlanUrl, authToken, this.baseInstrumentation, this.vstsContext.SkipRaisePlanEvents);
            var vstsBrokerInstrumentation = new VstsBrokerInstrumentation(this.baseInstrumentation, taskHttpClientWrapper, hubName, projectId, planId, this.vstsContext.TaskLogId, this.eventProperties);
            var startedEvent = new JobStartedEvent(jobId);
            await taskHttpClientWrapper.RaisePlanEventAsync(projectId, hubName, planId, startedEvent, cancellationToken).ConfigureAwait(false);

            await vstsBrokerInstrumentation.HandleInfoEvent("JobStarted", message, this.eventProperties, cancellationToken, eventTime);
        }
Exemplo n.º 3
0
        public async Task ReportJobStarted(string message, CancellationToken cancellationToken)
        {
            var startedEvent = new JobStartedEvent(this.taskMessage.JobId);
            var taskClient   = GetTaskClient(this.taskMessage.PlanUri, this.taskMessage.AuthToken);
            await taskClient.RaisePlanEventAsync(this.taskMessage.ProjectId, this.taskMessage.HubName, this.taskMessage.PlanId, startedEvent, cancellationToken).ConfigureAwait(false);

            this.taskLogger.Log($"Job started: {message}");
        }