Provide service type management code structure

Reasons for refactoring:
- current code structure is orientied on mysql management implementation;
- there is no chanse to make new service types management
code fittable in current package/module structure;
- backuping process implementation is mysql/percona-orientied,
it should be renamed and should be configurable due to service type;
- "query" is abstract word for querying into database,
current query.py implementation is SQL orientied - it should be renamed;

Updates:
1.Providing new package hierarchy:
   guestagent/manager/service_type/service.py
   guestagent/manager/service_type/manager.py
   guestagent/manager/service_type/system.py
2.Renaming strategy implementations per each service_type
   guestagent/strategies/backup/mysql_impl.py
3.Externalizing operating system definer form system.py
 which used in pkg.py
4.Renaming query to sql_query.

Implement: blueprint refactor-ga-for-other-engines-support
Change-Id: I5fa5f037056bedf5464e99720cbe03b877c27fba
This commit is contained in:
Denis M
2013-10-15 12:59:29 +03:00
parent 20f9beacdb
commit 290c78cbad
21 changed files with 269 additions and 209 deletions

View File

@@ -46,7 +46,8 @@ nova_proxy_admin_tenant_name = admin
trove_auth_url = http://0.0.0.0:5000/v2.0
swift_url = http://10.0.0.1:8080/v1/AUTH_
# service_registry_ext=mysql:trove.guestagent.manager.mysql.Manager, percona:trove.guestagent.manager.mysql.Manager
# Datastore management implementations. Format datastore:manager.impl
# service_registry_ext = mysql:trove.guestagent.datastore.mysql.manager.Manager, percona:trove.guestagent.datastore.mysql.manager.Manager
# Root configuration
root_grant = ALL
@@ -69,8 +70,8 @@ ignore_dbs = lost+found, mysql, information_schema
# Strategy information for backups
backup_strategy = InnoBackupEx
backup_namespace = trove.guestagent.strategies.backup.impl
restore_namespace = trove.guestagent.strategies.restore.impl
backup_namespace = trove.guestagent.strategies.backup.mysql_impl
restore_namespace = trove.guestagent.strategies.restore.mysql_impl
storage_strategy = SwiftStorage
storage_namespace = trove.guestagent.strategies.storage.swift
backup_swift_container = database_backups