ipns_directory_sync_daemon 427 B

12345678910111213141516171819202122232425262728
  1. #!/bin/bash
  2. set -e
  3. set -x
  4. id="$1"
  5. src="$2"
  6. dest="$3"
  7. base="$( cd "$(dirname "$0")" ; pwd -P )"
  8. if [ -z "$dest" ]; then
  9. echo >&2 "usage: $0 id src dest"
  10. exit 1
  11. fi
  12. last=$(ipfs files cat "/last$id" || echo "X")
  13. while true; do
  14. $base/wait_for_ipns_change "$src" "$last" 10 && {
  15. last=$($base/sync_ipns "$src" "$dest")
  16. echo "$last" | ipfs files write "/last$id"
  17. } || {
  18. :
  19. }
  20. sleep 1
  21. done