astrXbian/zen/ipns_self_publish.sh

38 lines
1.8 KiB
Bash
Raw Normal View History

2021-02-15 11:10:55 +01:00
#!/bin/bash
########################################################################
MY_PATH="`dirname \"$0\"`" # relative
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
ME="${0##*/}"
2021-08-05 23:47:37 +02:00
countMErunning=$(ps auxf --sort=+utime | grep -w $ME | grep -v -E 'color=auto|grep' | wc -l)
[[ $countMErunning -gt 2 ]] && echo "$ME already running $countMErunning time" && exit 0
2021-02-15 11:10:55 +01:00
########################################################################
2021-08-05 23:36:50 +02:00
IPFSNODEID=$(ipfs --timeout=30s id -f='<id>\n')
2021-06-04 22:37:43 +02:00
[[ $IPFSNODEID == "" ]] && echo "ipfs TIMEOUT" && exit 1
2021-02-15 11:10:55 +01:00
########################################################################
2021-08-09 20:44:56 +02:00
echo "Adding ~/.zen/ipfs to IPFS"
MIPFS=$(ipfs add -rHq ~/.zen/ipfs | tail -n 1)
2021-02-15 11:10:55 +01:00
OLDCHAIN=$(cat ~/.zen/ipfs/.${IPFSNODEID}/.chain)
2021-08-09 20:44:56 +02:00
echo "OLD: $OLDCHAIN != NEW:$MIPFS ?"
2021-02-15 11:10:55 +01:00
if [[ "$OLDCHAIN" != "$MIPFS" ]] # MODIFY CHAIN only if something was changed
then
2021-08-05 02:35:27 +02:00
echo "$(date -u +%s%N | cut -b1-13)" > ~/.zen/ipfs/.${IPFSNODEID}/.timestamp
echo $MIPFS > ~/.zen/ipfs/.${IPFSNODEID}/.chain
MIPFS=$(ipfs add -rHq ~/.zen/ipfs | tail -n 1)
2021-08-05 23:36:50 +02:00
NODEIPNS=$(ipfs --timeout=180s name publish --quieter /ipfs/$MIPFS)
2021-06-06 04:46:29 +02:00
echo "$NODEIPNS:TIME:$(cat ~/.zen/ipfs/.${IPFSNODEID}/.timestamp):CHAIN:$(cat ~/.zen/ipfs/.${IPFSNODEID}/.chain)"
2021-02-15 11:10:55 +01:00
fi
2021-08-09 20:44:56 +02:00
echo "PUBLISHED ~/.zen/ipfs TO http://127.0.0.1:8181/ipns/$IPFSNODEID"
2021-02-15 11:10:55 +01:00
########################################################################
2021-06-06 04:46:29 +02:00
## READ BLOCK CHAIN ##
2021-06-06 04:49:03 +02:00
# TIME=$(ipfs cat /ipns/${IPFSNODEID}/.${IPFSNODEID}/.timestamp)
# BLOCK=$(ipfs cat /ipns/${IPFSNODEID}/.${IPFSNODEID}/.chain)
2021-06-06 04:46:29 +02:00
# while [[ $BLOCK ]]
# do
# TIME=$(ipfs cat /ipfs/$BLOCK/.${IPFSNODEID}/.timestamp)
# BLOCK=$(ipfs cat /ipfs/$BLOCK/.${IPFSNODEID}/.chain)
# echo $TIME:$BLOCK
# done
########################################################################