Use flint for link checking#2654
Conversation
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
|
@zeitlinger is this still meant to be a draft or is it good to go? |
|
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>
|
@jaydeluca please check again |
There was a problem hiding this comment.
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:linksto a SHA-pinned remote flint task inmise.toml. - Update the reusable link-check workflow to run
mise run lint:links(and--fullfor 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$/', |
There was a problem hiding this comment.
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).
| '/^mise\\.toml$/', | |
| 'mise.toml', |
There was a problem hiding this comment.
this pattern seems to be working fine in the instrumentation repo (example)
| customType: 'regex', | ||
| datasourceTemplate: 'github-tags', | ||
| managerFilePatterns: [ | ||
| '/^mise\\.toml$/', |
There was a problem hiding this comment.
this pattern seems to be working fine in the instrumentation repo (example)
3e2f586
Closes #2653
Summary
lint:linkstasklinks.sh,local-links.sh,links-in-modified-files.sh(keepmarkdown.sh)Test plan