mirror of
https://github.com/dockur/windows.git
synced 2026-05-06 14:41:24 +00:00
Compare commits
1 commit
2c72464489
...
ae9a3db963
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ae9a3db963 |
1 changed files with 0 additions and 67 deletions
67
.github/workflows/links.yml
vendored
67
.github/workflows/links.yml
vendored
|
|
@ -1,67 +0,0 @@
|
||||||
name: Links
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_dispatch:
|
|
||||||
|
|
||||||
concurrency:
|
|
||||||
group: links
|
|
||||||
cancel-in-progress: false
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
links:
|
|
||||||
name: Links
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
permissions:
|
|
||||||
actions: read
|
|
||||||
packages: read
|
|
||||||
contents: read
|
|
||||||
steps:
|
|
||||||
-
|
|
||||||
name: Checkout
|
|
||||||
uses: actions/checkout@v6
|
|
||||||
with:
|
|
||||||
fetch-depth: 0
|
|
||||||
-
|
|
||||||
name: Validate Links
|
|
||||||
run: |
|
|
||||||
errors=0
|
|
||||||
count=0
|
|
||||||
host=""
|
|
||||||
declare -A seen
|
|
||||||
wget https://github.com/lwthiker/curl-impersonate/releases/download/v0.6.1/curl-impersonate-v0.6.1.x86_64-linux-gnu.tar.gz
|
|
||||||
tar -xzf curl-impersonate-v0.6.1.x86_64-linux-gnu.tar.gz
|
|
||||||
sudo cp curl-impersonate-ff /usr/local/bin/
|
|
||||||
check() {
|
|
||||||
local url="$1" http
|
|
||||||
http=$(curl-impersonate-ff -sSL -o /dev/null -w "%{http_code}" --max-time 10 -I -- "$url" 2>&1) || http="000"
|
|
||||||
[[ "$http" == 2* ]] && return 0
|
|
||||||
http=$(curl-impersonate-ff -sSL -o /dev/null -w "%{http_code}" --max-time 10 -r "0-0" -- "$url" 2>&1) || http="000"
|
|
||||||
[[ "$http" == 2* ]]
|
|
||||||
}
|
|
||||||
while IFS= read -r line; do
|
|
||||||
if [[ "$line" =~ ^[[:space:]]*local[[:space:]]+host=\"(https://[^\"]+)\" ]]; then
|
|
||||||
host="${BASH_REMATCH[1]%/}"
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
[[ "$line" =~ ^[[:space:]]*url=\"(.+)\" ]] || continue
|
|
||||||
val="${BASH_REMATCH[1]#/}"
|
|
||||||
if [[ "$val" == https://* ]]; then
|
|
||||||
url="$val"
|
|
||||||
elif [[ -n "$host" ]]; then
|
|
||||||
url="$host/$val"
|
|
||||||
else
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
[[ -v seen[$url] ]] && continue
|
|
||||||
seen[$url]=1
|
|
||||||
count=$((count + 1))
|
|
||||||
if check "$url"; then
|
|
||||||
echo " OK: $url"
|
|
||||||
else
|
|
||||||
echo "FAIL: $url"
|
|
||||||
errors=$((errors + 1))
|
|
||||||
fi
|
|
||||||
done < "src/define.sh"
|
|
||||||
echo ""
|
|
||||||
printf '%d/%d links valid\n' "$(( count - errors ))" "$count"
|
|
||||||
(( errors == 0 ))
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue