UMap refreshing randomly balanced among Boostrap list

This commit is contained in:
fred 2023-10-13 13:14:13 +02:00
parent 5500a240c2
commit 551d2d911f
1 changed files with 40 additions and 38 deletions

View File

@ -53,6 +53,46 @@ mkdir ~/.zen/tmp/${MOATS}
# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
########################################################
## NODE SELECTION in UMAP.refresh
UREFRESH="${HOME}/.zen/tmp/${MOATS}/${UMAP}/${LAT}_${LON}/UMAP.refresh"
ALLNODES=($(cat ${UREFRESH})) # ${ALLNODES[@]}
[[ ! ${ALLNODES} ]] && ALLNODES=${IPFSNODEID}
STRAPS=($(ipfs bootstrap | rev | cut -f 1 -d'/' | rev)) ## ${STRAPS[@]}
# STRAPS=($(cat ${MY_PATH}/../A_boostrap_nodes.txt | grep -Ev "#"))
IAMINBOOTSTRAP=$(echo ${STRAPS[@]} | grep ${IPFSNODEID})
[[ ! ${IAMINBOOTSTRAP} ]] && ACTINGNODE=${ALLNODES[-1]} ## LAST NODE IN UMAP.refresh
# PRIORITY TO BOOSTRAP
for NODE in ${ALLNODES[@]}; do
for STRAP in ${STRAPS[@]}; do
echo ${STRAP} >> ${UREFRESH} ## FILL UMAP.refresh file with all STRAPS
[[ "${NODE}" == "${STRAP}" ]] && ACTINGNODE=${NODE} ## PREFER NODE BEING BOOSTRAP
done
done
[[ ! ${ACTINGNODE} ]] && ACTINGNODE=${IPFSNODEID}
[[ "${ACTINGNODE}" != "${IPFSNODEID}" ]] \
&& echo ">> ACTINGNODE=${ACTINGNODE} is not ME - CONTINUE -" \
&& rm -Rf ~/.zen/tmp/${MOATS}
&& continue
########################################
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PASSING THERE MAKE IPFSNODEID UMAP REFRESHER
## NEXT REFRESHER
# TODO: INTRODUCE NODE BALANCE AND CHOOSE THE MOST CONFIDENT ONE
# SHUFFLE UMAP.refresh
echo ${IPFSNODEID} >> ${UREFRESH}
cat ${UREFRESH} | uniq | shuf > ${UREFRESH}.shuf
mv ${UREFRESH}.shuf ${UREFRESH}
## NEXT REFRESHER
echo ">> NEXT REFRESHER WILL BE $(cat ${UREFRESH} | tail -n 1)"
######################################################## # NODE SELECTION in UMAP.refresh
## FORMAT CONTROL WARNING
[[ ! -d ~/.zen/tmp/${MOATS}/${UMAP}/${G1PUB} || ! -d ~/.zen/tmp/${MOATS}/${UMAP}/${LAT}_${LON} ]] \
&& echo ">>> WARNING - UMAP IS BAD FORMAT - PLEASE MONITOR KEY -" \
@ -78,44 +118,6 @@ mkdir ~/.zen/tmp/${MOATS}
cp -v ${TWRED} ~/.zen/tmp/${MOATS}/${UMAP}/TW/${ZMAIL}/
done
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
########################################################
## NODE SELECTION in UMAP.refresh
UREFRESH="${HOME}/.zen/tmp/${MOATS}/${UMAP}/${LAT}_${LON}/UMAP.refresh"
ALLNODES=($(cat ${UREFRESH})) # ${ALLNODES[@]}
[[ ! ${ALLNODES} ]] && ALLNODES=${IPFSNODEID}
STRAPS=($(ipfs bootstrap | rev | cut -f 1 -d'/' | rev)) ## ${STRAPS[@]}
# STRAPS=($(cat ${MY_PATH}/../A_boostrap_nodes.txt | grep -Ev "#"))
IAMINBOOTSTRAP=$(echo ${STRAPS[@]} | grep ${IPFSNODEID})
[[ ! ${IAMINBOOTSTRAP} ]] && ACTINGNODE=${ALLNODES[-1]} ## LAST NODE IN UMAP.refresh
# PRIORITY TO BOOSTRAP
for NODE in ${ALLNODES[@]}; do
for STRAP in ${STRAPS[@]}; do
[[ "${NODE}" == "${STRAP}" ]] && ACTINGNODE=${NODE} ## PREFER NODE BEING BOOSTRAP
done
done
[[ ! ${ACTINGNODE} ]] && ACTINGNODE=${IPFSNODEID}
[[ "${ACTINGNODE}" != "${IPFSNODEID}" ]] \
&& echo ">> ACTINGNODE=${ACTINGNODE} is not ME - CONTINUE -" \
&& rm -Rf ~/.zen/tmp/${MOATS}
&& continue
########################################
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PASSING THERE MAKE IPFSNODEID UMAP REFRESHER
## NEXT REFRESHER
# TODO: INTRODUCE NODE BALANCE AND CHOOSE THE MOST CONFIDENT ONE
# SHUFFLE UMAP.refresh
echo ${IPFSNODEID} >> ${UREFRESH}
cat ${UREFRESH} | uniq | shuf > ${UREFRESH}.shuf
mv ${UREFRESH}.shuf ${UREFRESH}
## NEXT REFRESHER
echo ">> NEXT REFRESHER WILL BE $(cat ${UREFRESH} | tail -n 1)"
######################################################## # NODE SELECTION in UMAP.refresh
## OSM2IPFS
### UMAP = 0.01° Planet Slice