瀏覽代碼

Peg the blog to a particular commit

Bob Mottram 9 年之前
父節點
當前提交
79c26dcffc
共有 1 個文件被更改,包括 40 次插入13 次删除
  1. 40
    13
      src/freedombone

+ 40
- 13
src/freedombone 查看文件

@@ -182,6 +182,8 @@ WIKI_CODE=
182 182
 # Domain name for your blog
183 183
 FULLBLOG_DOMAIN_NAME=
184 184
 FULLBLOG_CODE=
185
+FULLBLOG_REPO="https://github.com/danpros/htmly"
186
+FULLBLOG_COMMIT='5f271a2370cc1bfde15f2a0d5ed6928cc74b0efa'
185 187
 MY_BLOG_TITLE="My Blog"
186 188
 MY_BLOG_SUBTITLE="Another Freedombone Blog"
187 189
 
@@ -797,6 +799,12 @@ function read_configuration {
797 799
       if grep -q "LETSENCRYPT_SERVER" $CONFIGURATION_FILE; then
798 800
           LETSENCRYPT_SERVER=$(grep "LETSENCRYPT_SERVER" $CONFIGURATION_FILE | awk -F '=' '{print $2}')
799 801
       fi
802
+      if grep -q "FULLBLOG_REPO" $CONFIGURATION_FILE; then
803
+          FULLBLOG_REPO=$(grep "FULLBLOG_REPO" $CONFIGURATION_FILE | awk -F '=' '{print $2}')
804
+      fi
805
+      if grep -q "FULLBLOG_COMMIT" $CONFIGURATION_FILE; then
806
+          FULLBLOG_COMMIT=$(grep "FULLBLOG_COMMIT" $CONFIGURATION_FILE | awk -F '=' '{print $2}')
807
+      fi
800 808
       if grep -q "HUBZILLA_COMMIT" $CONFIGURATION_FILE; then
801 809
           HUBZILLA_COMMIT=$(grep "HUBZILLA_COMMIT" $CONFIGURATION_FILE | awk -F '=' '{print $2}')
802 810
       fi
@@ -9697,20 +9705,48 @@ function install_blog {
9697 9705
   if [[ $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_MAILBOX" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" || $SYSTEM_TYPE == "$VARIANT_MEDIA" || $SYSTEM_TYPE == "$VARIANT_DEVELOPER" || $SYSTEM_TYPE == "$VARIANT_MESH" ]]; then
9698 9706
       return
9699 9707
   fi
9700
-  if grep -Fxq "install_blog" $COMPLETION_FILE; then
9701
-      return
9702
-  fi
9703 9708
   if [ ! $FULLBLOG_DOMAIN_NAME ]; then
9704 9709
       echo 'The blog domain name was not specified'
9705 9710
       exit 5062
9706 9711
   fi
9707 9712
 
9713
+  # update to the next commit
9714
+  if [ -d /var/www/$FULLBLOG_DOMAIN_NAME/htdocs ]; then
9715
+      if grep -q "Blog commit" $COMPLETION_FILE; then
9716
+          CURRENT_FULLBLOG_COMMIT=$(grep "Blog commit" $COMPLETION_FILE | awk -F ':' '{print $2}')
9717
+          if [[ "$CURRENT_FULLBLOG_COMMIT" != "$FULLBLOG_COMMIT" ]]; then
9718
+              cd /var/www/$FULLBLOG_DOMAIN_NAME/htdocs
9719
+              git stash
9720
+              git checkout master
9721
+              git pull
9722
+              git checkout $FULLBLOG_COMMIT
9723
+              git branch -b $FULLBLOG_COMMIT
9724
+              sed -i "s/Blog commit.*/Blog commit:$FULLBLOG_COMMIT/g" $COMPLETION_FILE
9725
+              chown -R www-data:www-data /var/www/$FULLBLOG_DOMAIN_NAME/htdocs
9726
+          fi
9727
+      fi
9728
+  fi
9729
+
9730
+  if grep -Fxq "install_blog" $COMPLETION_FILE; then
9731
+      return
9732
+  fi
9733
+
9708 9734
   if [ ! -d /var/www/$FULLBLOG_DOMAIN_NAME ]; then
9709 9735
       mkdir /var/www/$FULLBLOG_DOMAIN_NAME
9710 9736
   fi
9711 9737
 
9712 9738
   cd /var/www/$FULLBLOG_DOMAIN_NAME
9713
-  git clone https://github.com/danpros/htmly htdocs
9739
+  git clone $FULLBLOG_REPO htdocs
9740
+  cd htdocs
9741
+  git checkout $FULLBLOG_COMMIT
9742
+  git branch -b $FULLBLOG_COMMIT
9743
+  if ! grep -q "Blog commit" $COMPLETION_FILE; then
9744
+      echo "Blog commit:$FULLBLOG_COMMIT" >> $COMPLETION_FILE
9745
+  else
9746
+      sed -i "s/Blog commit.*/Blog commit:$FULLBLOG_COMMIT/g" $COMPLETION_FILE
9747
+  fi
9748
+  cd /var/www/$FULLBLOG_DOMAIN_NAME
9749
+
9714 9750
   chown -R www-data:www-data /var/www/$FULLBLOG_DOMAIN_NAME/htdocs
9715 9751
 
9716 9752
   if [ ! -f /etc/ssl/certs/$FULLBLOG_DOMAIN_NAME.dhparam ]; then
@@ -10804,15 +10840,6 @@ function create_upgrade_script {
10804 10840
   echo 'apt-get -y update' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
10805 10841
   echo 'apt-get -y upgrade' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
10806 10842
   echo '' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
10807
-  echo "if grep -Fxq \"install_blog\" $COMPLETION_FILE; then" >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
10808
-  echo '  # Blog' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
10809
-  echo "  cd /var/www/$FULLBLOG_DOMAIN_NAME/htdocs" >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
10810
-  echo '  git stash' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
10811
-  echo '  git stash drop' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
10812
-  echo '  git pull' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
10813
-  echo "  chown -R www-data:www-data /var/www/$FULLBLOG_DOMAIN_NAME/htdocs" >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
10814
-  echo 'fi' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
10815
-  echo '' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
10816 10843
   echo "if grep -Fxq \"install_owncloud_music_app\" $COMPLETION_FILE; then" >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
10817 10844
   echo '  # Owncloud music app' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
10818 10845
   echo "  cd /usr/share/owncloud/apps/music" >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME