Open default MySQL port after configuration
Ensure that the default MySQL port, 3306, is opened as part of the charm configuration, allowing PXC to be exposed and accessed in environments where firewalling is enabled (such as AWS or GCE). Change-Id: I417a70e8faa23248af945de846ba0f3286ffca83 Closes-Bug: 1614205
This commit is contained in:
parent
55154de2ee
commit
3bd97a245c
|
@ -26,6 +26,7 @@ from charmhelpers.core.hookenv import (
|
|||
network_get_primary_address,
|
||||
charm_name,
|
||||
leader_get,
|
||||
open_port,
|
||||
)
|
||||
from charmhelpers.core.host import (
|
||||
service_restart,
|
||||
|
@ -96,6 +97,7 @@ from percona_utils import (
|
|||
get_cluster_host_ip,
|
||||
client_node_is_ready,
|
||||
leader_node_is_ready,
|
||||
DEFAULT_MYSQL_PORT,
|
||||
)
|
||||
|
||||
|
||||
|
@ -296,6 +298,8 @@ def config_changed():
|
|||
if is_relation_made('nrpe-external-master'):
|
||||
update_nrpe_config()
|
||||
|
||||
open_port(DEFAULT_MYSQL_PORT)
|
||||
|
||||
|
||||
@hooks.hook('cluster-relation-joined')
|
||||
def cluster_joined():
|
||||
|
|
|
@ -65,6 +65,7 @@ REPO = """deb http://repo.percona.com/apt {release} main
|
|||
deb-src http://repo.percona.com/apt {release} main"""
|
||||
SEEDED_MARKER = "{data_dir}/seeded"
|
||||
HOSTS_FILE = '/etc/hosts'
|
||||
DEFAULT_MYSQL_PORT = 3306
|
||||
|
||||
# NOTE(ajkavanagh) - this is 'required' for the pause/resume code for
|
||||
# maintenance mode, but is currently not populated as the
|
||||
|
|
|
@ -206,3 +206,38 @@ class TestNRPERelation(CharmTestCase):
|
|||
hooks.update_nrpe_config()
|
||||
self.nrpe.add_init_service_checks.assert_called_once_with(
|
||||
mock.ANY, ["mysql"], mock.ANY)
|
||||
|
||||
|
||||
class TestConfigChanged(CharmTestCase):
|
||||
|
||||
TO_PATCH = [
|
||||
'log',
|
||||
'open_port',
|
||||
'config',
|
||||
'is_unit_paused_set',
|
||||
'get_cluster_hosts',
|
||||
'is_bootstrapped',
|
||||
'is_leader',
|
||||
'render_config_restart_on_changed',
|
||||
'update_shared_db_rels',
|
||||
'install_mysql_ocf',
|
||||
'relation_ids',
|
||||
'is_relation_made',
|
||||
'ha_relation_joined',
|
||||
'update_nrpe_config',
|
||||
'assert_charm_supports_ipv6',
|
||||
]
|
||||
|
||||
def setUp(self):
|
||||
CharmTestCase.setUp(self, hooks, self.TO_PATCH)
|
||||
self.config.side_effect = self.test_config.get
|
||||
|
||||
def test_config_changed_open_port(self):
|
||||
'''Ensure open_port is called with MySQL default port'''
|
||||
self.is_unit_paused_set.return_value = False
|
||||
self.is_bootstrapped.return_value = False
|
||||
self.is_leader.return_value = False
|
||||
self.relation_ids.return_value = []
|
||||
self.is_relation_made.return_value = False
|
||||
hooks.config_changed()
|
||||
self.open_port.assert_called_with(3306)
|
||||
|
|
Loading…
Reference in New Issue