private void OnBuildTeardown(object sender, BeforeTeardownEventArgs e)
        {
            var b = e.TeardownContext.BuildSystem();

            if (b.IsRunningOnTravisCI)
            {
                var tr = b.TravisCI;
                tr.WriteEndFold(_buildMessage.ToFoldMessage());
            }
        }
        private void OnBeforeBuildTeardown(object sender, BeforeTeardownEventArgs e)
        {
            var b = e.TeardownContext.BuildSystem();

            if (b.IsRunningOnTeamCity)
            {
                var tc = b.TeamCity;
                tc.WriteStartBlock("Teardown");
                tc.WriteStartProgress("Running Teardown");
            }
        }
        private void OnBuildTeardown(object sender, BeforeTeardownEventArgs e)
        {
            var b = e.TeardownContext.BuildSystem();

            if (b.IsRunningOnPipelines())
            {
                b.AzurePipelines.Commands.UpdateRecord(_parentRecord, new AzurePipelinesRecordData
                {
                    FinishTime = DateTime.Now,
                    Status     = AzurePipelinesTaskStatus.Completed,
                    Result     = e.TeardownContext.Successful ? AzurePipelinesTaskResult.Succeeded : AzurePipelinesTaskResult.Failed,
                    Progress   = GetProgress(TaskRecords.Count, _engine.Tasks.Count),
                });
            }
        }