]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - UPGRADE
A bit more instructive debugging
[quix0rs-gnu-social.git] / UPGRADE
diff --git a/UPGRADE b/UPGRADE
index db16cf2a60caaaf31d23a6e660ced8c6d993cef4..aaf9109e397b4542b9247297f3a89bf103e66152 100644 (file)
--- a/UPGRADE
+++ b/UPGRADE
 Upgrading
 =========
 
 Upgrading
 =========
 
-StatusNet 1.1.1 to GNU social
------------------------------
+GNU social 1.1.x to GNU social 1.2.x
+------------------------------------
+
+If you are tracking the GNU social git repository, we currently recommend
+using the "master" branch (or nightly if you want to use latest features)
+and follow this procedure: 
+
+0. Backup your data. The StatusNet upgrade discussions below have some
+    guidelines to back up the database and files (mysqldump and rsync).
+
+1. Stop your queue daemons (you can run this command even if you do not
+    use the queue daemons):
+    $ bash scripts/stopdaemons.sh
+
+2. Run the command to fetch the latest sourcecode:
+    $ git pull
+    
+    If you are not using git we recommend following the instructions below
+    for upgrading "StatusNet 1.1.x to GNU social 1.2.x" as they are similar.
+
+3. Run the upgrade script:
+    $ php scripts/upgrade.php
+
+   The upgrade script will likely take a long time because it will
+    upgrade the tables to another character encoding and make other
+    automated upgrades. Make sure it ends without errors. If you get
+    errors, create a new task on https://git.gnu.io/gnu/gnu-social/issues
+
+4. Start your queue daemons again (you can run this command even if you
+    do not use the queue daemons):
+    $ bash scripts/startdaemons.sh
+
+5. Report any issues at https://git.gnu.io/gnu/gnu-social/issues
+
+If you are using ssh keys to log in to your server, you can make this
+procedure pretty painless (assuming you have automated backups already).
+Make sure you "cd" into the correct directory (in this case "htdocs")
+and use the correct login@hostname combo:
+    $ ssh social@domain.example 'cd htdocs
+            && bash scripts/stopdaemons.sh
+            && git pull
+            && time php scripts/upgrade.php
+            && bash scripts/startdaemons.sh'
+
+StatusNet 1.1.x to GNU social 1.2.x
+-----------------------------------
 
 We cannot support migrating from any other version of StatusNet than 
 1.1.1. If you are running a StatusNet version lower than this, please 
 follow the upgrade procedures for each respective StatusNet version.
 
 
 We cannot support migrating from any other version of StatusNet than 
 1.1.1. If you are running a StatusNet version lower than this, please 
 follow the upgrade procedures for each respective StatusNet version.
 
-You are now running StatusNet 1.1.1 and want to migrate to GNU social.
+You are now running StatusNet 1.1.1 and want to migrate to GNU social
+1.2.x. Beware there may be changes in minimum required version of PHP
+and the modules required, so review the INSTALL file (php5-intl is a
+newly added dependency for example).
 
 
-Before you begin: Make backups. Always make backups. Of your entire 
+Before you begin: Make backups. Always make backups. Of your entire 
 directory structure and the database too. All tables. All data. Alles.
 
 directory structure and the database too. All tables. All data. Alles.
 
-    0. Stop your queue daemons 'php scripts/stopdaemon.php' should do it.
-        Not everyone runs queue daemons, but the above command won't hurt.
+0. Make a backup of everything. To backup the database, you can use a
+variant of this command (you will be prompted for the database password):
+    $ mysqldump -u dbuser -p dbname > social-backup.sql
 
 
-    1. Unpack your GNU social code to a fresh directory.
-    
-    2. Synchronize your local files to the GNU social directory. These 
-        will be the local files such as avatars, config and files:
-
-            avatar/*
-            background/*
-            file/*
-            local/*
-            .htaccess
-            config.php
-
-    3. Replace your old StatusNet directory with the new GNU social
-        directory in your webserver root.
-    
-    4. Run the upgrade script: 'php scripts/upgrade.php'
-    
-    5. Start your queue daemons: 'php scripts/startdaemons.php'
-    
-    6. Report any issues at https://gitorious.org/statusnet/gnu-social/ 
-
-
-Legacy StatusNet instructions
------------------------------
-
-These instructions are here for historical and perhaps informational
-purposes.
-
-If you've been using StatusNet 1.0 or lower, or if you've
-been tracking the "git" version of the software, you will probably
-want to upgrade and keep your existing data. Try these step-by-step
-instructions; read to the end first before trying them.
-
-0. Download StatusNet and set up all the prerequisites as if you were
-   doing a new install.
-1. Make backups of both your database and your Web directory. UNDER NO
-   CIRCUMSTANCES should you try to do an upgrade without a known-good
-   backup. You have been warned.
-2. Shut down Web access to your site, either by turning off your Web
-   server or by redirecting all pages to a "sorry, under maintenance"
-   page.
-3. Shut down XMPP access to your site, typically by shutting down the
-   xmppdaemon.php process and all other daemons that you're running.
-   If you've got "monit" or "cron" automatically restarting your
-   daemons, make sure to turn that off, too.
-4. Shut down SMS and email access to your site. The easy way to do
-   this is to comment out the line piping incoming email to your
-   maildaemon.php file, and running something like "newaliases".
-5. Once all writing processes to your site are turned off, make a
-   final backup of the Web directory and database.
-6. Move your StatusNet directory to a backup spot, like "statusnet.bak".
-7. Unpack your StatusNet 1.1.1 tarball and move it to "statusnet" or
-   wherever your code used to be.
-8. Copy the config.php file and the contents of the avatar/, background/,
-   file/, and local/ subdirectories from your old directory to your new
-   directory.
-9. Copy htaccess.sample to .htaccess in the new directory. Change the
-   RewriteBase to use the correct path.
-10. Upgrade the database.
-
-    NOTE: this step is destructive and cannot be
-    reversed. YOU CAN EASILY DESTROY YOUR SITE WITH THIS STEP. Don't
-    do it without a known-good backup!
-
-    In your new StatusNet 1.1.1 directory and AFTER YOU MAKE A
-    BACKUP run the upgrade.php script like this:
-
-        php ./scripts/upgrade.php
-
-11. Use mysql or psql client to log into your database and make sure that
-    the notice, user, profile, subscription etc. tables are non-empty.
-12. Turn back on the Web server, and check that things still work.
-13. Turn back on XMPP bots and email maildaemon.
-
-NOTE: the 1.0.0 version of StatusNet changed the URLs for all admin
-panels from /admin/* to /panel/*. This now allows the (popular)
-username 'admin', but blocks the considerably less popular username
-'panel'. If you have an existing user named 'panel', you should rename
-them before upgrading.
-
-Privacy
-=======
-
-With StatusNet 1.0, our default install profile is for private sites.
-
-If you did not specify the privacy level of your site previously, it
-was public. Now, it's private.
-
-If you upgrade a public site, you will need to reset the privacy
-level. You can do this in your config.php:
-
-       $config['site']['private'] = false;
-
-...or with setconfig.php in the db:
-
-       php setconfig.php site private false
-
-...or with the site admin panel.
+1. Stop your queue daemons 'bash scripts/stopdaemons.sh' should do it.
+    Not everyone runs queue daemons, but the above command won't hurt.
+
+2. Unpack your GNU social code to a fresh directory. You can do this
+    by cloning our git repository:
+    $ git clone https://git.gnu.io/gnu/gnu-social.git gnusocial
+
+3. Synchronize your local files to the GNU social directory. These 
+    will be the local files such as avatars, config and files:
+
+        avatar/*
+        file/*
+        local/*
+        .htaccess
+        config.php
+
+    This command will point you in the right direction on how to do it:
+    $ rsync -avP statusnet/{.htaccess,avatar,file,local,config.php} gnusocial/
+
+4. Replace your old StatusNet directory with the new GNU social
+    directory in your webserver root.
+
+5. Run the upgrade script: 'php scripts/upgrade.php'
+   The upgrade script will likely take a long time because it will
+    upgrade the tables to another character encoding and make other
+    automated upgrades. Make sure it ends without errors. If you get
+    errors, create a new task on https://git.gnu.io/gnu/gnu-social/issues
+
+6. Start your queue daemons: 'bash scripts/startdaemons.sh'
+
+7. Report any issues at https://git.gnu.io/gnu/gnu-social/issues