WANdisco
 Navigation:  v1.4.2-LA Build 9b16f99c | Release Notes | Install | Upgrade | Administration | Reference | Gerrit | API | Glossary | Archive

Upgrade Guide

This guide describes upgrades and rollbacks for Git MultiSite.

1. Upgrade from version 1.3.1.1 to 1.4

1.1 Assumptions

Changes to MultiSite's database format

Some updates may change MultiSite's internal DConE prevayler database format. For the update to work properly you will need to run the transformer tool to convert the currently installed version of Git MultiSites backup file to support the latest prevayler database format. This is discussed in more detail in the Update Procedure below.

Email Notification settings are not preserved

Notification settings (which trigger alert emails) are lost as part of the upgrade from 1.2 to 1.2.1. In future upgrades these settings will be preserved.

1.2 Procedure

To upgrade from version 1.3.1.1 to version 1.4:

  1. Connect to each node in the 1.3.1.1 replication group, by command line, as root.
  2. Backup your 1.3.1.1 databases on each node using the following command:
    curl --user <admin user>:<admin password> -X POST http://<node ip address>:8082/api/backup
  3. Make a backup of the replicator database to allow for rollback:
    cp -r /opt/wandisco/git-multisite/replicator/database/* /path/to/your/backup/directory
  4. Copy the 1.4 installer script to each Node and run it as root
  5. Exit from your gitms account back to the root account
  6. Start the git-multisite service:
    service git-multisite start
  7. Finally, check the following:
    • All nodes have running replicators.
    • Replicator and GUI versions are showing 1.4.
    • You can push to a repository successfully.
    • The pushed change is replicated across the entire replication group.

2. Rollback from version 1.4 to 1.3.1.1

If you need to roll back to the previous version of Git MultiSite, use the following procedure:

  1. Log in as root on each node.
  2. On each node, uninstall the current version using the following script:
    #This script removes the install of git-multsite to be able to install cleanly
    echo "Removing Git-Multisite RPMS"
    yum remove -y git-multisite git-multisite-gui git-multisite-hook git-multisite-all
    echo "Removing Git-Multisite Directory"
    rm -rf /opt/wandisco/git-multisite
    killall java
    cd /tmp
    rm -rf *
    cd
  3. On each node, re-install the previous version
  4. Stop the git-multisite service:
    service git-multisite stop
  5. Remove the contents of the Git MultiSite database directory:
    rm -r /opt/wandisco/git-multisite/replicator/database/*
  6. Change to the gitms user:
    su gitms
  7. On each node, copy the content of your backed up database directory into place:
    cd /opt/wandisco/git-multisite/replicator/database
    cp -r /path/to/your/backup/directory/* .
  8. Check the database directory and all its contents are owned by gitms:gitms and permissions are set to 755
  9. Exit from your gitms account back to the root account
  10. Restart the git-multisite service:
    service git-multisite start
  11. Finally, check the following:
    • All nodes have running replicators
    • Replicator and GUI versions are showing 1.3.1.1
    • You can push to a repository successfully
    • The pushed change is replicated across the entire replication group