Skip to content

Commit 62744e7

Browse files
ci: add check broken links workflow (#1536)
* ci: add check broken links workflow * chore: update .lycheeignore * chore: update .lycheeignore again * ci: fix link checking by building docs site first to resolve local paths * ci: update node version to 20 for docusaurus build * chore: update workflow
1 parent 5c61472 commit 62744e7

7 files changed

Lines changed: 54 additions & 9 deletions

File tree

.github/workflows/check_links.yaml

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: check_links
2+
3+
concurrency:
4+
group: ${{ github.workflow }}-${{ github.ref }}
5+
cancel-in-progress: true
6+
7+
on:
8+
push:
9+
branches:
10+
- main
11+
pull_request:
12+
branches:
13+
- main
14+
schedule:
15+
# Runs every Monday at 08:00 UTC
16+
- cron: "0 8 * * 1"
17+
18+
jobs:
19+
check_links:
20+
runs-on: ubuntu-latest
21+
steps:
22+
- uses: actions/checkout@v6
23+
- name: Link Checker
24+
id: lychee
25+
uses: lycheeverse/lychee-action@v2
26+
with:
27+
fail: false

.lycheeignore

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Lychee ignore patterns
2+
# See https://github.com/lycheeverse/lychee for documentation
3+
4+
# Placeholder and test-fixture URLs (not real links)
5+
https://github.com/org/repo
6+
https://github.com/verygoodopensource/_very_good_analysis
7+
https://not-pub.dev
8+
9+
# Partial URL used as a string template in source code
10+
https://github.com/verygoodopensource/very_good_cli/releases/tag/v
11+
12+
# External sites that block automated requests
13+
https://www.cyberciti.biz
14+
15+
# Fake file:// URIs in test fixtures (not real filesystem paths)
16+
^file://
17+
18+
# Dart string interpolation placeholders in source code (e.g. $packageName)
19+
# These are not real URLs — lychee picks them up as literal link text
20+
\$\w+

CODE_OF_CONDUCT.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,4 +73,4 @@ available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.ht
7373
[homepage]: https://www.contributor-covenant.org
7474

7575
For answers to common questions about this code of conduct, see
76-
https://www.contributor-covenant.org/faqs
76+
https://www.contributor-covenant.org/faq/

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -241,7 +241,7 @@ Run "very_good help <command>" for more information about a command.
241241
[logging_link]: https://api.flutter.dev/flutter/dart-developer/log.html
242242
[null_safety_link]: https://flutter.dev/docs/null-safety
243243
[pub_badge]: https://img.shields.io/pub/v/very_good_cli.svg
244-
[pub_link]: https://pub.dartlang.org/packages/very_good_cli
244+
[pub_link]: https://pub.dev/packages/very_good_cli
245245
[testing_link]: https://flutter.dev/docs/testing
246246
[very_good_analysis_badge]: https://img.shields.io/badge/style-very_good_analysis-B22C89.svg
247247
[very_good_analysis_link]: https://pub.dev/packages/very_good_analysis

lib/src/command_runner.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ Run ${lightCyan.wrap('very_good update')} to update''');
160160
'''
161161
162162
Thank you for using Very Good Ventures open source tools!
163-
Don't forget to fill out this form to get information on future updates and releases here: ${lightBlue.wrap(link(uri: Uri.parse('https://verygood.ventures/dev/tools/cli/subscribe')))}''',
163+
Follow us on GitHub for updates on future releases: ${lightBlue.wrap(link(uri: Uri.parse('https://verygood.ventures/resources/open-source-packages/')))}''',
164164
),
165165
print: _logger.info,
166166
);

site/docs/templates/flame_game.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ Read more about this game template [in our blog][blog].
2020

2121
- **Audio** - Background music and sound effects within the game.
2222

23-
- **VGV Project Architecture** - This project contains a similar architecture to other VGV projects (see our [core starter app](https://github.com/VeryGoodOpenSource/very_good_core/tree/main/src/my_app)).
23+
- **VGV Project Architecture** - This project contains a similar architecture to other VGV projects (see our [core starter app](https://github.com/VeryGoodOpenSource/very_good_templates/tree/main/very_good_core)).
2424

2525
- **100% Test Coverage** — Each line is executed at least once by a test.
2626

test/src/command_runner_test.dart

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -215,14 +215,12 @@ void main() {
215215
verifyInOrder([
216216
() => logger.info('\nThank you for using Very Good '),
217217
() => logger.info('Ventures open source '),
218-
() => logger.info("tools!\nDon't forget to fill "),
219-
() => logger.info('out this form to get '),
220-
() => logger.info('information on future updates '),
221-
() => logger.info('and releases here: '),
218+
() => logger.info('tools!\nFollow us on GitHub for '),
219+
() => logger.info('updates on future releases: '),
222220
() => logger.info(
223221
any(
224222
that: contains(
225-
'https://verygood.ventures/dev/tools/cli/subscribe',
223+
'https://verygood.ventures/resources/open-source-packages/',
226224
),
227225
),
228226
),

0 commit comments

Comments
 (0)