diff --git a/src/Spectre.Console/Enrichment/CI/AzurePipelinesEnricher.cs b/src/Spectre.Console/Enrichment/CI/AzurePipelinesEnricher.cs new file mode 100644 index 0000000..4c8c24c --- /dev/null +++ b/src/Spectre.Console/Enrichment/CI/AzurePipelinesEnricher.cs @@ -0,0 +1,20 @@ +namespace Spectre.Console.Enrichment; + +internal sealed class AzurePipelinesEnricher : IProfileEnricher +{ + public string Name => "AzurePipeline"; + + public bool Enabled(IDictionary environmentVariables) + { + environmentVariables.TryGetValue("TF_BUILD", out var environmentValue); + return !string.IsNullOrWhiteSpace(environmentValue); + } + + public void Enrich(Profile profile) + { + profile.Capabilities.Ansi = true; + profile.Capabilities.Legacy = false; + profile.Capabilities.Interactive = false; + profile.Capabilities.Links = false; + } +} \ No newline at end of file diff --git a/src/Spectre.Console/Enrichment/ProfileEnricher.cs b/src/Spectre.Console/Enrichment/ProfileEnricher.cs index 8465a74..7ae68f3 100644 --- a/src/Spectre.Console/Enrichment/ProfileEnricher.cs +++ b/src/Spectre.Console/Enrichment/ProfileEnricher.cs @@ -5,6 +5,7 @@ internal static class ProfileEnricher private static readonly List _defaultEnrichers = new List { new AppVeyorEnricher(), + new AzurePipelinesEnricher(), new BambooEnricher(), new BitbucketEnricher(), new BitriseEnricher(),