Browse Source

Publish to ipfs after mesh blog changes

Bob Mottram 8 years ago
parent
commit
63ba1c993a
No account linked to committer's email
1 changed files with 25 additions and 5 deletions
  1. 25
    5
      src/freedombone-mesh-blog

+ 25
- 5
src/freedombone-mesh-blog View File

@@ -31,22 +31,41 @@ PROJECT_NAME='freedombone'
31 31
 export TEXTDOMAIN=${PROJECT_NAME}-mesh-blog
32 32
 export TEXTDOMAINDIR="/usr/share/locale"
33 33
 
34
+IPFS_PATH=/usr/bin
35
+IPFS_COMMAND=$IPFS_PATH/ipfs
36
+IPFS_PUBLIC=/home/$USER/.ipfs-public
37
+
34 38
 BLOG_PATH=~/CreateBlog
35 39
 BLOG_CONTENT_PATH=$BLOG_PATH/content
36 40
 CURRENT_BLOG_INDEX=/home/$USER/.blog-index
37 41
 BLOG_EDITOR='pluma'
38 42
 DEFAULT_BLOG_TITLE=$"Freedombone Blog"
39 43
 
44
+function ipfs_publish {
45
+    DIR_TO_CHECK=/home/$USER/Public
46
+    if [ ! -d $DIR_TO_CHECK ]; then
47
+        return
48
+    fi
49
+
50
+    echo ''
51
+    echo $'Publishing to IPFS...'
52
+
53
+    OLD_STAT_FILE=/home/$MY_USERNAME/.old_stat.txt
54
+    NEW_STAT=$(stat -t $DIR_TO_CHECK)
55
+    echo $($IPFS_COMMAND add -rq /home/$USER/Public | tail -n 1) > $IPFS_PUBLIC
56
+    echo "$NEW_STAT" > $OLD_STAT_FILE
57
+
58
+    if [ -f $IPFS_PUBLIC ]; then
59
+        IPFS_PUBLIC_ID=$(cat $IPFS_PUBLIC)
60
+        $IPFS_COMMAND name publish /ipfs/$IPFS_PUBLIC_ID
61
+    fi
62
+}
63
+
40 64
 function regenerate_blog {
41 65
     clear
42 66
     echo ''
43 67
     echo $'Regenerating blog...'
44 68
 
45
-    OLD_STAT_FILE=/home/$USER/.old_stat.txt
46
-    if [ -f $OLD_STAT_FILE ]; then
47
-        rm -f $OLD_STAT_FILE
48
-    fi
49
-
50 69
     cd $BLOG_PATH
51 70
     if grep -q "SITENAME=u'${DEFAULT_BLOG_TITLE}'" $BLOG_PATH/pelicanconf.py; then
52 71
         TOX_NICK=$(toxid --showuser)
@@ -54,6 +73,7 @@ function regenerate_blog {
54 73
         sed -i "s|SITENAME=.*|SITENAME=u\"${BLOG_TITLE}\"|g" $BLOG_PATH/pelicanconf.py
55 74
     fi
56 75
     make html
76
+    ipfs_publish
57 77
 }
58 78
 
59 79
 function view_blog {