本文整理汇总了Python中trove.guestagent.manager.mysql_service.MySqlApp.secure方法的典型用法代码示例。如果您正苦于以下问题:Python MySqlApp.secure方法的具体用法?Python MySqlApp.secure怎么用?Python MySqlApp.secure使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类trove.guestagent.manager.mysql_service.MySqlApp
的用法示例。
在下文中一共展示了MySqlApp.secure方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: prepare
# 需要导入模块: from trove.guestagent.manager.mysql_service import MySqlApp [as 别名]
# 或者: from trove.guestagent.manager.mysql_service.MySqlApp import secure [as 别名]
def prepare(
self,
context,
databases,
memory_mb,
users,
device_path=None,
mount_point=None,
backup_id=None,
config_location=None,
config_contents=None,
):
"""Makes ready DBAAS on a Guest container."""
MySqlAppStatus.get().begin_mysql_install()
# status end_mysql_install set with secure()
app = MySqlApp(MySqlAppStatus.get())
restart_mysql = False
if device_path:
device = volume.VolumeDevice(device_path)
device.format()
# if a /var/lib/mysql folder exists, back it up.
if os.path.exists(CONF.mount_point):
# stop and do not update database
app.stop_db()
# rsync exiting data
if not backup_id:
restart_mysql = True
device.migrate_data(CONF.mount_point)
# mount the volume
device.mount(mount_point)
LOG.debug(_("Mounted the volume."))
# check mysql was installed and stopped
if restart_mysql:
app.start_mysql()
app.install_if_needed()
if backup_id:
self._perform_restore(backup_id, context, CONF.mount_point, app)
LOG.info(_("Securing mysql now."))
app.secure(config_location, config_contents)
if backup_id and MySqlAdmin().is_root_enabled():
MySqlAdmin().report_root_enabled(context)
else:
app.secure_root()
app.complete_install_or_restart()
if databases:
self.create_database(context, databases)
if users:
self.create_user(context, users)
LOG.info('"prepare" call has finished.')
示例2: test_secure_keep_root
# 需要导入模块: from trove.guestagent.manager.mysql_service import MySqlApp [as 别名]
# 或者: from trove.guestagent.manager.mysql_service.MySqlApp import secure [as 别名]
def test_secure_keep_root(self):
mock_conn = mock_sql_connection()
when(mock_conn).execute(any()).thenReturn(None)
when(utils).execute_with_timeout("sudo", any(str), "stop").thenReturn(None)
# skip writing the file for now
when(os.path).isfile(any()).thenReturn(False)
when(utils).execute_with_timeout("sudo", "chmod", any(), any()).thenReturn(None)
mock_status = mock()
when(mock_status).wait_for_real_status_to_change_to(any(), any(), any()).thenReturn(True)
app = MySqlApp(mock_status)
when(app)._write_mycnf(any(), any()).thenReturn(True)
app.secure("foo")
verify(mock_conn, never).execute(TextClauseMatcher("root"))
示例3: test_secure_keep_root
# 需要导入模块: from trove.guestagent.manager.mysql_service import MySqlApp [as 别名]
# 或者: from trove.guestagent.manager.mysql_service.MySqlApp import secure [as 别名]
def test_secure_keep_root(self):
mock_conn = mock_sql_connection()
when(mock_conn).execute(any()).thenReturn(None)
when(utils).execute_with_timeout("sudo", any(str), "stop").thenReturn(
None)
when(pkg).pkg_install("dbaas-mycnf", any()).thenReturn(None)
# skip writing the file for now
when(os.path).isfile(any()).thenReturn(False)
when(utils).execute_with_timeout(
"sudo", "chmod", any(), any()).thenReturn(None)
MySqlAppMockTest.stub_file("/etc/mysql/my.cnf")
MySqlAppMockTest.stub_file("/etc/dbaas/my.cnf/my.cnf.2048M")
MySqlAppMockTest.stub_file("/tmp/my.cnf.tmp")
mock_status = mock(MySqlAppStatus)
when(mock_status).wait_for_real_status_to_change_to(
any(), any(), any()).thenReturn(True)
app = MySqlApp(mock_status)
app.secure(2048)
verify(mock_conn, never).execute(TextClauseMatcher('root'))