Skip to main content

parse_step_sections

Function parse_step_sections 

Source
pub fn parse_step_sections(
    lines: &[String],
    steps: &[String],
) -> Vec<LogSection>
Expand description

Like parse_sections, using the job’s steps (in the order they ran) to decide which markers are step boundaries:

  • a log with Azure ##[section]Starting: markers is sectioned by those alone — its ##[group]s fold content inside a step;
  • otherwise each step, in order, takes the best-matching group still to come: an exact name (trimmed, case-insensitive, past GitHub’s Run ) over a loose one (find_section), and a Run … step header over a group a step’s own output opened — so a cargo test --no-run group inside Build doesn’t take the Test step’s place. A step looks no further than the first group that exactly names a later step. Every other group is content of the step before it. When no group names any step the steps can’t be told apart this way, and every group is a section, as in parse_sections.

Each section it returns carries the step it was matched to.