forked from STI/Astroport.ONE
73 lines
2.7 KiB
Bash
Executable File
73 lines
2.7 KiB
Bash
Executable File
################################################################################
|
|
# Author: Fred (support@qo-op.com)
|
|
# Version: 0.1
|
|
# License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/)
|
|
################################################################################
|
|
#~ ZEN.UMAP.memory.sh
|
|
#~ Search for last "UPLANET:$1:..." in UPLANETG1PUB wallet history
|
|
#~ INTERCOM="UPLANET:${UMAP}:${TODATE}:/ipfs/${IPFSPOP}" TX COMMENT are made during UPLANET.refresh.sh
|
|
#~ ~/.zen/tmp/${MOATS}/${UMAP} <=> "/ipfs/$ipfs_pop"
|
|
################################################################################
|
|
################################################################################
|
|
MY_PATH="`dirname \"$0\"`" # relative
|
|
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
|
|
. "${MY_PATH}/../tools/my.sh"
|
|
################################################################################
|
|
|
|
UMAP="$1"
|
|
[[ $UMAP == "" ]] && echo "MISSING UMAP ADRESS" && exit 1
|
|
MOATS="$2"
|
|
|
|
## CHECK FOR BAD PARAM
|
|
[[ ! -d ~/.zen/tmp/${MOATS-empty}/${UMAP-empty}/ ]] \
|
|
&& echo "BAD ~/.zen/tmp/${MOATS}/${UMAP}" \
|
|
&& exit 1
|
|
|
|
## STARTING
|
|
start=`date +%s`
|
|
|
|
## CORRESPONDING SECTOR UKEY
|
|
LAT=$(echo ${UMAP} | cut -d '_' -f 2)
|
|
LON=$(echo ${UMAP} | cut -d '_' -f 3)
|
|
|
|
## SECTOR COORD
|
|
SECLAT="${LAT::-1}"
|
|
SECLON="${LON::-1}"
|
|
|
|
SECTOR="_${SECLAT}_${SECLON}"
|
|
|
|
${MY_PATH}/../tools/keygen -t duniter -o ~/.zen/tmp/${MOATS}/${SECTOR}.priv "${UPLANETNAME}${SECTOR}" "${UPLANETNAME}${SECTOR}"
|
|
SECTORG1PUB=$(cat ~/.zen/tmp/${MOATS}/${SECTOR}.priv | grep "pub:" | cut -d ' ' -f 2)
|
|
[[ ! ${SECTORG1PUB} ]] && echo "ERROR generating SECTOR WALLET" && exit 1
|
|
COINS=$($MY_PATH/../tools/COINScheck.sh ${SECTORG1PUB} | tail -n 1)
|
|
echo "SECTOR : ${SECTOR} (${COINS} G1) WALLET : ${SECTORG1PUB}"
|
|
|
|
## RETRIEVE FROM SECTOR UKEY
|
|
${MY_PATH}/timeout.sh -t 20 $MY_PATH/jaklis/jaklis.py history -n 300 -p ${SECTORG1PUB} -j \
|
|
> ~/.zen/tmp/${MOATS}/${SECTOR}.g1history.json
|
|
|
|
## SCAN FOR UPLANET:${UMAP} in TX
|
|
if [[ -s ~/.zen/tmp/${MOATS}/${SECTOR}.g1history.json ]]; then
|
|
|
|
intercom=$(jq -r '.[] | select(.comment | test("UPLANET:'"${UMAP}"'")) | .comment' ~/.zen/tmp/${MOATS}/${SECTOR}.g1history.json)
|
|
ipfs_pop=$(echo "$intercom" | grep -oP 'UPLANET:'"${UMAP}"':/ipfs/\K[^"]+')
|
|
todate=$(echo "$intercom" | grep -oP 'UPLANET:'"${UMAP}"':\K[^:]*')
|
|
echo "SYNC ~/.zen/tmp/${MOATS}/${UMAP} <=> /ipfs/$ipfs_pop"
|
|
|
|
if [[ $ipfs_pop ]]; then
|
|
echo "from $todate memory slot"
|
|
ipfs --timeout 90s get -o ~/.zen/tmp/${MOATS}/${UMAP} /ipfs/$ipfs_pop
|
|
else
|
|
echo "WARNING cannot remember... scan for more TX ??!"
|
|
fi
|
|
|
|
else
|
|
echo "FATAL ERROR cannot access to SECTORG1PUB history"
|
|
exit 1
|
|
fi
|
|
|
|
end=`date +%s`
|
|
echo "(${UMAP}.memory) ${todate} get time : "`expr $end - $start` seconds.
|
|
|
|
exit 0
|