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); }
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); }
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}"); }