Skip to content

Use flint for link checking#2654

Merged
jaydeluca merged 6 commits intoopen-telemetry:mainfrom
zeitlinger:use-flint-for-link-checking
Mar 22, 2026
Merged

Use flint for link checking#2654
jaydeluca merged 6 commits intoopen-telemetry:mainfrom
zeitlinger:use-flint-for-link-checking

Conversation

@zeitlinger
Copy link
Copy Markdown
Member

Closes #2653

Summary

  • Switch from local link check scripts to the consolidated flint lint:links task
  • SHA-pin the flint URL with Renovate custom manager for automatic updates
  • Remove lychee#1729 workaround (now handled by flint at runtime)
  • Delete links.sh, local-links.sh, links-in-modified-files.sh (keep markdown.sh)

Test plan

  • CI link check passes on this PR
  • Verify other repos' PRs are merged first before merging this one

Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
@jaydeluca
Copy link
Copy Markdown
Member

@zeitlinger is this still meant to be a draft or is it good to go?

@zeitlinger
Copy link
Copy Markdown
Member Author

Still draft — waiting on the next flint release. Will mark ready once that's out.

Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
GitHub blob URLs pointing to directories get remapped to
raw.githubusercontent.com by the link checker, which returns
400/404 for directories. Use /tree/ (the correct URL type
for directories) instead.
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
groovy-lang.org frequently times out, causing spurious CI failures.
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
@zeitlinger zeitlinger marked this pull request as ready for review March 20, 2026 18:58
@zeitlinger zeitlinger requested a review from a team as a code owner March 20, 2026 18:58
Copilot AI review requested due to automatic review settings March 20, 2026 18:58
@zeitlinger
Copy link
Copy Markdown
Member Author

@jaydeluca please check again

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Migrates repository link-checking to the centralized flint-provided lint:links mise task, replacing local lychee wrapper scripts and simplifying the reusable GitHub Actions workflow.

Changes:

  • Switch lint:links to a SHA-pinned remote flint task in mise.toml.
  • Update the reusable link-check workflow to run mise run lint:links (and --full for non-PR runs).
  • Remove the lychee remap workaround and delete the local link-check task scripts.

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
mise.toml Adds a flint-backed lint:links task via a SHA-pinned raw GitHub URL.
.github/workflows/reusable-link-check.yml Replaces local link-check invocations with mise run lint:links / --full and sets flint-related env vars.
.github/renovate.json5 Adds a custom Renovate manager intended to keep the flint SHA pin updated automatically.
.github/config/lychee.toml Removes the lychee remap workaround and adds an exclude for flaky groovy-lang.org links.
.mise/tasks/lint/links.sh Deleted (local link-check script removed in favor of flint).
.mise/tasks/lint/local-links.sh Deleted (local link-check script removed in favor of flint).
.mise/tasks/lint/links-in-modified-files.sh Deleted (modified-files link-check script removed in favor of flint).
samplers/README.md Fixes a GitHub URL to use tree/ for a directory link.
cel-sampler/README.md Fixes a GitHub URL to use tree/ for a directory link.
jmx-scraper/README.md Fixes a GitHub URL to use tree/ for a directory link.

customType: 'regex',
datasourceTemplate: 'github-tags',
managerFilePatterns: [
'/^mise\\.toml$/',
Copy link

Copilot AI Mar 20, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In this repo’s Renovate config, customManagers[].managerFilePatterns is consistently using glob patterns (e.g., .github/workflows/**, **/*.java). The newly added '/^mise\\.toml$/' includes regex delimiters and likely won’t match mise.toml, which would prevent Renovate from updating the flint SHA pin. Use a consistent file pattern that matches mise.toml (e.g., mise.toml or a glob/regex string consistent with the other entries).

Suggested change
'/^mise\\.toml$/',
'mise.toml',

Copilot uses AI. Check for mistakes.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this pattern seems to be working fine in the instrumentation repo (example)

customType: 'regex',
datasourceTemplate: 'github-tags',
managerFilePatterns: [
'/^mise\\.toml$/',
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this pattern seems to be working fine in the instrumentation repo (example)

@jaydeluca jaydeluca added this pull request to the merge queue Mar 22, 2026
Merged via the queue into open-telemetry:main with commit 3e2f586 Mar 22, 2026
38 of 40 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Migrate link checking from local scripts to flint

3 participants