|
1 | 1 | # Ultralytics YOLO 🚀, AGPL-3.0 license
|
2 |
| -# YOLO Continuous Integration (CI) GitHub Actions tests broken link checker |
3 |
| -# Accept 429(Instagram, 'too many requests'), 999(LinkedIn, 'unknown status code'), Timeout(Twitter) |
| 2 | +# Continuous Integration (CI) GitHub Actions tests broken link checker using https://github.com/lycheeverse/lychee |
| 3 | +# Ignores the following status codes to reduce false positives: |
| 4 | +# - 403(OpenVINO, 'forbidden') |
| 5 | +# - 429(Instagram, 'too many requests') |
| 6 | +# - 500(Zenodo, 'cached') |
| 7 | +# - 502(Zenodo, 'bad gateway') |
| 8 | +# - 999(LinkedIn, 'unknown status code') |
4 | 9 |
|
5 | 10 | name: Check Broken links
|
6 | 11 |
|
|
42 | 47 | timeout_minutes: 5
|
43 | 48 | retry_wait_seconds: 60
|
44 | 49 | max_attempts: 3
|
45 |
| - command: lychee --accept 429,999 --exclude-loopback --exclude 'https?://(www\.)?(linkedin\.com|twitter\.com|instagram\.com|kaggle\.com|tiktok\.com|fonts\.gstatic\.com|fonts\.googleapis\.com|url\.com)' --exclude-path '**/ci.yaml' --exclude-mail --github-token ${{ secrets.GITHUB_TOKEN }} './**/*.md' './**/*.html' |
46 |
| - |
47 |
| - - name: Test Markdown, HTML, YAML, Python and Notebook links with retry |
48 |
| - if: github.event_name == 'workflow_dispatch' |
49 |
| - uses: nick-invision/retry@v2 |
50 |
| - with: |
51 |
| - timeout_minutes: 5 |
52 |
| - retry_wait_seconds: 60 |
53 |
| - max_attempts: 3 |
54 |
| - command: lychee --accept 429,999 --exclude-loopback --exclude 'https?://(www\.)?(linkedin\.com|twitter\.com|instagram\.com|kaggle\.com|tiktok\.com|fonts\.gstatic\.com|fonts\.googleapis\.com|url\.com)' --exclude-path '**/ci.yaml' --exclude-mail --github-token ${{ secrets.GITHUB_TOKEN }} './**/*.md' './**/*.html' './**/*.yml' './**/*.yaml' './**/*.py' './**/*.ipynb' |
| 50 | + command: lychee --accept 403,429,500,502,999 --exclude-loopback --exclude 'https?://(www\.)?(linkedin\.com|twitter\.com|instagram\.com|kaggle\.com|tiktok\.com|fonts\.gstatic\.com|fonts\.googleapis\.com|url\.com)' --exclude-path '**/ci.yaml' --exclude-mail --github-token ${{ secrets.GITHUB_TOKEN }} './**/*.md' './**/*.html' |
55 | 51 |
|
56 | 52 | - name: Download Ultralytics Website
|
57 | 53 | if: matrix.branch == 'main'
|
|
66 | 62 | timeout_minutes: 5
|
67 | 63 | retry_wait_seconds: 60
|
68 | 64 | max_attempts: 3
|
69 |
| - command: lychee --accept 429,999 --exclude-loopback --exclude 'https?://(www\.)?(linkedin\.com|twitter\.com|instagram\.com|kaggle\.com|tiktok\.com|fonts\.gstatic\.com|fonts\.googleapis\.com|url\.com|wellfound\.com|.*\.cloudfunctions\.net|0\.0\.0\.0:5543/predict/from_files)' --exclude-path '**/ci.yaml' --exclude-mail --github-token ${{ secrets.GITHUB_TOKEN }} './ultralytics_website/**/*.html' |
| 65 | + command: lychee --accept 403,429,500,502,999 --exclude-loopback --exclude 'https?://(www\.)?(linkedin\.com|twitter\.com|instagram\.com|kaggle\.com|tiktok\.com|fonts\.gstatic\.com|fonts\.googleapis\.com|url\.com|wellfound\.com|.*\.cloudfunctions\.net|0\.0\.0\.0:5543/predict/from_files)' --exclude-path '**/ci.yaml' --exclude-mail --github-token ${{ secrets.GITHUB_TOKEN }} './ultralytics_website/**/*.html' |
| 66 | + |
| 67 | + - name: Test Website, Markdown, HTML, YAML, Python and Notebook links with retry |
| 68 | + if: github.event_name == 'workflow_dispatch' |
| 69 | + uses: nick-invision/retry@v2 |
| 70 | + with: |
| 71 | + timeout_minutes: 5 |
| 72 | + retry_wait_seconds: 60 |
| 73 | + max_attempts: 3 |
| 74 | + command: lychee --accept 429,999 --exclude-loopback --exclude 'https?://(www\.)?(linkedin\.com|twitter\.com|instagram\.com|kaggle\.com|tiktok\.com|fonts\.gstatic\.com|fonts\.googleapis\.com|url\.com)' --exclude-path '**/ci.yaml' --exclude-mail --github-token ${{ secrets.GITHUB_TOKEN }} './**/*.md' './**/*.html' './**/*.yml' './**/*.yaml' './**/*.py' './**/*.ipynb' |
| 75 | + |
70 | 76 |
|
71 | 77 | Summary:
|
72 | 78 | runs-on: ubuntu-latest
|
|
0 commit comments