public static IChangeLogPipelineBuilder AddTaskIf <T>(this IChangeLogPipelineBuilder builder, bool condition) where T : IChangeLogTask { if (condition) { builder.AddTask <T>(); } return(builder); }
public static IChangeLogPipelineBuilder AddIntegrationTasks(this IChangeLogPipelineBuilder pipelineBuilder) { var configuration = pipelineBuilder.Container.Resolve <ChangeLogConfiguration>(); if (configuration.Integrations.Provider == ChangeLogConfiguration.IntegrationProvider.GitHub) { pipelineBuilder = pipelineBuilder.AddTask <GitHubLinkTask>(); } else if (configuration.Integrations.Provider == ChangeLogConfiguration.IntegrationProvider.GitLab) { pipelineBuilder = pipelineBuilder.AddTask <GitLabLinkTask>(); } return(pipelineBuilder); }