blob: d285edf21d56327996a9211637a34da39e0d9b93 (
plain)
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
|
#!/bin/bash
declare -r ARGV0='vc-thm'
pull_url () {
local i=0
echo -n "$ARGV0: " >&2
while true
do
sleep 0.5 & # limit rate to one per 500 ms
curl -sSL "$1" > /dev/null
wait
let 'i += 1'
echo -n "$i " >&2
done
}
if [ -z "$1" ]; then
echo "Usage: $ARGV0 <URL> [TIMEOUT]" >& 2
exit 2
fi
# https://docs.github.com/en/actions/writing-workflows/choosing-when-your-workflow-runs/events-that-trigger-workflows#schedule
# > The shortest interval you can run scheduled workflows is once every 5 minutes.
[ -z "$2" ] && TIMEOUT=270 || TIMEOUT="$2"
set -e
pull_url "$1" &
CHILD="$!"
sleep "$TIMEOUT"
set +e
kill -TERM "$CHILD"
wait
echo >&2
exit 0 # don't care about the exit code from pull_url
|