mirror of
https://github.com/oceanprotocol/ocean-subgraph.git
synced 2024-12-02 05:57:29 +01:00
Matthias Kretschmann
f1a8269036
* activate dependabot * package updates * move auto-generated typings, adapt .gitignore * lint fix * eslint config tweaks, turn off eqeqeq rule * kick out Travis, switch to GitHub Actions * Update the readme file. * Add totalOceanLiquidity and fix TVL calculation * add logs to track pool shares. * lockedValue fix * update variable names * Feature/devel instructions (#19) * improve developer docs * fix readme Signed-off-by: mihaisc <mihai.scarlat@smartcontrol.ro> * update gitignore Signed-off-by: mihaisc <mihai.scarlat@smartcontrol.ro> * .env, and infura key Signed-off-by: mihaisc <mihai.scarlat@smartcontrol.ro> Co-authored-by: mihaisc <mihai.scarlat@smartcontrol.ro> * merged/dependabot-tvl-fix (#21) * Update the readme file. * Add totalOceanLiquidity and fix TVL calculation * add logs to track pool shares. * update variable names * fix error after merge Co-authored-by: ssallam <travis@travis-ci.org> * use const Co-authored-by: ssallam <travis@travis-ci.org> Co-authored-by: Alex Coseru <alex.coseru@gmail.com> Co-authored-by: mihaisc <mihai.scarlat@smartcontrol.ro> Co-authored-by: Samer <36411297+ssallam@users.noreply.github.com>
112 lines
3.0 KiB
Bash
Executable File
112 lines
3.0 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
save_coredumps() {
|
|
graph_dir=/var/lib/graph
|
|
datestamp=$(date +"%Y-%m-%dT%H:%M:%S")
|
|
ls /core.* >& /dev/null && have_cores=yes || have_cores=no
|
|
if [ -d "$graph_dir" -a "$have_cores" = yes ]
|
|
then
|
|
core_dir=$graph_dir/cores
|
|
mkdir -p $core_dir
|
|
exec >> "$core_dir"/messages 2>&1
|
|
echo "${HOSTNAME##*-} Saving core dump on ${HOSTNAME} at ${datestamp}"
|
|
|
|
dst="$core_dir/$datestamp-${HOSTNAME}"
|
|
mkdir "$dst"
|
|
cp /usr/local/bin/graph-node "$dst"
|
|
cp /proc/loadavg "$dst"
|
|
[ -f /Dockerfile ] && cp /Dockerfile "$dst"
|
|
tar czf "$dst/etc.tgz" /etc/
|
|
dmesg -e > "$dst/dmesg"
|
|
# Capture environment variables, but filter out passwords
|
|
env | sort | sed -r -e 's/^(postgres_pass|ELASTICSEARCH_PASSWORD)=.*$/\1=REDACTED/' > "$dst/env"
|
|
|
|
for f in /core.*
|
|
do
|
|
echo "${HOSTNAME##*-} Found core dump $f"
|
|
mv "$f" "$dst"
|
|
done
|
|
echo "${HOSTNAME##*-} Saving done"
|
|
fi
|
|
}
|
|
|
|
wait_for_ipfs() {
|
|
# Take the IPFS URL in $1 apart and extract host and port. If no explicit
|
|
# host is given, use 443 for https, and 80 otherwise
|
|
if [[ "$1" =~ ^((https?)://)?([^:/]+)(:([0-9]+))? ]]
|
|
then
|
|
proto=${BASH_REMATCH[2]:-http}
|
|
host=${BASH_REMATCH[3]}
|
|
port=${BASH_REMATCH[5]}
|
|
if [ -z "$port" ]
|
|
then
|
|
[ "$proto" = "https" ] && port=443 || port=80
|
|
fi
|
|
wait_for "$host:$port" -t 120
|
|
else
|
|
echo "invalid IPFS URL: $1"
|
|
exit 1
|
|
fi
|
|
}
|
|
|
|
start_query_node() {
|
|
export DISABLE_BLOCK_INGESTOR=true
|
|
graph-node \
|
|
--postgres-url "$postgres_url" \
|
|
--ethereum-rpc $ethereum \
|
|
--ipfs "$ipfs"
|
|
}
|
|
|
|
start_index_node() {
|
|
# Only the index node with the name set in BLOCK_INGESTOR should ingest
|
|
# blocks
|
|
if [[ ${node_id} != "${BLOCK_INGESTOR}" ]]; then
|
|
export DISABLE_BLOCK_INGESTOR=true
|
|
fi
|
|
|
|
graph-node \
|
|
--node-id "${node_id//-/_}" \
|
|
--postgres-url "$postgres_url" \
|
|
--ethereum-rpc $ethereum \
|
|
--ipfs "$ipfs"
|
|
}
|
|
|
|
start_combined_node() {
|
|
graph-node \
|
|
--postgres-url "$postgres_url" \
|
|
--ethereum-rpc $ethereum \
|
|
--ipfs "$ipfs"
|
|
}
|
|
|
|
postgres_port=${postgres_port:-5432}
|
|
postgres_url="postgresql://$postgres_user:$postgres_pass@$postgres_host:$postgres_port/$postgres_db"
|
|
|
|
wait_for_ipfs "$ipfs"
|
|
wait_for "$postgres_host:$postgres_port" -t 120
|
|
sleep 5
|
|
|
|
trap save_coredumps EXIT
|
|
|
|
export PGAPPNAME="${node_id-$HOSTNAME}"
|
|
|
|
# Set custom poll interval
|
|
if [ -n "$ethereum_polling_interval" ]; then
|
|
export ETHEREUM_POLLING_INTERVAL=$ethereum_polling_interval
|
|
fi
|
|
|
|
case "${node_role-combined-node}" in
|
|
query-node)
|
|
start_query_node
|
|
;;
|
|
index-node)
|
|
start_index_node
|
|
;;
|
|
combined-node)
|
|
start_combined_node
|
|
;;
|
|
*)
|
|
echo "Unknown mode for start-node: $1"
|
|
echo "usage: start (combined-node|query-node|index-node)"
|
|
exit 1
|
|
esac
|