Skip to content

Re-assess CI build #370

Description

@greggyb

Some issues we've identified:

  • superfluous builds and extra doc sites during PR review (crowdin & adding reviewers can kick off extra builds we don't need; Nedas has more detail)
  • run scripts have some candidates to add to CI
    • ./run scripts check: for linting+formatting on changes to .py and .sh files
    • ./run doctest: for markdown file changes. This command automatically discovers files that have annotated C# scripts (ignores most docs automatically); this is safe and opt-in per doc file
    • ./run check-links: maybe not ready for primetime in its current form. We should talk through it some more (discussion below)
  • Target actions to specific paths/globs so we don't rebuild when we don't need to

For link checking, we have two categories of links: intra-doc links (to other docs we have authored in the repo) and external links. Intra-doc links also subdivide to old-path redirects and links to live paths. External links can be down transiently, and we have no control. Right now the check-links script makes a decision between these: intra-doc links are considered errors and external links are considered warnings.

With regard to re-directs: we validate internal links in two ways:

  1. Against the built docs site on local disk. This requires no network.
  2. For the subset of old-style links, we hit the live docs site to ensure we get correct redirect logic. This requires network.

External sources obviously require network.

Perhaps we adopt a threshold for external links, rather than any single dead link failing a build? I have seen some links that were dead come back alive while working on this script.

A recent scan of links is in #359

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions