Add CI pre-check for new entries

This commit is contained in:
Frank Denis 2021-01-27 16:57:22 +01:00
parent 96a905d182
commit 602374c6cd
3 changed files with 81 additions and 1 deletions

60
.github/workflows/prcheck.sh vendored Executable file
View File

@ -0,0 +1,60 @@
#! /bin/sh
curl -qL https://github.com/jedisct1/dnscrypt-proxy/releases/download/2.0.45/dnscrypt-proxy-linux_x86_64-2.0.45.tar.gz | tar xzvf -
cd linux-x86_64 || exit 1
NEW_ENTRIES="new-entries.txt"
git fetch --all
git diff origin/master | grep -F '+sdns://' | cut -d'+' -f2- | sort >"$NEW_ENTRIES"
if [ ! -s "$NEW_ENTRIES" ]; then
echo "No new entries found"
exit 0
fi
DUPLICATES="duplicates.txt"
uniq -d "$NEW_ENTRIES" >"$DUPLICATES"
if [ -s "$DUPLICATES" ]; then
echo "** DUPLICATES FOUND **"
cat "$DUPLICATES"
exit 1
fi
exit_code=0
CONFIG="test-dnscrypt-proxy.toml"
PIDFILE="dnscrypt-proxy.pid"
LOGFILE="dnscrypt-proxy.log"
while read -r stamp; do
echo
echo "* Checking resolver with stamp:"
echo "$stamp"
echo
cp example-dnscrypt-proxy.toml "$CONFIG"
sed -i -e 's/listen_addresses.*/listen_addresses = ["127.0.0.1:5300"]/' "$CONFIG"
sed -i -e 's/# *server_names.*/server_names = ["test"]/' "$CONFIG"
echo '[static."test"]' >>"$CONFIG"
echo "stamp = '${stamp}'" >>"$CONFIG"
./dnscrypt-proxy -config "$CONFIG" -pidfile "$PIDFILE" -logfile "$LOGFILE" -loglevel 1 &
sleep 5
if grep -q 'ERROR.*\[.*:.*]:' "$LOGFILE"; then
echo "(skipping due to IPv6 not being supported by GitHub Actions)"
elif ! ./dnscrypt-proxy -config "$CONFIG" -resolve example.com; then
echo "** UNABLE TO GET A RESPONSE FROM THE RESOLVER **"
echo "Bogus stamp: ${stamp}"
exit_code=1
fi
kill $(cat "$PIDFILE")
cat "$LOGFILE"
if grep -v 'ERROR.*\[.*:.*]:' "$LOGFILE" | grep -q 'ERROR|CRITICAL|FATAL'; then
echo "** ERRORS FOUND **"
exit_code=1
fi
echo "Done!"
echo
done <"$NEW_ENTRIES"
if [ $exit_code != 0 ]; then
echo "** ONE OR MORE CHECKS FAILED **"
fi
exit $exit_code

17
.github/workflows/prcheck.yml vendored Normal file
View File

@ -0,0 +1,17 @@
name: prcheck
on:
push:
branches: [master, next, ci]
pull_request:
branches: [master, next, ci]
workflow_dispatch:
jobs:
prcheck:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: new entries
run: .github/workflows/prcheck.sh

View File

@ -30,8 +30,9 @@ company providing Internet connectivity and VoIP in the UK.
https://www.aa.net.uk/legal/dohdot-disclaimer/
sdns://AgcAAAAAAAAADTIxNy4xNjkuMjAuMjOgPhoaD2xT8-l6SS1XCEtbmAcFnuBXqxUFh2_YP9o9uDggMob_ZaZfrzIIXuoTiMNzi6fjeHPJBszjxKKLTMKliYgNZG5zLmFhLm5ldC51awovZG5zLXF1ZXJ5
sdns://AgcAAAAAAAAADTIxNy4xNjkuMjAuMjOgPhoaD2xT8-l6SS1XCEtbmAcFnuBXqxUFh2_YP9o9uDggMob_ZaZfrzIIXuoTiMNzi6fjeHPJBszjxKKLTMKliYgNZG5zLmFhLm5ldC51awovZG5zLXd1ZXJ5
sdns://AgcAAAAAAAAADTIxNy4xNjkuMjAuMjOgPhoaD2xT8-l6SS1XCEtbmAcFnuBXqxUFh2_YP9o9uDggMob_ZaZfrzIIXuoTiMNzi6fjeHPJBszjxKKLTMKliYgNZG5zLmFhLm5ldC51awovZG5zLXF1ZXJ5
## aaflalo-me-gcp
@ -69,6 +70,8 @@ Public non-censoring, non-logging, DNSSEC-capable, DNSCrypt-enabled DNS resolver
sdns://AQcAAAAAAAAAFlsyMDAxOmJjODoxODI0OjczODo6MV0gAyfzz5J-mV9G-yOB4Hwcdk7yX12EQs5Iva7kV3oGtlEgMi5kbnNjcnlwdC1jZXJ0LmFjc2Fjc2FyLWFtcy5jb20
sdns://AQcAAAAAAAAAFlsyMDAxOmJjODoxODI0OjczODo6MV0gAyfzz5J-mV9G-yOB4Hwcdk7yX12EQs5Iva7kV3oGtlEgMi5kbnNjcnlwdC1jZXJ0LmFjc2Fjc2FyLWFtcy5jb20
## adfree.usableprivacy.net