Procházet zdrojové kódy

Use npm for wiki install #69

Bob Mottram před 7 roky
rodič
revize
396ac49f00
2 změnil soubory, kde provedl 22 přidání a 42 odebrání
  1. 22
    41
      src/freedombone-app-fedwiki
  2. 0
    1
      src/freedombone-image-customise

+ 22
- 41
src/freedombone-app-fedwiki Zobrazit soubor

@@ -35,11 +35,9 @@ SHOW_ON_ABOUT=1
35 35
 
36 36
 FEDWIKI_DOMAIN_NAME=
37 37
 FEDWIKI_CODE=
38
-FEDWIKI_REPO="https://github.com/fedwiki/wiki"
39
-FEDWIKI_COMMIT='8fba3bb5c18b53b0c07fd2f2af10058b0d1bd253'
38
+FEDWIKI_VERSION='0.13.0'
40 39
 FEDWIKI_ONION_PORT=8131
41 40
 FEDWIKI_PORT=3053
42
-FEDWIKI_DIR=/etc/fedwiki
43 41
 FEDWIKI_DATA=/var/lib/fedwiki
44 42
 
45 43
 fedwiki_variables=(FEDWIKI_DOMAIN_NAME
@@ -104,22 +102,17 @@ function reconfigure_fedwiki {
104 102
 }
105 103
 
106 104
 function upgrade_fedwiki {
107
-    CURR_FEDWIKI_COMMIT=$(get_completion_param "fedwiki commit")
108
-    if [[ "$CURR_FEDWIKI_COMMIT" == "$FEDWIKI_COMMIT" ]]; then
105
+    CURR_FEDWIKI_VERSION=$(get_completion_param "fedwiki version")
106
+    if [[ "$CURR_FEDWIKI_VERSION" == "$FEDWIKI_VERSION" ]]; then
109 107
         return
110 108
     fi
111 109
 
112
-    read_config_param FEDWIKI_DOMAIN_NAME
113 110
     systemctl stop fedwiki
114
-    cd $FEDWIKI_DIR
115
-
116
-    function_check set_repo_commit
117
-    set_repo_commit $FEDWIKI_DIR "fedwiki commit" "$FEDWIKI_COMMIT" $FEDWIKI_REPO
118
-
119
-    npm run upgrade-fedwiki
120
-    chown -R fedwiki:fedwiki $FEDWIKI_DIR
111
+    npm upgrade -g wiki@$FEDWIKI_VERSION
121 112
     chown -R fedwiki:fedwiki $FEDWIKI_DATA
122 113
     systemctl start fedwiki
114
+
115
+    set_completion_param "fedwiki version" "$FEDWIKI_VERSION"
123 116
 }
124 117
 
125 118
 function backup_local_fedwiki {
@@ -224,6 +217,8 @@ function remove_fedwiki {
224 217
     rm /etc/systemd/system/fedwiki.service
225 218
     systemctl daemon-reload
226 219
 
220
+    npm uninstall -g wiki
221
+
227 222
     function_check remove_nodejs
228 223
     remove_nodejs fedwiki
229 224
 
@@ -246,9 +241,6 @@ function remove_fedwiki {
246 241
     groupdel -f fedwiki
247 242
     userdel -r fedwiki
248 243
 
249
-    if [ -d $FEDWIKI_DIR ]; then
250
-        rm -rf $FEDWIKI_DIR
251
-    fi
252 244
     if [ -d $FEDWIKI_DATA ]; then
253 245
         rm -rf $FEDWIKI_DATA
254 246
     fi
@@ -326,43 +318,32 @@ function install_fedwiki {
326 318
         exit 893635
327 319
     fi
328 320
 
329
-    #apt-get -yq install ffmpeg
330
-
331 321
     if [ ! -d /var/www/$FEDWIKI_DOMAIN_NAME/htdocs ]; then
332 322
         mkdir -p /var/www/$FEDWIKI_DOMAIN_NAME/htdocs
333 323
     fi
334 324
 
335
-    if [ -d $FEDWIKI_DIR ]; then
336
-        rm -rf $FEDWIKI_DIR
337
-    fi
338 325
     if [ ! -d $FEDWIKI_DATA ]; then
339 326
         mkdir -p $FEDWIKI_DATA
340 327
     fi
341 328
 
342 329
     groupadd fedwiki
343
-    useradd -c "Fedwiki system account" -d $FEDWIKI_DIR -m -r -g fedwiki fedwiki
330
+    useradd -c "Fedwiki system account" -d $FEDWIKI_DATA -m -r -g fedwiki fedwiki
331
+    if [ -d $FEDWIKI_DATA/Maildir ]; then
332
+        rm -rf $FEDWIKI_DATA/Maildir
333
+    fi
344 334
 
345 335
     function_check install_nodejs
346 336
     install_nodejs fedwiki
347 337
 
348
-    if [ -d /repos/fedwiki ]; then
349
-        mkdir -p $FEDWIKI_DIR
350
-        cp -r -p /repos/fedwiki/. $FEDWIKI_DIR
351
-        cd $FEDWIKI_DIR
352
-        git pull
353
-    else
354
-        function_check git_clone
355
-        git_clone $FEDWIKI_REPO $FEDWIKI_DIR
356
-    fi
357
-
358
-    cd $FEDWIKI_DIR
359
-    git checkout $FEDWIKI_COMMIT -b $FEDWIKI_COMMIT
360
-    set_completion_param "fedwiki commit" "$FEDWIKI_COMMIT"
361
-
362
-    npm install
338
+    npm install -g wiki@$FEDWIKI_VERSION
363 339
     if [ ! "$?" = "0" ]; then
364 340
         echo $'Failed to install fedwiki'
365
-        exit 8736254
341
+        exit 6293523
342
+    fi
343
+
344
+    if [ ! -f /usr/local/bin/wiki ]; then
345
+        echo $'wiki was not installed'
346
+        exit 5293524
366 347
     fi
367 348
 
368 349
     FEDWIKI_ONION_HOSTNAME=$(add_onion_service fedwiki 80 ${FEDWIKI_ONION_PORT})
@@ -375,8 +356,8 @@ function install_fedwiki {
375 356
     echo '[Service]' >> /etc/systemd/system/fedwiki.service
376 357
     echo 'User=fedwiki' >> /etc/systemd/system/fedwiki.service
377 358
     echo 'Group=fedwiki' >> /etc/systemd/system/fedwiki.service
378
-    echo "WorkingDirectory=$FEDWIKI_DIR" >> /etc/systemd/system/fedwiki.service
379
-    echo "ExecStart=$FEDWIKI_DIR/wiki --data $FEDWIKI_DATA -p $FEDWIKI_PORT" >> /etc/systemd/system/fedwiki.service
359
+    echo "WorkingDirectory=$FEDWIKI_DATA" >> /etc/systemd/system/fedwiki.service
360
+    echo "ExecStart=/usr/local/bin/wiki --data $FEDWIKI_DATA -p $FEDWIKI_PORT" >> /etc/systemd/system/fedwiki.service
380 361
     echo 'StandardOutput=syslog' >> /etc/systemd/system/fedwiki.service
381 362
     echo 'StandardError=syslog' >> /etc/systemd/system/fedwiki.service
382 363
     echo 'SyslogIdentifier=fedwiki' >> /etc/systemd/system/fedwiki.service
@@ -386,7 +367,6 @@ function install_fedwiki {
386 367
     echo '[Install]' >> /etc/systemd/system/fedwiki.service
387 368
     echo 'WantedBy=multi-user.target' >> /etc/systemd/system/fedwiki.service
388 369
 
389
-    chown -R fedwiki:fedwiki $FEDWIKI_DIR
390 370
     chown -R fedwiki:fedwiki $FEDWIKI_DATA
391 371
 
392 372
     fedwiki_setup_web
@@ -402,6 +382,7 @@ function install_fedwiki {
402 382
     systemctl restart nginx
403 383
 
404 384
     set_completion_param "fedwiki domain" "$FEDWIKI_DOMAIN_NAME"
385
+    set_completion_param "fedwiki version" "$FEDWIKI_VERSION"
405 386
     APP_INSTALLED=1
406 387
 }
407 388
 

+ 0
- 1
src/freedombone-image-customise Zobrazit soubor

@@ -1667,7 +1667,6 @@ function image_preinstall_repos {
1667 1667
     git clone $KANBOARD_REPO $rootdir/repos/kanboard
1668 1668
     git clone $KEYSERVER_WEB_REPO $rootdir/repos/keyserverweb
1669 1669
     git clone $PEERTUBE_REPO $rootdir/repos/peertube
1670
-    git clone $FEDWIKI_REPO $rootdir/repos/fedwiki
1671 1670
     #git clone $WEKAN_REPO $rootdir/repos/wekan
1672 1671
     #git clone $FLOW_ROUTER_REPO $rootdir/repos/flowrouter
1673 1672
     #git clone $METEOR_USERACCOUNTS_REPO $rootdir/repos/meteoruseraccounts