Kaynağa Gözat

Fixing nextcloud

Bob Mottram 8 yıl önce
ebeveyn
işleme
b309b6d953
1 değiştirilmiş dosya ile 66 ekleme ve 24 silme
  1. 66
    24
      src/freedombone-app-nextcloud

+ 66
- 24
src/freedombone-app-nextcloud Dosyayı Görüntüle

177
     function_check set_repo_commit
177
     function_check set_repo_commit
178
     set_repo_commit /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs "nextcloud commit" "$NEXTCLOUD_COMMIT" $NEXTCLOUD_REPO
178
     set_repo_commit /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs "nextcloud commit" "$NEXTCLOUD_COMMIT" $NEXTCLOUD_REPO
179
 
179
 
180
-    chown -R www-data:www-data /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs/config
181
-    chown -R www-data:www-data /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs/data
180
+    chown -R www-data:www-data /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs
181
+    chown -R www-data:www-data /var/www/$NEXTCLOUD_DOMAIN_NAME/data
182
     cd /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs
182
     cd /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs
183
     sudo -u www-data ./occ maintenance:repair
183
     sudo -u www-data ./occ maintenance:repair
184
     sudo -u www-data ./occ files:cleanup
184
     sudo -u www-data ./occ files:cleanup
192
         NEXTCLOUD_DOMAIN_NAME=$(get_completion_param "nextcloud domain")
192
         NEXTCLOUD_DOMAIN_NAME=$(get_completion_param "nextcloud domain")
193
     fi
193
     fi
194
 
194
 
195
-    source_directory=/var/www/${NEXTCLOUD_DOMAIN_NAME}/htdocs
195
+    source_directory=/var/www/${NEXTCLOUD_DOMAIN_NAME}/data
196
     if [ -d $source_directory ]; then
196
     if [ -d $source_directory ]; then
197
-        dest_directory=nextcloud
198
         function_check suspend_site
197
         function_check suspend_site
199
         suspend_site ${NEXTCLOUD_DOMAIN_NAME}
198
         suspend_site ${NEXTCLOUD_DOMAIN_NAME}
200
 
199
 
200
+        dest_directory=nextcloudfiles
201
         function_check backup_directory_to_usb
201
         function_check backup_directory_to_usb
202
         backup_directory_to_usb $source_directory $dest_directory
202
         backup_directory_to_usb $source_directory $dest_directory
203
 
203
 
204
+        source_directory=/var/www/${NEXTCLOUD_DOMAIN_NAME}/htdocs/config
205
+        dest_directory=nextcloudconfig
206
+        backup_directory_to_usb $source_directory $dest_directory
207
+
204
         function_check backup_database_to_usb
208
         function_check backup_database_to_usb
205
         backup_database_to_usb nextcloud
209
         backup_database_to_usb nextcloud
206
 
210
 
215
     fi
219
     fi
216
     NEXTCLOUD_DOMAIN_NAME=$(get_completion_param "nextcloud domain")
220
     NEXTCLOUD_DOMAIN_NAME=$(get_completion_param "nextcloud domain")
217
     if [ $NEXTCLOUD_DOMAIN_NAME ]; then
221
     if [ $NEXTCLOUD_DOMAIN_NAME ]; then
218
-        temp_restore_dir=/root/tempnextcloud
219
-        nextcloud_dir=/var/www/${NEXTCLOUD_DOMAIN_NAME}/htdocs
220
 
222
 
223
+        temp_restore_dir=/root/tempnextcloud
221
         function_check nextcloud_create_database
224
         function_check nextcloud_create_database
222
         nextcloud_create_database
225
         nextcloud_create_database
223
-
224
         restore_database nextcloud ${NEXTCLOUD_DOMAIN_NAME}
226
         restore_database nextcloud ${NEXTCLOUD_DOMAIN_NAME}
225
-        if [ -d $temp_restore_dir ]; then
226
-            rm -rf $temp_restore_dir
227
+
228
+        temp_restore_dir=/root/tempnextcloudfiles
229
+        restore_directory_from_usb $temp_restore_dir nextcloudfiles
230
+        temp_source_dir=$(find ${temp_restore_dir} -name data)
231
+        cp -r ${temp_source_dir} /var/www/${NEXTCLOUD_DOMAIN_NAME}/
232
+        if [ ! "$?" = "0" ]; then
233
+            set_user_permissions
234
+            backup_unmount_drive
235
+            exit 346723
227
         fi
236
         fi
237
+        rm -rf ${temp_restore_dir}
238
+
239
+        temp_restore_dir=/root/tempnextcloudconfig
240
+        restore_directory_from_usb $temp_restore_dir nextcloudconfig
241
+        temp_source_dir=$(find ${temp_restore_dir} -name config)
242
+        cp -r ${temp_source_dir} /var/www/${NEXTCLOUD_DOMAIN_NAME}/htdocs/
243
+        if [ ! "$?" = "0" ]; then
244
+            set_user_permissions
245
+            backup_unmount_drive
246
+            exit 3467343
247
+        fi
248
+        rm -rf ${temp_restore_dir}
228
 
249
 
250
+        chown -R www-data:www-data /var/www/${NEXTCLOUD_DOMAIN_NAME}/htdocs
251
+        chown -R www-data:www-data /var/www/${NEXTCLOUD_DOMAIN_NAME}/data
229
         cd $nextcloud_dir
252
         cd $nextcloud_dir
230
         sudo -u www-data ./occ maintenance:repair
253
         sudo -u www-data ./occ maintenance:repair
231
         sudo -u www-data ./occ files:cleanup
254
         sudo -u www-data ./occ files:cleanup
236
 function backup_remote_nextcloud {
259
 function backup_remote_nextcloud {
237
     if grep -q "nextcloud domain" $COMPLETION_FILE; then
260
     if grep -q "nextcloud domain" $COMPLETION_FILE; then
238
         NEXTCLOUD_DOMAIN_NAME=$(get_completion_param "nextcloud domain")
261
         NEXTCLOUD_DOMAIN_NAME=$(get_completion_param "nextcloud domain")
239
-        temp_backup_dir=/var/www/${NEXTCLOUD_DOMAIN_NAME}/htdocs
262
+        temp_backup_dir=/var/www/${NEXTCLOUD_DOMAIN_NAME}/data
240
         if [ -d $temp_backup_dir ]; then
263
         if [ -d $temp_backup_dir ]; then
241
             function_check suspend_site
264
             function_check suspend_site
242
             suspend_site ${NEXTCLOUD_DOMAIN_NAME}
265
             suspend_site ${NEXTCLOUD_DOMAIN_NAME}
244
             function_check backup_database_to_friend
267
             function_check backup_database_to_friend
245
             backup_database_to_friend nextcloud
268
             backup_database_to_friend nextcloud
246
 
269
 
247
-            echo $"Backing up GNU social installation"
248
-
249
             function_check backup_directory_to_friend
270
             function_check backup_directory_to_friend
250
-            backup_directory_to_friend $temp_backup_dir nextcloud
271
+            backup_directory_to_friend $temp_backup_dir nextclouddata
272
+
273
+            temp_backup_dir=/var/www/${NEXTCLOUD_DOMAIN_NAME}/htdocs/config
274
+            backup_directory_to_friend $temp_backup_dir nextcloudconfig
251
 
275
 
252
             function_check restart_site
276
             function_check restart_site
253
             restart_site
277
             restart_site
261
     if grep -q "nextcloud domain" $COMPLETION_FILE; then
285
     if grep -q "nextcloud domain" $COMPLETION_FILE; then
262
         echo $"Restoring nextcloud"
286
         echo $"Restoring nextcloud"
263
         NEXTCLOUD_DOMAIN_NAME=$(get_completion_param "nextcloud domain")
287
         NEXTCLOUD_DOMAIN_NAME=$(get_completion_param "nextcloud domain")
264
-        nextcloud_dir=/var/www/${NEXTCLOUD_DOMAIN_NAME}/htdocs
265
 
288
 
266
         function_check nextcloud_create_database
289
         function_check nextcloud_create_database
267
         nextcloud_create_database
290
         nextcloud_create_database
272
             rm -rf /root/tempnextcloud
295
             rm -rf /root/tempnextcloud
273
         fi
296
         fi
274
 
297
 
275
-        cd $nextcloud_dir
298
+        temp_restore_dir=/root/tempnextcloudfiles
299
+        restore_directory_from_friend $temp_restore_dir nextcloudfiles
300
+        temp_source_dir=$(find ${temp_restore_dir} -name data)
301
+        cp -r ${temp_source_dir} /var/www/${NEXTCLOUD_DOMAIN_NAME}/
302
+        if [ ! "$?" = "0" ]; then
303
+            exit 768254
304
+        fi
305
+        rm -rf ${temp_restore_dir}
306
+
307
+        temp_restore_dir=/root/tempnextcloudconfig
308
+        restore_directory_from_friend $temp_restore_dir nextcloudconfig
309
+        temp_source_dir=$(find ${temp_restore_dir} -name config)
310
+        cp -r ${temp_source_dir} /var/www/${NEXTCLOUD_DOMAIN_NAME}/htdocs/
311
+        if [ ! "$?" = "0" ]; then
312
+            exit 573427
313
+        fi
314
+        rm -rf ${temp_restore_dir}
315
+
316
+        chown -R www-data:www-data /var/www/${NEXTCLOUD_DOMAIN_NAME}/htdocs
317
+        chown -R www-data:www-data /var/www/${NEXTCLOUD_DOMAIN_NAME}/data
318
+        cd /var/www/${NEXTCLOUD_DOMAIN_NAME}/htdocs
276
         sudo -u www-data ./occ maintenance:repair
319
         sudo -u www-data ./occ maintenance:repair
277
         sudo -u www-data ./occ files:cleanup
320
         sudo -u www-data ./occ files:cleanup
278
         sudo -u www-data ./occ files:scan --all
321
         sudo -u www-data ./occ files:scan --all
363
     git checkout $NEXTCLOUD_COMMIT -b $NEXTCLOUD_COMMIT
406
     git checkout $NEXTCLOUD_COMMIT -b $NEXTCLOUD_COMMIT
364
     set_completion_param "nextcloud commit" "$NEXTCLOUD_COMMIT"
407
     set_completion_param "nextcloud commit" "$NEXTCLOUD_COMMIT"
365
 
408
 
366
-    # some extra apps
367
-    git clone https://github.com/nextcloud/gallery /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs/apps/gallery
368
-    git clone https://github.com/nextcloud/spreed /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs/apps/spreed
369
-    git clone https://github.com/nextcloud/calendar /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs/apps/calendar
370
-
371
     chmod g+w /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs
409
     chmod g+w /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs
372
     chown -R www-data:www-data /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs
410
     chown -R www-data:www-data /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs
373
 
411
 
502
 
540
 
503
     sed -i 's| DENY;| SAMEORIGIN;|g' $nextcloud_nginx_site
541
     sed -i 's| DENY;| SAMEORIGIN;|g' $nextcloud_nginx_site
504
 
542
 
543
+    # NextCloud doesn't like content-security-policy at all
544
+    sed -i '/Content-Security-Policy/d' $nextcloud_nginx_site
545
+
505
     function_check configure_php
546
     function_check configure_php
506
     configure_php
547
     configure_php
507
 
548
 
557
     ./occ status
598
     ./occ status
558
     ./occ app:list
599
     ./occ app:list
559
     ./occ app:enable encryption
600
     ./occ app:enable encryption
560
-    ./occ app:enable gallery
561
-    ./occ app:enable calendar
562
-    ./occ app:enable spreed
563
-    ./occ config:system:set defaultapp --value=gallery
564
     ./occ config:system:set appstoreenabled --value=false
601
     ./occ config:system:set appstoreenabled --value=false
565
     ./occ config:system:set trusted_domains 1 --value=$NEXTCLOUD_DOMAIN_NAME
602
     ./occ config:system:set trusted_domains 1 --value=$NEXTCLOUD_DOMAIN_NAME
566
     chmod g+w /var/www/${NEXTCLOUD_DOMAIN_NAME}/htdocs/config/config.php
603
     chmod g+w /var/www/${NEXTCLOUD_DOMAIN_NAME}/htdocs/config/config.php
567
     chown -R www-data:www-data /var/www/${NEXTCLOUD_DOMAIN_NAME}/htdocs
604
     chown -R www-data:www-data /var/www/${NEXTCLOUD_DOMAIN_NAME}/htdocs
568
     chmod 0644 .htaccess
605
     chmod 0644 .htaccess
569
     chmod 0750 data
606
     chmod 0750 data
607
+    chown -R www-data:www-data /var/www/${NEXTCLOUD_DOMAIN_NAME}/data
570
     sudo -u www-data ./occ files:cleanup
608
     sudo -u www-data ./occ files:cleanup
571
     sudo -u www-data ./occ files:scan --all
609
     sudo -u www-data ./occ files:scan --all
572
     sudo -u www-data ./occ maintenance:repair
610
     sudo -u www-data ./occ maintenance:repair
573
 
611
 
612
+    # move the data directory
613
+    mv /var/www/${NEXTCLOUD_DOMAIN_NAME}/htdocs/data /var/www/${NEXTCLOUD_DOMAIN_NAME}/
614
+    sed -i "s|'datadirectory'.*|'datadirectory' => '/var/www/$NEXTCLOUD_DOMAIN_NAME/data',|g" /var/www/${NEXTCLOUD_DOMAIN_NAME}/htdocs/config/config.php
615
+
574
     set_completion_param "nextcloud domain" "$NEXTCLOUD_DOMAIN_NAME"
616
     set_completion_param "nextcloud domain" "$NEXTCLOUD_DOMAIN_NAME"
575
 
617
 
576
     install_completed nextcloud_main
618
     install_completed nextcloud_main