protected async Task ReleaseCreationFailedAsync(Product product, ReleaseResponse buildEngineRelease) { ClearRecurringJob(product.Id); await UpdateProductPublication(buildEngineRelease, product, false); var buildEngineEndpoint = GetBuildEngineEndpoint(product.Project.Organization); var endpointUrl = buildEngineEndpoint.IsValid() ? buildEngineEndpoint.Url : ""; var buildEngineUrl = endpointUrl + "/release-admin/view?id=" + product.WorkflowPublishId.ToString(); var consoleTextUrl = buildEngineRelease.ConsoleText; var messageParms = new Dictionary <string, object>() { { "projectName", product.Project.Name }, { "productName", product.ProductDefinition.Name }, { "releaseStatus", buildEngineRelease.Status }, { "releaseError", buildEngineRelease.Error }, { "buildEngineUrl", buildEngineUrl }, { "consoleTextUrl", consoleTextUrl }, { "jobId", product.WorkflowJobId }, { "buildId", product.WorkflowBuildId }, { "publishId", product.WorkflowPublishId }, { "projectId", product.ProjectId }, { "projectUrl", product.Project.WorkflowAppProjectUrl } }; await sendNotificationService.SendNotificationToOrgAdminsAndOwnerAsync(product.Project.Organization, product.Project.Owner, "releaseFailedOwner", "releaseFailedAdmin", messageParms, consoleTextUrl); }
protected async System.Threading.Tasks.Task SendNotificationOnFinalRetryAsync(PerformContext context, Organization organization, User user, string messageId, Dictionary <string, object> subs) { if (IsFinalRetry(context)) { await SendNotificationService.SendNotificationToOrgAdminsAndOwnerAsync(organization, user, messageId, subs); } }
protected async Task ReleaseCreationFailedAsync(Product product, ReleaseResponse buildEngineRelease) { ClearRecurringJob(product.Id); var messageParms = new Dictionary <string, object>() { { "projectName", product.Project.Name }, { "productName", product.ProductDefinition.Name }, { "releaseStatus", buildEngineRelease.Status }, { "releaseError", buildEngineRelease.Error }, { "buildEngineUrl", product.Project.Organization.BuildEngineUrl } }; await sendNotificationService.SendNotificationToOrgAdminsAndOwnerAsync(product.Project.Organization, product.Project.Owner, "releaseFailed", messageParms); }
protected async Task SendNotificationOnFinalRetryAsync(PerformContext context, Organization organization, User user, string ownerMessageId, string adminMessageId, Dictionary <string, object> subs, string linkUrl) { if (IsFinalRetry(context)) { await SendNotificationService.SendNotificationToOrgAdminsAndOwnerAsync(organization, user, ownerMessageId, adminMessageId, subs, linkUrl); } }