Jump to: navigation, search

V4/Manage replication topology 4 4/Test Plan

Name: V4/Manage replication topology 4 4/Test Plan
Target version: 4.4.0
Design: V4/Manage_replication_topology_4_4
Reviewer: Incomplete.png missing
Last updated: 2016-10-11 by Ofayans

Overview

Some new features were introduced in Managed Topology functionality of IPA with IPA version 4.4.

  1. 'ipa-server-install --uninstall' executed on replica now triggers the remote 'server_del' API call on master causing removal of RUV's which eliminates the necessity to run 'ipa-replica-manage del' on master to correctly clean replication agreements.
  2. A replica can be now removed on the server with the command 'ipa server-del' - it serves as a combination of 'ipa-csreplica-manage del' and 'ipa-replica-manage del'
  3. ipa-replica-manage list-ruv now lists not only domain-related Replica Update Vectors (RUVs), but also ca-specific
  4. 'ipa-replica-manage del' now correctly cleans all RUV's even if the replica is offline (before that the RUV's were cleaned only if the replica could be contacted during the process)


Test Plan

Test case: ipa server-del command

Autotest

{{{autotest}}}

Setup

  1. Setup master and a replica with domain level 1

Actions

  1. on master run
    ipa server-del %replica_hostname%
  2. on master run
    ipa host-find
  3. on master run
    ipa dnsrecord-find %domain_name%
  4. on master run
    ipa-replica-manage list-ruv

Expected results

  1. The step should succeed
  2. The output should contain the hostname of the replica
  3. There should be A record associated with the replica
  4. None of the RUV's related to the replica is displayed

Test case: server_del API call is executed at ipa-server-install --uninstall on the replica under domain level 1

Autotest

{{{autotest}}}

Setup

  1. Setup master with domain level 0
  2. setup 2 replicas with --setup-ca option

Actions

  1. Uninstall the first replica with the command
    ipa-server-install --uninstall
  2. Run the command on the master host:
    ipa-replica-manage list-ruv
  3. Raise domain level to 1
  4. Uninstall the second replica
  5. Run the command on master
    ipa host-find
  6. Run the command on master
    ipa dnsrecord-find %domain_name%
  7. Repeat step 2

Expected results

  1. Step should succeed
  2. Both RUV's (domain and CA) related to the first replica should be displayed
  3. Step should succeed
  4. Step should succeed
  5. The output should contain the hostname of the second replica
  6. There should be A record associated with the second replica
  7. None of the RUV's related to the second replica is displayed

Test case: *-ruv subcommands of ipa-replica-manage are extended to handle CA-specific RUVs

Autotest

{{{autotest}}}

Setup

  1. Setup a master and a replica with --setup-ca option and domain level = 1

Actions

  1. On the master execute
    ipa-replica-manage list-ruv -p %dirman_password%
  2. Uninstall the replica with
    ipa-server-install --uninstall
  3. Run the command on the master
    ipa-replica-manage list-ruv
  4. Repeat step 1

Expected results

  1. the output should display both domain- and ca-specific RUVs of master and replica (last token is a RUV id, which you would use to delete a specific RUV):
    Replica Update Vectors:
       replica1.example.com:389: 3
       master.example.com:389: 4
    Certificate Server Replica Update Vectors:
       master.example.com:389: 96
       replica1.example.com:389: 97
  2. Step should succeed
  3. Step should succeed
  4. The output should display only master-related RUVs, something like this:
    Replica Update Vectors:
       master.example.com:389: 4
    Certificate Server Replica Update Vectors:
       master.example.com:389: 96

Test case: clean-ruv subcommand

Autotest

{{{autotest}}}

Setup

  1. Setup a master and a replica with --setup-ca option and domain levle 1
  2. Turn the replica off or block all incoming traffic to it:
    iptables -F
    iptables -A INPUT -p tcp --dport 22 -j ACCEPT
    iptables -A INPUT -j DROP

Actions

  1. On master run command
    ipa-replica-manage list-ruv -p %dirman_password%
  2. On master run command
    ipa-replica-manage clean-ruv %replica_ruv% -p %dirman_password%
  3. On master run command
    ipa-replica-manage clean-ruv %replica_cs_ruv% -p %dirman_password%
  4. Repeat step 1

Expected results

  1. the output should display both domain- and ca-specific RUVs of master and replica
  2. The step should succeed
  3. The step should succeed
  4. The output should not contain only master-related RUVs

Test case: ipa-replica-manage del with turned off replica under domain level 0 keeps ca-related RUVs

Autotest

{{{autotest}}}

Setup

  1. Setup a master with domain level 0 and a replica with --setup-ca option
  2. Turn off the replica host

Actions

  1. On master run the command
    ipa-replica-manage del -f -p %dirman_password% %replica_fqdn%
  2. On master run the command
    ipa-replica-manage list-ruv -p %dirman_password%
  3. On master run the command
    ipa-replica-manage clean-ruv -f -p %dirman_password% 97
  4. Repeat step 2

Expected results

  1. The step succeeds
  2. The output would not display domain-specific RUV of a removed replica, but would still display it's CA-specific RUV:
    Replica Update Vectors:
       master.example.com:389: 4
    Certificate Server Replica Update Vectors:
       master.example.com:389: 96
       replica1.example.com:389: 97
  3. The step succeeds
  4. CA-specific RUV of the removed replica is no more shown:
    Replica Update Vectors:
       master.example.com:389: 4
    Certificate Server Replica Update Vectors:
       master.example.com:389: 96

Test case: ipa-replica-manage del with turned off replica under domain level 1 removes ca-related RUVs

Autotest

{{{autotest}}}

Setup

  1. Setup a master with domain level 1 and a replica with --setup-ca option
  2. Turn off the replica host

Actions

  1. On master run the command
    ipa-replica-manage del -f -p %dirman_password% %replica_fqdn%
  2. On master run the command
    ipa-replica-manage list-ruv -p %dirman_password%

Expected results

  1. The step succeeds
  2. The output would not display neither domain-specific nor CA-specific RUV of a removed replica:
    Replica Update Vectors:
       master.example.com:389: 4
    Certificate Server Replica Update Vectors:
       master.example.com:389: 96

Test case: ipa-replica-manage clean-dangling-ruv in a multi-CA setup

Autotest

{{{autotest}}}

Setup

  1. Setup a master with domain level 0 and a replica with --setup-ca option
  2. Uninstall the replica with
    ipa-server-install --uninstall -U

Actions

  1. On master run the command
    ipa-replica-manage del -f -p %dirman_password% %replica_fqdn%
  2. On master run the command
    ipa-replica-manage list-ruv -p %dirman_password%
  3. On master run the command
    ipa-replica-manage clean-dangling-ruv -p %dirman_password%
  4. Repeat step 2

Expected results

  1. The step succeeds
  2. The system still shows CA-specific RUV of the removed replica
  3. The step succeeds
  4. The system does not show the CA-specific RUV of the removed replica

Test case: ipa-replica-manage clean-dangling-ruv in a single-CA setup

Autotest

{{{autotest}}}

Setup

  1. Setup a master with domain level 0 and a replica without --setup-ca option
  2. Uninstall the replica with
    ipa-server-install --uninstall -U

Actions

  1. On master run the command
    ipa-replica-manage del -f -p %dirman_password% %replica_fqdn%
  2. On master run the command
    ipa-replica-manage list-ruv -p %dirman_password%
  3. On master run the command
    ipa-replica-manage clean-dangling-ruv -p %dirman_password%
  4. Repeat step 2

Expected results

  1. The step succeeds
  2. The system still shows CA-specific RUV of the removed replica
  3. The step succeeds
  4. The system does not show the CA-specific RUV of the removed replica

Test case: Topology graph: display "autogenerated" placeholder while adding segment

Autotest

{{{autotest}}}

Setup

  1. Install a master and 2 replicas in a "star" topology

Actions

  1. Login to WebUI of the master, navigate to
    /ipa/ui/#/p/topology-graph
  2. Click 'add' button

Expected results

  1. Topology graph should be displayed
  2. In the 'Segment name' from field there should be a 'autogenerated' placeholder