Jump to: navigation, search

V4/Server Upgrade Refactoring/Test Plan

Name: V4/Server Upgrade Refactoring/Test Plan
Target version: V4
Design: Server_Upgrade_Refactoring
Reviewer: Incomplete.png missing
Last updated: 2016-04-25 by Alich

Overview

The purpose of Server Upgrade test plan is to describe and test scenarios that can happen during server upgrading. ...

Test Plan

Test case: Manual upgrade: ipa-server-upgrade with the old freeipa-server installed

Autotest

{{{autotest}}}

Setup

  1. With the old freeipa-server installed, fetch the new version from git, and build it:
$ git clone git://git.fedorahosted.org/git/freeipa.git
$ cd freeipa
$ make    # make sure that you have all dependencies installed (BuildRequires and Requires in freeipa.spec file)

Actions

 $ # ./install/tools/ipa-server-upgrade && echo $?

Expected results

... 0

Test case: Manual upgrade: ipa-server-upgrade with the the same version of freeipa-server installed

Autotest

{{{autotest}}}

Setup

  1. With the old freeipa-server installed, fetch the new version from git, and build it:
$ git clone git://git.fedorahosted.org/git/freeipa.git
$ cd freeipa
$ make    # make sure that you have all dependencies installed (BuildRequires and Requires in freeipa.spec file)

Actions

 $ # ./install/tools/ipa-server-upgrade && echo $?

Expected results

... 0

Test case: Automatic upgrade: Package update

Autotest

{{{autotest}}}

Setup

  1. Install freeipa-server, set it up, run it, and insert some data in there.

Actions

  1. Update the current system to get fresh packages.
  2. On Fedora use "fedup" (Fedora-21, workstation, in this example), on RHEL set the repositories and use "yum"
  3. Connect to your master server and check the data (CL / WebUI)
 $ yum update
 $ fedup --network 21 --product=workstation  # Fedora
 $ yum update  # RHEL
 $ ipa-ldap-updater --upgrade
 $ ipa-upgradeconfig
 check data (for example: $ ipa user-find)

Expected results

  1. System updated
  2. System packages updated - Fedora
  3. System packages updated - RHEL
  4. LDAP updater finished successfully
  5. IPA upgrade finished successfully
  6. Data unchanged

Test case: Automatic upgrade: Master + Replica

Autotest

{{{autotest}}}

Setup

  1. for upgrading FreeIPA, check the test case "Automatic upgrade: Package update"
  2. for the installation of replica check the guide here: https://docs.fedoraproject.org/en-US/Fedora/18/html/FreeIPA_Guide/Setting_up_IPA_Replicas.html
  3. install master and replica
  4. insert some data on master and check the replica that data has been replicated successfully
  5. insert some data on replica and check the master that data has been replicated successfully

Actions

  1. Update the Master box and check data
  2. Insert some data on master and check the replica that data has been replicated successfully
  3. Insert some data on replica and check the master that data has been replicated successfully
  4. Update the Replica box and check data
  5. Insert some data on master and check the replica that data has been replicated successfully
  6. Insert some data on replica and check the master that data has been replicated successfully

Expected results

Data remains the same after update, replication works fine and connection works between old-old, new-old, and new-new master-replica connection

Test case: Automatic upgrade: Master + Replica1 + Replica2 (outage)

Autotest

{{{autotest}}}

Setup

  1. for master-replica setup see the test case: "Automatic upgrade: Master + Replica"

Actions

  1. Install Replica1-Master-Replica2 topology
  2. Update the Master box and check data
  3. Insert some data on master and check the both replicas that data has been replicated successfully
  4. Insert some data on Replica1 and check the master and Replica2 that data has been replicated successfully
  5. Update the Replica box and check data
  6. Simulate the outage of Replica2 (blocking iptables for example) and insert some data there
  7. Insert some data on Replica1 and Master and check everywhere like previously
  8. Start Replica2 server again and check that all data has been replicated successfully "from" and "to" Replica2

Expected results

Data remains the same after update, replication works fine and connection works between old-old, new-old, and new-new master-replica connection