-
Notifications
You must be signed in to change notification settings - Fork 370
/
lychee.toml
146 lines (112 loc) · 4.95 KB
/
lychee.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
############################# Display #############################
# Verbose program output
# Accepts log level: "error", "warn", "info", "debug", "trace"
verbose = "error"
# Show progress
progress = false
# Path to summary output file.
# output = "report.md"
############################# Cache ###############################
# Enable link caching. This can be helpful to avoid checking the same links on
# multiple runs.
cache = true
# Discard all cached requests older than this duration.
max_cache_age = "1d"
############################# Runtime #############################
# Number of threads to utilize.
# Defaults to number of cores available to the system if omitted.
threads = 6
# Maximum number of allowed redirects [default: 10]
max_redirects = 20
# Maximum number of concurrent network requests [default: 128]
max_concurrency = 30
############################# Requests ############################
# User agent to send with each request
user_agent = "curl/7.83.1"
# Website timeout from connect to response finished
timeout = 20
# Comma-separated list of accepted status codes for valid links.
# Omit to accept all response types.
#accept = "text/html"
# Proceed for server connections considered insecure (invalid TLS)
insecure = false
# Comma-separated list of accepted status codes for valid links.
accept = ["200", "204", "301", "429", "403"]
# Only test links with the given schemes (e.g. https).
# Omit to check links with any scheme.
scheme = [ "https" ]
# When links are available using HTTPS, treat HTTP links as errors.
require_https = true
# Request method
method = "get"
# Custom request headers
headers = []
# Remap URI matching pattern to different URI.
# remap = [ "https://example.com http://example.invalid" ]
# Base URL or website root directory to check relative URLs.
# base = "https://docs.balena.io"
# HTTP basic auth support. This will be the username and password passed to the
# authorization HTTP header. See
# <https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Authorization>
#basic_auth = "user:pwd"
############################# Exclusions ##########################
# Exclude URLs from checking (supports regex)
# balena base images account for ~1400 request to GitHub, they are
# omitted to avoid being rate limited.
# See https://docs.github.com/en/rest/overview/resources-in-the-rest-api#rate-limiting
# The openvpn link is omitted as trying to auto chek it results in
# a 503, even when it is available.
# The meta-balena link is included in parameterized scripts and as
# a result will always produce a failing link.
# The myorg/myapp link is a dummy address used in an example contract so is omitted.
# The balena/resin API urls will not respond to unauthenticated requests
# The gstatic and googleapis links go 404 and are excluded ever since we started checking HTML
# balenaCLI linux binary URLs always error out since they are generated on run time only
# File URLs are excluded as they aren't checked properly and error out
exclude = [
"https://github.com/balena-io-library/base-images",
"https://community.openvpn.net/openvpn",
"https://cloudlink.balena-cloud.com/",
"https://vpn.balena-cloud.com/ping",
"https://chrome.google.com/webstore/*",
"https://github.com/myorg/myapp",
"https://index.docker.io/v2/",
"https://api.balena-(cloud|staging).com/",
"https://delta.balena-(cloud|staging).com/",
"https://builder.balena-(cloud|staging).com/",
"https://dashboard.balena-(cloud|staging).com/devices/",
".balenadevice.io",
"https://index.docker.io/v1/",
"http://api.resin.io",
"http://api/",
".local",
"http://backend:1234",
"http:/%25s:%25s",
"git://github.com/",
"https://fonts.googleapis.com/*",
"https://fonts.gstatic.com/*",
"https://bob:[email protected]:12345",
"https://github.com/balena-io/balena-cli/releases/download/*",
"file://*",
"system@*",
"https://www.googletagmanager.com/gtm.js?*",
"https://github.com/balena-io/docs/issues/new?*",
"https://api/",
"https://raw.githubusercontent.com/balena-os/meta-balena/$%7Bos_version_tag%7D/meta-balena-common/recipes-containers/balena-supervisor/balena-supervisor.inc",
]
# Exclude these filesystem paths from getting checked.
exclude_path = ["./build/img/", "./build/css/", "./build/favicon.png", "./build/dist/", "./build/reference/base-images/base-images-ref/", "./node_modules"]
# Already mentioned in the GitHub action to include paths to check links
include = []
include_verbatim = true
# Exclude all private IPs from checking
# Equivalent to setting `exclude_private`, `exclude_link_local`, and `exclude_loopback` to true
exclude_all_private = true
# # Exclude private IP address ranges from checking
# exclude_private = false
# # Exclude link-local IP address range from checking
# exclude_link_local = false
# # Exclude loopback IP address range and localhost from checking
# exclude_loopback = false
# Exclude all mail addresses from checking
exclude_mail = true