Skip to content

Commit

Permalink
Conf files cant be modified by just using openstack-config and restar…
Browse files Browse the repository at this point in the history
…ting docker. Entrypoint has to be changed. Needs change to xmpp script.

Change-Id: I8e438fc30af4b24bf11223be3d2124ce28e7f513
Closes-Bug: #1769019
  • Loading branch information
skiranh committed May 11, 2018
1 parent 2bc119c commit 935e2e7
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 69 deletions.
7 changes: 6 additions & 1 deletion common/base.py
Expand Up @@ -81,7 +81,7 @@ def start_containers(self, node_ip, containers):
nodes=[node_ip])[0]
# end start_containers

def add_knob_to_container(self, node_ip, container_name, level='DEAFULT', knob=None):
def add_knob_to_container(self, node_ip, container_name, level='DEFAULT', knob=None):
''' Add a configuration knob to container at specified level
Args:
node_ip : Node on which containers need to be stopped
Expand All @@ -100,6 +100,11 @@ def add_knob_to_container(self, node_ip, container_name, level='DEAFULT', knob=N
self.inputs.run_cmd_on_server(node_ip, issue_cmd, username, password, pty=True,
as_sudo=True)

just_knob = knob[:knob.find('=')]
issue_cmd = 'sed -i -e \'/'+just_knob+'/d\' entrypoint.sh'
self.logger.info('Running %s on %s' % (issue_cmd, node_ip))
self.inputs.run_cmd_on_server(node_ip, issue_cmd, username, password, pty=True,
as_sudo=True)
issue_cmd = 'grep -q -F \''+knob+'\' entrypoint.sh ||' + \
'sed -i \'/\['+level+'\]/a '+knob+'\' entrypoint.sh'
self.logger.info('Running %s on %s' % (issue_cmd, node_ip))
Expand Down
20 changes: 2 additions & 18 deletions serial_scripts/xmpp/base.py
Expand Up @@ -127,25 +127,9 @@ def config_policy_and_attach_to_vn(self, rules):

def enable_auth_on_cluster(self):
for node in self.inputs.bgp_control_ips:
self.update_contrail_conf(
conf_file='/etc/contrail/contrail-control.conf',
operation='set',
section='DEFAULT',
knob='xmpp_auth_enable',
value='true',
node=node,
service='contrail-control',
container='control')
self.add_knob_to_container(node, 'control_control_1', '', 'xmpp_auth_enable=True')
for node in self.inputs.compute_ips:
self.update_contrail_conf(
conf_file='/etc/contrail/contrail-vrouter-agent.conf',
operation='set',
section='DEFAULT',
knob='xmpp_auth_enable',
value='true',
node=node,
service='contrail-vrouter-agent',
container='agent')
self.add_knob_to_container(node, 'vrouter_vrouter-agent_1', '', 'xmpp_auth_enable=True')

def update_contrail_conf(
self,
Expand Down
58 changes: 8 additions & 50 deletions serial_scripts/xmpp/test_xmpp_auth.py
Expand Up @@ -9,9 +9,10 @@
import sys
import test
from tcutils.contrail_status_check import *
from common.base import _GenericTestBaseMethods


class TestXmpptests(XmppBase, ConfigPolicy):
class TestXmpptests(XmppBase, ConfigPolicy, _GenericTestBaseMethods):

@classmethod
def setUpClass(cls):
Expand Down Expand Up @@ -51,29 +52,14 @@ def test_precedence_xmpp_auth(self):
# there are asserts in the loop
self.addCleanup(self.enable_auth_on_cluster)
for node in self.inputs.bgp_control_ips:
self.update_contrail_conf(
conf_file='/etc/contrail/contrail-control.conf',
operation='del',
section='DEFAULT',
knob='xmpp_auth_enable',
node=node,
service='contrail-control',
container='control')
self.add_knob_to_container(node, 'control_control_1', 'DEFAULT', 'xmpp_auth_enable=False')
assert (self.check_xmpp_status(node)
), "XMPP between nodes not up after deleting xmpp auth"
assert (self.check_if_xmpp_auth_enabled(node, 'NIL')
), "Xmpp auth still set after disabling it on server side"
assert (self.check_if_cluster_has_xmpp), "XMPP connections not found"
for node in self.inputs.bgp_control_ips:
self.update_contrail_conf(
conf_file='/etc/contrail/contrail-control.conf',
operation='set',
section='DEFAULT',
knob='xmpp_auth_enable',
value='true',
node=node,
service='contrail-control',
container='control')
self.add_knob_to_container(node, 'control_control_1', 'DEFAULT', 'xmpp_auth_enable=True')
assert (self.check_xmpp_status(node)
), "XMPP between nodes not up after adding back xmpp auth"
assert (self.check_if_xmpp_auth_enabled(node)
Expand All @@ -91,14 +77,7 @@ def test_undo_xmpp_auth(self):
Also confirm if introspect reflects the changes as and when they are done
"""
for node in self.inputs.bgp_control_ips:
self.update_contrail_conf(
conf_file='/etc/contrail/contrail-control.conf',
operation='del',
section='DEFAULT',
knob='xmpp_auth_enable',
node=node,
service='contrail-control',
container='control')
self.add_knob_to_container(node, 'control_control_1', 'DEFAULT', 'xmpp_auth_enable=False')
# adding cleanup before assert
self.addCleanup(self.enable_auth_on_cluster)
assert (self.check_xmpp_status(node)
Expand All @@ -107,15 +86,7 @@ def test_undo_xmpp_auth(self):
assert (self.check_if_xmpp_auth_enabled(node, 'NIL')
), "Xmpp auth still set after disabling it on server side"
for node in self.inputs.bgp_control_ips:
self.update_contrail_conf(
conf_file='/etc/contrail/contrail-control.conf',
operation='set',
section='DEFAULT',
knob='xmpp_auth_enable',
value='true',
node=node,
service='contrail-control',
container='control')
self.add_knob_to_container(node, 'control_control_1', 'DEFAULT', 'xmpp_auth_enable=True')
assert (self.check_xmpp_status(node)
), "XMPP between nodes not up after adding back xmpp auth"
assert (self.check_if_cluster_has_xmpp), "XMPP connections not found"
Expand All @@ -132,13 +103,7 @@ def test_compute_negative_xmpp_auth(self):
"""

for node in self.inputs.compute_ips:
self.update_contrail_conf(
conf_file='/etc/contrail/contrail-vrouter-agent.conf',
operation='del',
section='DEFAULT',
knob='xmpp_auth_enable',
node=node,
service='contrail-vrouter-agent')
self.add_knob_to_container(node, 'vrouter_vrouter-agent_1', 'DEFAULT', 'xmpp_auth_enable=False')
# adding cleanup before assert
self.addCleanup(self.enable_auth_on_cluster)
for node in self.inputs.bgp_control_ips:
Expand All @@ -148,14 +113,7 @@ def test_compute_negative_xmpp_auth(self):
), "XMPP connections should not be found"

for node in self.inputs.compute_ips:
self.update_contrail_conf(
conf_file='/etc/contrail/contrail-vrouter-agent.conf',
operation='set',
section='DEFAULT',
knob='xmpp_auth_enable',
value='true',
node=node,
service='contrail-vrouter-agent')
self.add_knob_to_container(node, 'vrouter_vrouter-agent_1', 'DEFAULT', 'xmpp_auth_enable=True')
for node in self.inputs.bgp_control_ips:
assert (self.check_xmpp_status(node)
), "XMPP between nodes not up after adding back xmpp auth"
Expand Down

0 comments on commit 935e2e7

Please sign in to comment.