diff --git a/trove_dashboard/api/trove.py b/trove_dashboard/api/trove.py index a11d307..22e5bf1 100644 --- a/trove_dashboard/api/trove.py +++ b/trove_dashboard/api/trove.py @@ -257,6 +257,16 @@ def backup_create(request, name, instance_id, description=None, swift_container=swift_container) +def backup_strategy_list(request, instance_id=None, project_id=None): + return troveclient(request).backup_strategies.list(instance_id=instance_id, + project_id=project_id) + + +def backup_strategy_delete(request, instance_id=None, project_id=None): + return troveclient(request).backup_strategies.delete( + instance_id=instance_id, project_id=project_id) + + def nova_client_client(request): insecure = getattr(settings, 'OPENSTACK_SSL_NO_VERIFY', False) cacert = getattr(settings, 'OPENSTACK_SSL_CACERT', None) diff --git a/trove_dashboard/enabled/_1720_project_databases_panel.py b/trove_dashboard/enabled/_1720_project_databases_panel.py index 0c61385..9dd6268 100644 --- a/trove_dashboard/enabled/_1720_project_databases_panel.py +++ b/trove_dashboard/enabled/_1720_project_databases_panel.py @@ -20,7 +20,7 @@ PANEL_DASHBOARD = 'project' PANEL_GROUP = 'database' # Python panel class of the PANEL to be added. -ADD_PANEL = ('trove_dashboard.content.databases.panel.Databases') +ADD_PANEL = 'trove_dashboard.content.databases.panel.Databases' ADD_INSTALLED_APPS = ["trove_dashboard", ] diff --git a/trove_dashboard/enabled/_1730_project_database_backups_panel.py b/trove_dashboard/enabled/_1730_project_database_backups_panel.py index 2f5de85..ec5e145 100644 --- a/trove_dashboard/enabled/_1730_project_database_backups_panel.py +++ b/trove_dashboard/enabled/_1730_project_database_backups_panel.py @@ -20,7 +20,7 @@ PANEL_DASHBOARD = 'project' PANEL_GROUP = 'database' # Python panel class of the PANEL to be added. -ADD_PANEL = ('trove_dashboard.content.database_backups.panel.Backups') +ADD_PANEL = 'trove_dashboard.content.database_backups.panel.Backups' ADD_EXCEPTIONS = { 'not_found': exceptions.NOT_FOUND, diff --git a/trove_dashboard/enabled/_1731_project_database_backups_panel.py b/trove_dashboard/enabled/_1731_project_database_backups_panel.py index 923700e..1cb9e75 100644 --- a/trove_dashboard/enabled/_1731_project_database_backups_panel.py +++ b/trove_dashboard/enabled/_1731_project_database_backups_panel.py @@ -24,7 +24,7 @@ PANEL_GROUP = 'database' DISABLED = True # Python panel class of the PANEL to be added. -ADD_PANEL = ('trove_dashboard.content.ng_database_backups.panel.NGBackups') +ADD_PANEL = 'trove_dashboard.content.ng_database_backups.panel.NGBackups' ADD_ANGULAR_MODULES = ['horizon.dashboard.project.backups'] ADD_JS_FILES = [ diff --git a/trove_dashboard/enabled/_1732_project_backup_strategies_panel.py b/trove_dashboard/enabled/_1732_project_backup_strategies_panel.py new file mode 100644 index 0000000..59eda27 --- /dev/null +++ b/trove_dashboard/enabled/_1732_project_backup_strategies_panel.py @@ -0,0 +1,29 @@ +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +from trove_dashboard import exceptions + +# The slug of the panel to be added to HORIZON_CONFIG. Required. +PANEL = 'backup_strategies' +# The slug of the dashboard the PANEL associated with. Required. +PANEL_DASHBOARD = 'project' +# The slug of the panel group the PANEL is associated with. +PANEL_GROUP = 'database' + +# Python panel class of the PANEL to be added. +ADD_PANEL = 'trove_dashboard.content.backup_strategies.panel.BackupStrategies' + +ADD_EXCEPTIONS = { + 'not_found': exceptions.NOT_FOUND, + 'recoverable': exceptions.RECOVERABLE, + 'unauthorized': exceptions.UNAUTHORIZED, +} diff --git a/trove_dashboard/enabled/_1740_project_database_clusters_panel.py b/trove_dashboard/enabled/_1740_project_database_clusters_panel.py index a5d3164..cb61e8a 100644 --- a/trove_dashboard/enabled/_1740_project_database_clusters_panel.py +++ b/trove_dashboard/enabled/_1740_project_database_clusters_panel.py @@ -25,7 +25,7 @@ PANEL_GROUP = 'database' DISABLED = True # Python panel class of the PANEL to be added. -ADD_PANEL = ('trove_dashboard.content.database_clusters.panel.Clusters') +ADD_PANEL = 'trove_dashboard.content.database_clusters.panel.Clusters' ADD_EXCEPTIONS = { 'not_found': exceptions.NOT_FOUND,