Add block height workflow

This commit is contained in:
Felipe Knorr Kuhn 2023-09-23 11:57:20 -07:00
parent a567f44b3c
commit 693b845c45
No known key found for this signature in database
GPG Key ID: 79619B52BB097C1A
2 changed files with 43 additions and 0 deletions

View File

@ -0,0 +1,19 @@
name: 'Check if servers are in sync'
on: [workflow_dispatch]
jobs:
print-backend-sha:
runs-on: 'ubuntu-latest'
name: Get block height
steps:
- name: Checkout
uses: actions/checkout@v3
with:
path: repo
- name: Run script
working-directory: repo
run: |
chmod +x ./scripts/get_block_tip_height.sh
sh ./scripts/get_block_tip_height.sh

View File

@ -0,0 +1,24 @@
BASE_HEIGHT=$(curl -sk https://node202.tk7.mempool.space/api/v1/blocks/tip/height)
IN_SYNC=true
echo "Base height (node202.tk7): $BASE_HEIGHT"
for LOCATION in fmt va1 fra tk7
do
for NODE in 201 202 203 204 205 206
do
NODE_HEIGHT=$(curl -sk https://node$NODE.$LOCATION.mempool.space/api/v1/blocks/tip/height)
echo $(echo node$NODE.$LOCATION.mempool.space) - $NODE_HEIGHT
if [ "$NODE_HEIGHT" -ne "$BASE_HEIGHT" ]; then
echo $(echo node$NODE.$LOCATION.mempool.space) is not in sync
IN_SYNC=false
fi
done
done
if [ "$IN_SYNC" = false ]; then
echo "One or more servers are out of sync. Check the logs."
exit -1
else
echo "All servers are in sync."
fi