13 lines
861 B
Shell
13 lines
861 B
Shell
|
|
#!/usr/bin/env bash
|
||
|
|
set -euo pipefail
|
||
|
|
node_id=$(jq -r '.node_id' /etc/guanghu/node.json)
|
||
|
|
domain_id=$(jq -r '.domain_id' /etc/guanghu/node.json)
|
||
|
|
forgejo_state=$(systemctl is-active forgejo.service)
|
||
|
|
timer_state=$(systemctl is-active guanghu-forgejo-backup.timer)
|
||
|
|
version=$(forgejo --version | head -1)
|
||
|
|
http_code=$(curl -sS -o /dev/null -w '%{http_code}' http://127.0.0.1:3000/api/healthz)
|
||
|
|
listeners=$(ss -lntH '( sport = :3000 )' | awk '{print $4}')
|
||
|
|
[[ $listeners == 127.0.0.1:3000 ]]
|
||
|
|
jq -n --arg node_id "$node_id" --arg domain_id "$domain_id" --arg forgejo "$forgejo_state" \
|
||
|
|
--arg backup_timer "$timer_state" --arg version "$version" --arg http_code "$http_code" --arg bind "$listeners" \
|
||
|
|
'{ok:true,node_id:$node_id,domain_id:$domain_id,forgejo:$forgejo,backup_timer:$backup_timer,version:$version,health_http:$http_code,bind:$bind,public_exposure:false}'
|