diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst index a73993f..0c41fa2 100644 --- a/CONTRIBUTING.rst +++ b/CONTRIBUTING.rst @@ -14,4 +14,4 @@ Pull requests submitted through GitHub will be ignored. Bugs should be filed on Launchpad, not GitHub: - https://bugs.launchpad.net/smaug-dashboard + https://bugs.launchpad.net/karbor-dashboard diff --git a/HACKING.rst b/HACKING.rst index bfec39d..2ad084f 100644 --- a/HACKING.rst +++ b/HACKING.rst @@ -1,4 +1,4 @@ -smaug-dashboard Style Commandments +karbor-dashboard Style Commandments =============================================== Read the OpenStack Style Commandments http://docs.openstack.org/developer/hacking/ diff --git a/MANIFEST.in b/MANIFEST.in index 3ee0288..68377e5 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -3,7 +3,7 @@ include README.rst include ChangeLog include LICENSE -recursive-include smaug_dashboard/templates * +recursive-include karbor_dashboard/templates * exclude .gitignore exclude .gitreview diff --git a/README.rst b/README.rst index b49d4cb..30e1cad 100644 --- a/README.rst +++ b/README.rst @@ -1,20 +1,20 @@ =============================== -smaug-dashboard +karbor-dashboard =============================== -Smaug Dashboard +Karbor Dashboard * Free software: Apache license -* Source: http://git.openstack.org/cgit/openstack/smaug-dashboard -* Bugs: http://bugs.launchpad.net/smaug-dashboard +* Source: http://git.openstack.org/cgit/openstack/karbor-dashboard +* Bugs: http://bugs.launchpad.net/karbor-dashboard Installation instructions ------------------------- -Begin by cloning the Horizon and Smaug Dashboard repositories:: +Begin by cloning the Horizon and Karbor Dashboard repositories:: git clone https://git.openstack.org/openstack/horizon - git clone https://git.openstack.org/openstack/smaug-dashboard + git clone https://git.openstack.org/openstack/karbor-dashboard Create a virtual environment and install Horizon dependencies:: @@ -35,20 +35,20 @@ editor. You will want to customize several settings: OpenStack server to change them.) -Install Smaug Dashboard with all dependencies in your virtual environment:: +Install Karbor Dashboard with all dependencies in your virtual environment:: - tools/with_venv.sh pip install -e ../smaug-dashboard/ + tools/with_venv.sh pip install -e ../karbor-dashboard/ And enable it in Horizon:: - cp ../smaug-dashboard/smaug_dashboard/enabled/_6000_data_protection.py openstack_dashboard/local/enabled - cp ../smaug-dashboard/smaug_dashboard/enabled/_6010_data_protection_protection_plans_panel.py openstack_dashboard/local/enabled - cp ../smaug-dashboard/smaug_dashboard/enabled/_6020_data_protection_protection_providers_panel.py openstack_dashboard/local/enabled - cp ../smaug-dashboard/smaug_dashboard/enabled/_6030_data_protection_checkpoints_panel.py openstack_dashboard/local/enabled - cp ../smaug-dashboard/smaug_dashboard/enabled/_6040_data_protection_operation_logs_panel.py openstack_dashboard/local/enabled - cp ../smaug-dashboard/smaug_dashboard/enabled/_6050_data_protection_triggers_panel.py openstack_dashboard/local/enabled + cp ../karbor-dashboard/karbor_dashboard/enabled/_6000_data_protection.py openstack_dashboard/local/enabled + cp ../karbor-dashboard/karbor_dashboard/enabled/_6010_data_protection_protection_plans_panel.py openstack_dashboard/local/enabled + cp ../karbor-dashboard/karbor_dashboard/enabled/_6020_data_protection_protection_providers_panel.py openstack_dashboard/local/enabled + cp ../karbor-dashboard/karbor_dashboard/enabled/_6030_data_protection_checkpoints_panel.py openstack_dashboard/local/enabled + cp ../karbor-dashboard/karbor_dashboard/enabled/_6040_data_protection_operation_logs_panel.py openstack_dashboard/local/enabled + cp ../karbor-dashboard/karbor_dashboard/enabled/_6050_data_protection_triggers_panel.py openstack_dashboard/local/enabled -To run horizon with the newly enabled Smaug Dashboard plugin run:: +To run horizon with the newly enabled Karbor Dashboard plugin run:: ./run_tests.sh --runserver 0.0.0.0:8080 diff --git a/devstack/plugin.sh b/devstack/plugin.sh index 51b05e2..541a699 100644 --- a/devstack/plugin.sh +++ b/devstack/plugin.sh @@ -1,23 +1,23 @@ #!/usr/bin/env bash -# plugin.sh - DevStack plugin.sh dispatch script smaug-dashboard +# plugin.sh - DevStack plugin.sh dispatch script karbor-dashboard -SMAUG_DASH_DIR=$(cd $(dirname $BASH_SOURCE)/.. && pwd) +KARBOR_DASH_DIR=$(cd $(dirname $BASH_SOURCE)/.. && pwd) -function install_smaug_dashboard { - setup_develop ${SMAUG_DASH_DIR} +function install_karbor_dashboard { + setup_develop ${KARBOR_DASH_DIR} } -function configure_smaug_dashboard { - cp -a ${SMAUG_DASH_DIR}/smaug_dashboard/enabled/* ${DEST}/horizon/openstack_dashboard/local/enabled/ +function configure_karbor_dashboard { + cp -a ${KARBOR_DASH_DIR}/karbor_dashboard/enabled/* ${DEST}/horizon/openstack_dashboard/local/enabled/ # NOTE: If locale directory does not exist, compilemessages will fail, # so check for an existence of locale directory is required. - if [ -d ${SMAUG_DASH_DIR}/smaug_dashboard/locale ]; then - (cd ${SMAUG_DASH_DIR}/smaug_dashboard; DJANGO_SETTINGS_MODULE=openstack_dashboard.settings ../manage.py compilemessages) + if [ -d ${KARBOR_DASH_DIR}/karbor_dashboard/locale ]; then + (cd ${KARBOR_DASH_DIR}/karbor_dashboard; DJANGO_SETTINGS_MODULE=openstack_dashboard.settings ../manage.py compilemessages) fi } # check for service enabled -if is_service_enabled smaug-dashboard; then +if is_service_enabled karbor-dashboard; then if [[ "$1" == "stack" && "$2" == "pre-install" ]]; then # Set up system services @@ -26,13 +26,13 @@ if is_service_enabled smaug-dashboard; then elif [[ "$1" == "stack" && "$2" == "install" ]]; then # Perform installation of service source - echo_summary "Installing Smaug Dashboard" - install_smaug_dashboard + echo_summary "Installing Karbor Dashboard" + install_karbor_dashboard elif [[ "$1" == "stack" && "$2" == "post-config" ]]; then # Configure after the other layer 1 and 2 services have been configured - echo_summary "Configuring Smaug Dashboard" - configure_smaug_dashboard + echo_summary "Configuring Karbor Dashboard" + configure_karbor_dashboard elif [[ "$1" == "stack" && "$2" == "extra" ]]; then # Initialize and start the app-catalog-ui service diff --git a/doc/source/conf.py b/doc/source/conf.py index ad2d911..7294f05 100644 --- a/doc/source/conf.py +++ b/doc/source/conf.py @@ -36,7 +36,7 @@ source_suffix = '.rst' master_doc = 'index' # General information about the project. -project = u'smaug-dashboard' +project = u'karbor-dashboard' copyright = u'2013, OpenStack Foundation' # If true, '()' will be appended to :func: etc. cross-reference text. diff --git a/smaug_dashboard/__init__.py b/karbor_dashboard/__init__.py similarity index 93% rename from smaug_dashboard/__init__.py rename to karbor_dashboard/__init__.py index 2ccac4f..424e6a9 100644 --- a/smaug_dashboard/__init__.py +++ b/karbor_dashboard/__init__.py @@ -16,4 +16,4 @@ import pbr.version __version__ = pbr.version.VersionInfo( - 'smaug-dashboard').version_string() + 'karbor-dashboard').version_string() diff --git a/smaug_dashboard/api/__init__.py b/karbor_dashboard/api/__init__.py similarity index 100% rename from smaug_dashboard/api/__init__.py rename to karbor_dashboard/api/__init__.py diff --git a/smaug_dashboard/api/smaug.py b/karbor_dashboard/api/karbor.py similarity index 63% rename from smaug_dashboard/api/smaug.py rename to karbor_dashboard/api/karbor.py index 37aa86b..5a399e8 100644 --- a/smaug_dashboard/api/smaug.py +++ b/karbor_dashboard/api/karbor.py @@ -19,36 +19,36 @@ from django.conf import settings from horizon import exceptions from horizon.utils import functions as utils from horizon.utils.memoized import memoized +from karborclient.v1 import client as karbor_client from openstack_dashboard.api import base -from smaugclient.v1 import client as smaug_client LOG = logging.getLogger(__name__) -def get_smaug_endpoint(request): +def get_karbor_endpoint(request): endpoint = "" try: endpoint = base.url_for(request, "data-protect") except exceptions.ServiceCatalogException: endpoint = 'http://localhost:8799' - LOG.warning('Smaug API location could not be found in Service ' + LOG.warning('Karbor API location could not be found in Service ' 'Catalog, using default: {0}'.format(endpoint)) return endpoint @memoized -def smaugclient(request): - endpoint = get_smaug_endpoint(request) - LOG.debug('smaugclient connection created using the token "%s" and url' +def karborclient(request): + endpoint = get_karbor_endpoint(request) + LOG.debug('karborclient connection created using the token "%s" and url' '"%s"' % (request.user.token.id, endpoint)) - c = smaug_client.Client(endpoint=endpoint, - auth_url=getattr(settings, - 'OPENSTACK_KEYSTONE_URL'), - token=request.user.token.id, - username=request.user.username, - project_id=request.user.tenant_id, - auth_plugin='token', - ) + c = karbor_client.Client(endpoint=endpoint, + auth_url=getattr(settings, + 'OPENSTACK_KEYSTONE_URL'), + token=request.user.token.id, + username=request.user.username, + project_id=request.user.tenant_id, + auth_plugin='token', + ) return c @@ -77,27 +77,27 @@ def update_pagination(entities, page_size, marker, sort_dir, sort_key, def plan_create(request, name, provider_id, resources, parameters): - return smaugclient(request).plans.create(name, provider_id, resources, - parameters) + return karborclient(request).plans.create(name, provider_id, resources, + parameters) def plan_delete(request, plan_id): - return smaugclient(request).plans.delete(plan_id) + return karborclient(request).plans.delete(plan_id) def plan_update(request, plan_id, data): - return smaugclient(request).plans.update(plan_id, data) + return karborclient(request).plans.update(plan_id, data) def plan_list(request, detailed=False, search_opts=None, marker=None, limit=None, sort_key=None, sort_dir=None, sort=None): - return smaugclient(request).plans.list(detailed=detailed, - search_opts=search_opts, - marker=marker, - limit=limit, - sort_key=sort_key, - sort_dir=sort_dir, - sort=sort) + return karborclient(request).plans.list(detailed=detailed, + search_opts=search_opts, + marker=marker, + limit=limit, + sort_key=sort_key, + sort_dir=sort_dir, + sort=sort) def plan_list_paged(request, detailed=False, search_opts=None, marker=None, @@ -110,33 +110,33 @@ def plan_list_paged(request, detailed=False, search_opts=None, marker=None, if reversed_order: sort_dir = 'desc' if sort_dir == 'asc' else 'asc' page_size = utils.get_page_size(request) - plans = smaugclient(request).plans.list(detailed=detailed, - search_opts=search_opts, - marker=marker, - limit=page_size + 1, - sort_key=sort_key, - sort_dir=sort_dir, - sort=sort) + plans = karborclient(request).plans.list(detailed=detailed, + search_opts=search_opts, + marker=marker, + limit=page_size + 1, + sort_key=sort_key, + sort_dir=sort_dir, + sort=sort) plans, has_more_data, has_prev_data = update_pagination( plans, page_size, marker, sort_dir, sort_key, reversed_order) else: - plans = smaugclient(request).plans.list(detailed=detailed, - search_opts=search_opts, - marker=marker, - limit=limit, - sort_key=sort_key, - sort_dir=sort_dir, - sort=sort) + plans = karborclient(request).plans.list(detailed=detailed, + search_opts=search_opts, + marker=marker, + limit=limit, + sort_key=sort_key, + sort_dir=sort_dir, + sort=sort) return (plans, has_more_data, has_prev_data) def plan_get(request, plan_id): - return smaugclient(request).plans.get(plan_id) + return karborclient(request).plans.get(plan_id) def scheduled_operation_create(request, name, operation_type, trigger_id, operation_definition): - return smaugclient(request).scheduled_operations.create( + return karborclient(request).scheduled_operations.create( name, operation_type, trigger_id, @@ -144,14 +144,14 @@ def scheduled_operation_create(request, name, operation_type, trigger_id, def scheduled_operation_delete(request, scheduled_operation_id): - return smaugclient(request).scheduled_operations.delete( + return karborclient(request).scheduled_operations.delete( scheduled_operation_id) def scheduled_operation_list(request, detailed=False, search_opts=None, marker=None, limit=None, sort_key=None, sort_dir=None, sort=None): - return smaugclient(request).scheduled_operations.list( + return karborclient(request).scheduled_operations.list( detailed=detailed, search_opts=search_opts, marker=marker, @@ -172,7 +172,7 @@ def scheduled_operation_list_paged(request, detailed=False, search_opts=None, if reversed_order: sort_dir = 'desc' if sort_dir == 'asc' else 'asc' page_size = utils.get_page_size(request) - scheduled_operations = smaugclient(request).scheduled_operations.list( + scheduled_operations = karborclient(request).scheduled_operations.list( detailed=detailed, search_opts=search_opts, marker=marker, @@ -188,7 +188,7 @@ def scheduled_operation_list_paged(request, detailed=False, search_opts=None, sort_key, reversed_order) else: - scheduled_operations = smaugclient(request).scheduled_operations.list( + scheduled_operations = karborclient(request).scheduled_operations.list( detailed=detailed, search_opts=search_opts, marker=marker, @@ -201,31 +201,31 @@ def scheduled_operation_list_paged(request, detailed=False, search_opts=None, def scheduled_operation_get(request, scheduled_operation_id): - return smaugclient(request).scheduled_operations.get( + return karborclient(request).scheduled_operations.get( scheduled_operation_id) def restore_create(request, provider_id, checkpoint_id, restore_target, parameters): - return smaugclient(request).restores.create(provider_id, - checkpoint_id, - restore_target, - parameters) + return karborclient(request).restores.create(provider_id, + checkpoint_id, + restore_target, + parameters) def restore_delete(request, restore_id): - return smaugclient(request).restores.delete(restore_id) + return karborclient(request).restores.delete(restore_id) def restore_list(request, detailed=False, search_opts=None, marker=None, limit=None, sort_key=None, sort_dir=None, sort=None): - return smaugclient(request).restores.list(detailed=detailed, - search_opts=search_opts, - marker=marker, - limit=limit, - sort_key=sort_key, - sort_dir=sort_dir, - sort=sort) + return karborclient(request).restores.list(detailed=detailed, + search_opts=search_opts, + marker=marker, + limit=limit, + sort_key=sort_key, + sort_dir=sort_dir, + sort=sort) def restore_list_paged(request, detailed=False, search_opts=None, marker=None, @@ -238,43 +238,43 @@ def restore_list_paged(request, detailed=False, search_opts=None, marker=None, if reversed_order: sort_dir = 'desc' if sort_dir == 'asc' else 'asc' page_size = utils.get_page_size(request) - restores = smaugclient(request).restores.list(detailed=detailed, - search_opts=search_opts, - marker=marker, - limit=page_size + 1, - sort_key=sort_key, - sort_dir=sort_dir, - sort=sort) + restores = karborclient(request).restores.list(detailed=detailed, + search_opts=search_opts, + marker=marker, + limit=page_size + 1, + sort_key=sort_key, + sort_dir=sort_dir, + sort=sort) restores, has_more_data, has_prev_data = update_pagination( restores, page_size, marker, sort_dir, sort_key, reversed_order) else: - restores = smaugclient(request).restores.list(detailed=detailed, - search_opts=search_opts, - marker=marker, - limit=limit, - sort_key=sort_key, - sort_dir=sort_dir, - sort=sort) + restores = karborclient(request).restores.list(detailed=detailed, + search_opts=search_opts, + marker=marker, + limit=limit, + sort_key=sort_key, + sort_dir=sort_dir, + sort=sort) return (restores, has_more_data, has_prev_data) def restore_get(request, restore_id): - return smaugclient(request).restores.get(restore_id) + return karborclient(request).restores.get(restore_id) def protectable_list(request): - return smaugclient(request).protectables.list() + return karborclient(request).protectables.list() def protectable_get(request, protectable_type): - return smaugclient(request).protectables.get(protectable_type) + return karborclient(request).protectables.get(protectable_type) def protectable_list_instances(request, protectable_type, search_opts=None, marker=None, limit=None, sort_key=None, sort_dir=None, sort=None): - return smaugclient(request).protectables.list_instances( + return karborclient(request).protectables.list_instances( protectable_type=protectable_type, search_opts=search_opts, marker=marker, @@ -295,7 +295,7 @@ def protectable_list_instances_paged(request, protectable_type, if reversed_order: sort_dir = 'desc' if sort_dir == 'asc' else 'asc' page_size = utils.get_page_size(request) - instances = smaugclient(request).protectables.list_instances( + instances = karborclient(request).protectables.list_instances( protectable_type, search_opts=search_opts, marker=marker, @@ -306,7 +306,7 @@ def protectable_list_instances_paged(request, protectable_type, instances, has_more_data, has_prev_data = update_pagination( instances, page_size, marker, sort_dir, sort_key, reversed_order) else: - instances = smaugclient(request).protectables.list_instances( + instances = karborclient(request).protectables.list_instances( protectable_type, search_opts=search_opts, marker=marker, @@ -319,18 +319,18 @@ def protectable_list_instances_paged(request, protectable_type, def protectable_get_instance(request, type, id): - return smaugclient(request).protectables.get_instance(type, id) + return karborclient(request).protectables.get_instance(type, id) def provider_list(request, detailed=False, search_opts=None, marker=None, limit=None, sort_key=None, sort_dir=None, sort=None): - return smaugclient(request).providers.list(detailed=detailed, - search_opts=search_opts, - marker=marker, - limit=limit, - sort_key=sort_key, - sort_dir=sort_dir, - sort=sort) + return karborclient(request).providers.list(detailed=detailed, + search_opts=search_opts, + marker=marker, + limit=limit, + sort_key=sort_key, + sort_dir=sort_dir, + sort=sort) def provider_list_paged(request, detailed=False, search_opts=None, marker=None, @@ -343,7 +343,7 @@ def provider_list_paged(request, detailed=False, search_opts=None, marker=None, if reversed_order: sort_dir = 'desc' if sort_dir == 'asc' else 'asc' page_size = utils.get_page_size(request) - providers = smaugclient(request).providers.list( + providers = karborclient(request).providers.list( detailed=detailed, search_opts=search_opts, marker=marker, @@ -354,7 +354,7 @@ def provider_list_paged(request, detailed=False, search_opts=None, marker=None, providers, has_more_data, has_prev_data = update_pagination( providers, page_size, marker, sort_dir, sort_key, reversed_order) else: - providers = smaugclient(request).providers.list( + providers = karborclient(request).providers.list( detailed=detailed, search_opts=search_opts, marker=marker, @@ -367,26 +367,26 @@ def provider_list_paged(request, detailed=False, search_opts=None, marker=None, def provider_get(request, provider_id): - return smaugclient(request).providers.get(provider_id) + return karborclient(request).providers.get(provider_id) def checkpoint_create(request, provider_id, plan_id): - return smaugclient(request).checkpoints.create(provider_id, plan_id) + return karborclient(request).checkpoints.create(provider_id, plan_id) def checkpoint_delete(request, provider_id, checkpoint_id): - return smaugclient(request).checkpoints.delete(provider_id, checkpoint_id) + return karborclient(request).checkpoints.delete(provider_id, checkpoint_id) def checkpoint_list(request, provider_id=None, search_opts=None, marker=None, limit=None, sort_key=None, sort_dir=None, sort=None): - return smaugclient(request).checkpoints.list(provider_id=provider_id, - search_opts=search_opts, - marker=marker, - limit=limit, - sort_key=sort_key, - sort_dir=sort_dir, - sort=sort) + return karborclient(request).checkpoints.list(provider_id=provider_id, + search_opts=search_opts, + marker=marker, + limit=limit, + sort_key=sort_key, + sort_dir=sort_dir, + sort=sort) def checkpoint_list_paged(request, provider_id=None, search_opts=None, @@ -400,7 +400,7 @@ def checkpoint_list_paged(request, provider_id=None, search_opts=None, if reversed_order: sort_dir = 'desc' if sort_dir == 'asc' else 'asc' page_size = utils.get_page_size(request) - checkpoints = smaugclient(request).checkpoints.list( + checkpoints = karborclient(request).checkpoints.list( provider_id=provider_id, search_opts=search_opts, marker=marker, @@ -411,7 +411,7 @@ def checkpoint_list_paged(request, provider_id=None, search_opts=None, checkpoints, has_more_data, has_prev_data = update_pagination( checkpoints, page_size, marker, sort_dir, sort_key, reversed_order) else: - checkpoints = smaugclient(request).checkpoints.list( + checkpoints = karborclient(request).checkpoints.list( provider_id=provider_id, search_opts=search_opts, marker=marker, @@ -424,26 +424,26 @@ def checkpoint_list_paged(request, provider_id=None, search_opts=None, def checkpoint_get(request, provider_id, checkpoint_id): - return smaugclient(request).checkpoints.get(provider_id, checkpoint_id) + return karborclient(request).checkpoints.get(provider_id, checkpoint_id) def trigger_create(request, name, type, properties): - return smaugclient(request).triggers.create(name, type, properties) + return karborclient(request).triggers.create(name, type, properties) def trigger_delete(request, trigger_id): - return smaugclient(request).triggers.delete(trigger_id) + return karborclient(request).triggers.delete(trigger_id) def trigger_list(request, detailed=False, search_opts=None, marker=None, limit=None, sort_key=None, sort_dir=None, sort=None): - return smaugclient(request).triggers.list(detailed=detailed, - search_opts=search_opts, - marker=marker, - limit=limit, - sort_key=sort_key, - sort_dir=sort_dir, - sort=sort) + return karborclient(request).triggers.list(detailed=detailed, + search_opts=search_opts, + marker=marker, + limit=limit, + sort_key=sort_key, + sort_dir=sort_dir, + sort=sort) def trigger_list_paged(request, detailed=False, search_opts=None, marker=None, @@ -456,26 +456,26 @@ def trigger_list_paged(request, detailed=False, search_opts=None, marker=None, if reversed_order: sort_dir = 'desc' if sort_dir == 'asc' else 'asc' page_size = utils.get_page_size(request) - triggers = smaugclient(request).triggers.list(detailed=detailed, - search_opts=search_opts, - marker=marker, - limit=page_size + 1, - sort_key=sort_key, - sort_dir=sort_dir, - sort=sort) + triggers = karborclient(request).triggers.list(detailed=detailed, + search_opts=search_opts, + marker=marker, + limit=page_size + 1, + sort_key=sort_key, + sort_dir=sort_dir, + sort=sort) triggers, has_more_data, has_prev_data = update_pagination( triggers, page_size, marker, sort_dir, sort_key, reversed_order) else: - triggers = smaugclient(request).triggers.list(detailed=detailed, - search_opts=search_opts, - marker=marker, - limit=limit, - sort_key=sort_key, - sort_dir=sort_dir, - sort=sort) + triggers = karborclient(request).triggers.list(detailed=detailed, + search_opts=search_opts, + marker=marker, + limit=limit, + sort_key=sort_key, + sort_dir=sort_dir, + sort=sort) return (triggers, has_more_data, has_prev_data) def trigger_get(request, trigger_id): - return smaugclient(request).triggers.get(trigger_id) + return karborclient(request).triggers.get(trigger_id) diff --git a/smaug_dashboard/api/rest/__init__.py b/karbor_dashboard/api/rest/__init__.py similarity index 100% rename from smaug_dashboard/api/rest/__init__.py rename to karbor_dashboard/api/rest/__init__.py diff --git a/smaug_dashboard/checkpoints/__init__.py b/karbor_dashboard/checkpoints/__init__.py similarity index 100% rename from smaug_dashboard/checkpoints/__init__.py rename to karbor_dashboard/checkpoints/__init__.py diff --git a/smaug_dashboard/checkpoints/forms.py b/karbor_dashboard/checkpoints/forms.py similarity index 90% rename from smaug_dashboard/checkpoints/forms.py rename to karbor_dashboard/checkpoints/forms.py index 25c6a69..329195e 100644 --- a/smaug_dashboard/checkpoints/forms.py +++ b/karbor_dashboard/checkpoints/forms.py @@ -20,7 +20,7 @@ from horizon import forms as horizon_forms from horizon import messages import json -from smaug_dashboard.api import smaug as smaugclient +from karbor_dashboard.api import karbor as karborclient class RestoreCheckpointForm(horizon_forms.SelfHandlingForm): @@ -35,19 +35,19 @@ class RestoreCheckpointForm(horizon_forms.SelfHandlingForm): widget=forms.HiddenInput(attrs={"class": "provider"})) parameters = forms.CharField( widget=forms.HiddenInput(attrs={"class": "parameters"})) - failure_url = 'horizon:smaug:checkpoints:index' + failure_url = 'horizon:karbor:checkpoints:index' def __init__(self, request, *args, **kwargs): super(RestoreCheckpointForm, self).\ __init__(request, *args, **kwargs) provider_id = str(kwargs["initial"]["provider_id"]) - provider = smaugclient.provider_get(request, provider_id) + provider = karborclient.provider_get(request, provider_id) self.fields['provider'].initial = json.dumps(provider._info) def handle(self, request, data): try: - new_restore = smaugclient.restore_create( + new_restore = karborclient.restore_create( request, provider_id=data["provider_id"], checkpoint_id=data["checkpoint_id"], diff --git a/smaug_dashboard/checkpoints/panel.py b/karbor_dashboard/checkpoints/panel.py similarity index 95% rename from smaug_dashboard/checkpoints/panel.py rename to karbor_dashboard/checkpoints/panel.py index b344a87..096f74b 100644 --- a/smaug_dashboard/checkpoints/panel.py +++ b/karbor_dashboard/checkpoints/panel.py @@ -15,7 +15,7 @@ from django.utils.translation import ugettext_lazy as _ import horizon -from smaug_dashboard import dashboard +from karbor_dashboard import dashboard class Checkpoints(horizon.Panel): diff --git a/smaug_dashboard/checkpoints/tables.py b/karbor_dashboard/checkpoints/tables.py similarity index 89% rename from smaug_dashboard/checkpoints/tables.py rename to karbor_dashboard/checkpoints/tables.py index 40bce82..6c2ba8a 100644 --- a/smaug_dashboard/checkpoints/tables.py +++ b/karbor_dashboard/checkpoints/tables.py @@ -18,13 +18,13 @@ from django.utils.translation import ungettext_lazy from horizon import tables -from smaug_dashboard.api import smaug as smaugclient +from karbor_dashboard.api import karbor as karborclient class RestoreCheckpointLink(tables.LinkAction): name = "restore" verbose_name = _("Restore Checkpoint") - url = "horizon:smaug:checkpoints:restore" + url = "horizon:karbor:checkpoints:restore" classes = ("ajax-modal",) icon = "plus" @@ -55,14 +55,14 @@ class DeleteCheckpointsAction(tables.DeleteAction): def delete(self, request, obj_id): datum = self.table.get_object_by_id(obj_id) provider_id = datum.provider_id - smaugclient.checkpoint_delete(request, - provider_id=provider_id, - checkpoint_id=obj_id) + karborclient.checkpoint_delete(request, + provider_id=provider_id, + checkpoint_id=obj_id) def get_provider_link(checkpoint): """url Two args""" - return reverse("horizon:smaug:checkpoints:detail", + return reverse("horizon:karbor:checkpoints:detail", args=(checkpoint.provider_id, checkpoint.id)) diff --git a/smaug_dashboard/checkpoints/urls.py b/karbor_dashboard/checkpoints/urls.py similarity index 95% rename from smaug_dashboard/checkpoints/urls.py rename to karbor_dashboard/checkpoints/urls.py index 54a2166..c4ccd5f 100644 --- a/smaug_dashboard/checkpoints/urls.py +++ b/karbor_dashboard/checkpoints/urls.py @@ -13,7 +13,7 @@ # under the License. from django.conf.urls import url -from smaug_dashboard.checkpoints import views +from karbor_dashboard.checkpoints import views urlpatterns = [ diff --git a/smaug_dashboard/checkpoints/utils.py b/karbor_dashboard/checkpoints/utils.py similarity index 100% rename from smaug_dashboard/checkpoints/utils.py rename to karbor_dashboard/checkpoints/utils.py diff --git a/smaug_dashboard/checkpoints/views.py b/karbor_dashboard/checkpoints/views.py similarity index 87% rename from smaug_dashboard/checkpoints/views.py rename to karbor_dashboard/checkpoints/views.py index 2144d15..6a6b5ad 100644 --- a/smaug_dashboard/checkpoints/views.py +++ b/karbor_dashboard/checkpoints/views.py @@ -26,11 +26,11 @@ from horizon import forms as horizon_forms from horizon import tables as horizon_tables from horizon.utils import memoized -from smaug_dashboard.api import smaug as smaugclient -from smaug_dashboard.checkpoints import forms -from smaug_dashboard.checkpoints import tables -from smaug_dashboard.checkpoints import utils -from smaugclient.v1 import protectables +from karbor_dashboard.api import karbor as karborclient +from karbor_dashboard.checkpoints import forms +from karbor_dashboard.checkpoints import tables +from karbor_dashboard.checkpoints import utils +from karborclient.v1 import protectables class IndexView(horizon_tables.DataTableView): @@ -40,11 +40,11 @@ class IndexView(horizon_tables.DataTableView): @memoized.memoized_method def get_provider_list(self): - return smaugclient.provider_list(self.request) + return karborclient.provider_list(self.request) @memoized.memoized_method def get_plan_list(self): - return smaugclient.plan_list(self.request) + return karborclient.plan_list(self.request) @memoized.memoized_method def get_filter_list(self): @@ -81,7 +81,7 @@ class IndexView(horizon_tables.DataTableView): context["plan_list"] = self.get_plan_list() context["date_list"] = utils.DATE_CHOICES - context["url"] = reverse("horizon:smaug:checkpoints:index") + context["url"] = reverse("horizon:karbor:checkpoints:index") context = dict(context, **self.get_filter_list()) return context @@ -151,7 +151,7 @@ class IndexView(horizon_tables.DataTableView): raise Exception() checkpoints, self._more, self._prev = \ - smaugclient.checkpoint_list_paged( + karborclient.checkpoint_list_paged( self.request, provider_id=provider_id, search_opts=search_opts, @@ -161,7 +161,7 @@ class IndexView(horizon_tables.DataTableView): sort_key='name', reversed_order=reversed_order) for checkpoint in checkpoints: - provider = smaugclient.provider_get( + provider = karborclient.provider_get( self.request, checkpoint.protection_plan['provider_id'] ) @@ -181,8 +181,8 @@ class CheckpointsRestoreView(horizon_forms.ModalFormView): form_id = "restore_checkpoint_form" form_class = forms.RestoreCheckpointForm submit_label = _("Restore Checkpoint") - submit_url = 'horizon:smaug:checkpoints:restore' - success_url = reverse_lazy('horizon:smaug:checkpoints:index') + submit_url = 'horizon:karbor:checkpoints:restore' + success_url = reverse_lazy('horizon:karbor:checkpoints:index') page_title = _("Restore Checkpoint") def get_initial(self): @@ -207,9 +207,9 @@ class CheckpointsRestoreView(horizon_forms.ModalFormView): try: provider_id = self.kwargs['provider_id'] checkpoint_id = self.kwargs['checkpoint_id'] - checkpoint = smaugclient.checkpoint_get(self.request, - provider_id, - checkpoint_id) + checkpoint = karborclient.checkpoint_get(self.request, + provider_id, + checkpoint_id) graphnodes = utils.deserialize_resource_graph( checkpoint.resource_graph) self.get_results(graphnodes, None, results) @@ -217,7 +217,7 @@ class CheckpointsRestoreView(horizon_forms.ModalFormView): exceptions.handle( self.request, _('Unable to retrieve checkpoint details.'), - redirect=reverse("horizon:smaug:checkpoints:index")) + redirect=reverse("horizon:karbor:checkpoints:index")) return results def get_results(self, graphnodes, showparentid, results): @@ -249,9 +249,9 @@ class DetailView(horizon_tables.DataTableView): try: provider_id = self.kwargs['provider_id'] checkpoint_id = self.kwargs['checkpoint_id'] - checkpoint = smaugclient.checkpoint_get(self.request, - provider_id, - checkpoint_id) + checkpoint = karborclient.checkpoint_get(self.request, + provider_id, + checkpoint_id) except Exception: checkpoint = [] msg = _('checkpoint list can not be retrieved.') @@ -263,10 +263,10 @@ class DetailView(horizon_tables.DataTableView): checkpoint = self.get_checkpoint_data() context["checkpoint"] = checkpoint provider_id = self.kwargs['provider_id'] - provider = smaugclient.provider_get(self.request, provider_id) + provider = karborclient.provider_get(self.request, provider_id) context["provider_name"] = provider.name context["resources"] = self.get_resources() - context["url"] = reverse("horizon:smaug:protectionplans:index") + context["url"] = reverse("horizon:karbor:protectionplans:index") return context @memoized.memoized_method @@ -275,9 +275,9 @@ class DetailView(horizon_tables.DataTableView): try: provider_id = self.kwargs['provider_id'] checkpoint_id = self.kwargs['checkpoint_id'] - checkpoint = smaugclient.checkpoint_get(self.request, - provider_id, - checkpoint_id) + checkpoint = karborclient.checkpoint_get(self.request, + provider_id, + checkpoint_id) graphnodes = utils.deserialize_resource_graph( checkpoint.resource_graph) self.get_results(graphnodes, None, results) @@ -285,7 +285,7 @@ class DetailView(horizon_tables.DataTableView): exceptions.handle( self.request, _('Unable to retrieve checkpoint details.'), - redirect=reverse("horizon:smaug:checkpoints:index")) + redirect=reverse("horizon:karbor:checkpoints:index")) return results def get_results(self, graphnodes, showparentid, results): diff --git a/smaug_dashboard/dashboard.py b/karbor_dashboard/dashboard.py similarity index 93% rename from smaug_dashboard/dashboard.py rename to karbor_dashboard/dashboard.py index 75ff5c8..ccb5626 100644 --- a/smaug_dashboard/dashboard.py +++ b/karbor_dashboard/dashboard.py @@ -15,12 +15,12 @@ import horizon # Load the api rest services into Horizon -import smaug_dashboard.api.rest # noqa +import karbor_dashboard.api.rest # noqa class DataProtection(horizon.Dashboard): name = "Data Protection" - slug = "smaug" + slug = "karbor" default_panel = "protectionplans" diff --git a/smaug_dashboard/enabled/_6000_data_protection.py b/karbor_dashboard/enabled/_6000_data_protection.py similarity index 95% rename from smaug_dashboard/enabled/_6000_data_protection.py rename to karbor_dashboard/enabled/_6000_data_protection.py index 49b79ea..d54ac78 100644 --- a/smaug_dashboard/enabled/_6000_data_protection.py +++ b/karbor_dashboard/enabled/_6000_data_protection.py @@ -14,13 +14,13 @@ # The name of the dashboard to be added to HORIZON['dashboards']. Required. -DASHBOARD = 'smaug' +DASHBOARD = 'karbor' # If set to True, this dashboard will not be added to the settings. DISABLED = False ADD_INSTALLED_APPS = [ - 'smaug_dashboard', + 'karbor_dashboard', ] # Automatically discover static resources in installed apps diff --git a/smaug_dashboard/enabled/_6010_data_protection_protection_plans_panel.py b/karbor_dashboard/enabled/_6010_data_protection_protection_plans_panel.py similarity index 88% rename from smaug_dashboard/enabled/_6010_data_protection_protection_plans_panel.py rename to karbor_dashboard/enabled/_6010_data_protection_protection_plans_panel.py index badaa7c..12d5b07 100644 --- a/smaug_dashboard/enabled/_6010_data_protection_protection_plans_panel.py +++ b/karbor_dashboard/enabled/_6010_data_protection_protection_plans_panel.py @@ -15,7 +15,7 @@ PANEL = 'protectionplans' PANEL_GROUP = 'default' -PANEL_DASHBOARD = 'smaug' +PANEL_DASHBOARD = 'karbor' ADD_PANEL = \ - 'smaug_dashboard.protectionplans.panel.ProtectionPlans' + 'karbor_dashboard.protectionplans.panel.ProtectionPlans' diff --git a/smaug_dashboard/enabled/_6020_data_protection_protection_providers_panel.py b/karbor_dashboard/enabled/_6020_data_protection_protection_providers_panel.py similarity index 87% rename from smaug_dashboard/enabled/_6020_data_protection_protection_providers_panel.py rename to karbor_dashboard/enabled/_6020_data_protection_protection_providers_panel.py index 7828859..ad2ccf3 100644 --- a/smaug_dashboard/enabled/_6020_data_protection_protection_providers_panel.py +++ b/karbor_dashboard/enabled/_6020_data_protection_protection_providers_panel.py @@ -15,7 +15,7 @@ PANEL = 'protectionproviders' PANEL_GROUP = 'default' -PANEL_DASHBOARD = 'smaug' +PANEL_DASHBOARD = 'karbor' ADD_PANEL = \ - 'smaug_dashboard.protectionproviders.panel.ProtectionProviders' + 'karbor_dashboard.protectionproviders.panel.ProtectionProviders' diff --git a/smaug_dashboard/enabled/_6030_data_protection_checkpoints_panel.py b/karbor_dashboard/enabled/_6030_data_protection_checkpoints_panel.py similarity index 89% rename from smaug_dashboard/enabled/_6030_data_protection_checkpoints_panel.py rename to karbor_dashboard/enabled/_6030_data_protection_checkpoints_panel.py index ed0db7f..03891b4 100644 --- a/smaug_dashboard/enabled/_6030_data_protection_checkpoints_panel.py +++ b/karbor_dashboard/enabled/_6030_data_protection_checkpoints_panel.py @@ -15,7 +15,7 @@ PANEL = 'checkpoints' PANEL_GROUP = 'default' -PANEL_DASHBOARD = 'smaug' +PANEL_DASHBOARD = 'karbor' ADD_PANEL = \ - 'smaug_dashboard.checkpoints.panel.Checkpoints' + 'karbor_dashboard.checkpoints.panel.Checkpoints' diff --git a/smaug_dashboard/enabled/_6040_data_protection_operation_logs_panel.py b/karbor_dashboard/enabled/_6040_data_protection_operation_logs_panel.py similarity index 88% rename from smaug_dashboard/enabled/_6040_data_protection_operation_logs_panel.py rename to karbor_dashboard/enabled/_6040_data_protection_operation_logs_panel.py index b8150f4..a7ee070 100644 --- a/smaug_dashboard/enabled/_6040_data_protection_operation_logs_panel.py +++ b/karbor_dashboard/enabled/_6040_data_protection_operation_logs_panel.py @@ -15,7 +15,7 @@ PANEL = 'operationlogs' PANEL_GROUP = 'default' -PANEL_DASHBOARD = 'smaug' +PANEL_DASHBOARD = 'karbor' ADD_PANEL = \ - 'smaug_dashboard.operationlogs.panel.OperationLogs' + 'karbor_dashboard.operationlogs.panel.OperationLogs' diff --git a/smaug_dashboard/enabled/_6050_data_protection_triggers_panel.py b/karbor_dashboard/enabled/_6050_data_protection_triggers_panel.py similarity index 90% rename from smaug_dashboard/enabled/_6050_data_protection_triggers_panel.py rename to karbor_dashboard/enabled/_6050_data_protection_triggers_panel.py index 385e6de..c825b6b 100644 --- a/smaug_dashboard/enabled/_6050_data_protection_triggers_panel.py +++ b/karbor_dashboard/enabled/_6050_data_protection_triggers_panel.py @@ -15,7 +15,7 @@ PANEL = 'triggers' PANEL_GROUP = 'default' -PANEL_DASHBOARD = 'smaug' +PANEL_DASHBOARD = 'karbor' ADD_PANEL = \ - 'smaug_dashboard.triggers.panel.Triggers' + 'karbor_dashboard.triggers.panel.Triggers' diff --git a/smaug_dashboard/enabled/__init__.py b/karbor_dashboard/enabled/__init__.py similarity index 100% rename from smaug_dashboard/enabled/__init__.py rename to karbor_dashboard/enabled/__init__.py diff --git a/smaug_dashboard/models.py b/karbor_dashboard/models.py similarity index 100% rename from smaug_dashboard/models.py rename to karbor_dashboard/models.py diff --git a/smaug_dashboard/operationlogs/__init__.py b/karbor_dashboard/operationlogs/__init__.py similarity index 100% rename from smaug_dashboard/operationlogs/__init__.py rename to karbor_dashboard/operationlogs/__init__.py diff --git a/smaug_dashboard/operationlogs/panel.py b/karbor_dashboard/operationlogs/panel.py similarity index 95% rename from smaug_dashboard/operationlogs/panel.py rename to karbor_dashboard/operationlogs/panel.py index c079b26..03124ec 100644 --- a/smaug_dashboard/operationlogs/panel.py +++ b/karbor_dashboard/operationlogs/panel.py @@ -15,7 +15,7 @@ from django.utils.translation import ugettext_lazy as _ import horizon -from smaug_dashboard import dashboard +from karbor_dashboard import dashboard class OperationLogs(horizon.Panel): diff --git a/smaug_dashboard/operationlogs/tables.py b/karbor_dashboard/operationlogs/tables.py similarity index 94% rename from smaug_dashboard/operationlogs/tables.py rename to karbor_dashboard/operationlogs/tables.py index d7cac52..0cda372 100644 --- a/smaug_dashboard/operationlogs/tables.py +++ b/karbor_dashboard/operationlogs/tables.py @@ -19,7 +19,7 @@ from horizon import tables class OperationLogsProtectTable(tables.DataTable): id = tables.Column('id', - link="horizon:smaug:operationlogs:detail", + link="horizon:karbor:operationlogs:detail", verbose_name=_('ID')) name = tables.Column('name', verbose_name=_('Name')) @@ -63,7 +63,7 @@ class OperationLogsRestoreTable(tables.DataTable): class OperationLogsDeleteTable(tables.DataTable): id = tables.Column('id', - link="horizon:smaug:operationlogs:detail", + link="horizon:karbor:operationlogs:detail", verbose_name=_('ID')) name = tables.Column('name', verbose_name=_('Name')) diff --git a/smaug_dashboard/operationlogs/urls.py b/karbor_dashboard/operationlogs/urls.py similarity index 93% rename from smaug_dashboard/operationlogs/urls.py rename to karbor_dashboard/operationlogs/urls.py index 704e8a1..c98333d 100644 --- a/smaug_dashboard/operationlogs/urls.py +++ b/karbor_dashboard/operationlogs/urls.py @@ -13,7 +13,7 @@ # under the License. from django.conf.urls import url -from smaug_dashboard.operationlogs import views +from karbor_dashboard.operationlogs import views urlpatterns = [ diff --git a/smaug_dashboard/operationlogs/utils.py b/karbor_dashboard/operationlogs/utils.py similarity index 100% rename from smaug_dashboard/operationlogs/utils.py rename to karbor_dashboard/operationlogs/utils.py diff --git a/smaug_dashboard/operationlogs/views.py b/karbor_dashboard/operationlogs/views.py similarity index 89% rename from smaug_dashboard/operationlogs/views.py rename to karbor_dashboard/operationlogs/views.py index 4942923..6051534 100644 --- a/smaug_dashboard/operationlogs/views.py +++ b/karbor_dashboard/operationlogs/views.py @@ -18,9 +18,9 @@ from django.utils.translation import ugettext_lazy as _ from horizon import exceptions from horizon import tables as horizon_tables -from smaug_dashboard.api import smaug as smaugclient -from smaug_dashboard.operationlogs import tables -from smaug_dashboard.operationlogs import utils +from karbor_dashboard.api import karbor as karborclient +from karbor_dashboard.operationlogs import tables +from karbor_dashboard.operationlogs import utils class IndexView(horizon_tables.DataTableView): @@ -59,7 +59,7 @@ class IndexView(horizon_tables.DataTableView): context = super(IndexView, self).get_context_data(**kwargs) context["type_list"] = utils.OPERATION_TYPE_CHOICES context["status_list"] = utils.OPERATION_STATUS_CHOICES - context["url"] = reverse("horizon:smaug:operationlogs:index") + context["url"] = reverse("horizon:karbor:operationlogs:index") context = dict(context, **self.get_filter_list()) return context @@ -123,7 +123,7 @@ class IndexView(horizon_tables.DataTableView): # Get restore operation logs logs, self._more, self._prev = \ - smaugclient.restore_list_paged( + karborclient.restore_list_paged( self.request, search_opts=filter_opts, marker=marker, @@ -133,11 +133,11 @@ class IndexView(horizon_tables.DataTableView): reversed_order=reversed_order) for log in logs: - checkpoint = smaugclient.checkpoint_get(self.request, - log.provider_id, - log.checkpoint_id) - provider = smaugclient.provider_get(self.request, - log.provider_id) + checkpoint = karborclient.checkpoint_get(self.request, + log.provider_id, + log.checkpoint_id) + provider = karborclient.provider_get(self.request, + log.provider_id) setattr(log, "name", checkpoint.protection_plan["name"]) setattr(log, "type", utils.OPERATION_TYPE_DICT[ diff --git a/smaug_dashboard/protectionplans/__init__.py b/karbor_dashboard/protectionplans/__init__.py similarity index 100% rename from smaug_dashboard/protectionplans/__init__.py rename to karbor_dashboard/protectionplans/__init__.py diff --git a/smaug_dashboard/protectionplans/forms.py b/karbor_dashboard/protectionplans/forms.py similarity index 78% rename from smaug_dashboard/protectionplans/forms.py rename to karbor_dashboard/protectionplans/forms.py index 55dc85d..e5ee83a 100644 --- a/smaug_dashboard/protectionplans/forms.py +++ b/karbor_dashboard/protectionplans/forms.py @@ -20,7 +20,7 @@ from horizon import forms as horizon_forms from horizon import messages import json -from smaug_dashboard.api import smaug as smaugclient +from karbor_dashboard.api import karbor as karborclient class CreateProtectionPlanForm(horizon_forms.SelfHandlingForm): @@ -44,7 +44,7 @@ class CreateProtectionPlanForm(horizon_forms.SelfHandlingForm): __init__(request, *args, **kwargs) result = [] - providers = smaugclient.provider_list(request) + providers = karborclient.provider_list(request) self.fields['providers'].initial = \ json.dumps([f._info for f in providers]) @@ -56,11 +56,11 @@ class CreateProtectionPlanForm(horizon_forms.SelfHandlingForm): def handle(self, request, data): try: - new_plan = smaugclient.plan_create(request, - data["name"], - data["provider_id"], - json.loads(data["resources"]), - json.loads(data["parameters"])) + new_plan = karborclient.plan_create(request, + data["name"], + data["provider_id"], + json.loads(data["resources"]), + json.loads(data["parameters"])) messages.success(request, _("Protection Plan created successfully.")) @@ -70,8 +70,8 @@ class CreateProtectionPlanForm(horizon_forms.SelfHandlingForm): return self.next_view.as_view()(request, plan_id=new_plan.id) elif data["actionmode"] == "now": - smaugclient.checkpoint_create(request, new_plan.provider_id, - new_plan.id) + karborclient.checkpoint_create(request, new_plan.provider_id, + new_plan.id) messages.success(request, _("Protect now successfully.")) return new_plan except Exception: @@ -85,13 +85,13 @@ class ScheduleProtectForm(horizon_forms.SelfHandlingForm): widget=forms.HiddenInput) trigger_id = horizon_forms.DynamicChoiceField( label=_("Associate with Trigger"), - add_item_link="horizon:smaug:triggers:create") + add_item_link="horizon:karbor:triggers:create") def __init__(self, request, *args, **kwargs): super(ScheduleProtectForm, self).__init__(request, *args, **kwargs) result = [] - triggers = smaugclient.trigger_list(request) + triggers = karborclient.trigger_list(request) if triggers: result = [(e.id, e.name) for e in triggers] @@ -101,11 +101,11 @@ class ScheduleProtectForm(horizon_forms.SelfHandlingForm): try: operation_definition = dict(provider_id=data["provider_id"], plan_id=data["id"]) - smaugclient.scheduled_operation_create(request, - data["name"], - "protect", - data["trigger_id"], - operation_definition) + karborclient.scheduled_operation_create(request, + data["name"], + "protect", + data["trigger_id"], + operation_definition) messages.success(request, _("Schedule protect successfully.")) return True except Exception: diff --git a/smaug_dashboard/protectionplans/panel.py b/karbor_dashboard/protectionplans/panel.py similarity index 95% rename from smaug_dashboard/protectionplans/panel.py rename to karbor_dashboard/protectionplans/panel.py index 296255e..0f2accc 100644 --- a/smaug_dashboard/protectionplans/panel.py +++ b/karbor_dashboard/protectionplans/panel.py @@ -15,7 +15,7 @@ from django.utils.translation import ugettext_lazy as _ import horizon -from smaug_dashboard import dashboard +from karbor_dashboard import dashboard class ProtectionPlans(horizon.Panel): diff --git a/smaug_dashboard/protectionplans/tables.py b/karbor_dashboard/protectionplans/tables.py similarity index 87% rename from smaug_dashboard/protectionplans/tables.py rename to karbor_dashboard/protectionplans/tables.py index 8a5a4f1..8aa4709 100644 --- a/smaug_dashboard/protectionplans/tables.py +++ b/karbor_dashboard/protectionplans/tables.py @@ -19,13 +19,13 @@ from horizon import exceptions from horizon import messages from horizon import tables -from smaug_dashboard.api import smaug as smaugclient +from karbor_dashboard.api import karbor as karborclient class CreateProtectionPlanLink(tables.LinkAction): name = "create" verbose_name = _("Create Protection Plan") - url = "horizon:smaug:protectionplans:create" + url = "horizon:karbor:protectionplans:create" classes = ("ajax-modal",) icon = "plus" @@ -36,7 +36,7 @@ class CreateProtectionPlanLink(tables.LinkAction): class ScheduleProtectLink(tables.LinkAction): name = "scheduleprotect" verbose_name = _("Schedule Protect") - url = "horizon:smaug:protectionplans:scheduleprotect" + url = "horizon:karbor:protectionplans:scheduleprotect" classes = ("ajax-modal",) def allowed(self, request, plan): @@ -58,9 +58,9 @@ class ProtectNowLink(tables.Action): try: datum = self.table.get_object_by_id(datum_id) provider_id = datum.provider_id - new_checkpoint = smaugclient.checkpoint_create(request, - provider_id, - datum_id) + new_checkpoint = karborclient.checkpoint_create(request, + provider_id, + datum_id) messages.success(request, _("Protect now successfully.")) return new_checkpoint except Exception: @@ -88,7 +88,7 @@ class DeleteProtectionPlansAction(tables.DeleteAction): return True def delete(self, request, obj_id): - smaugclient.plan_delete(request, obj_id) + karborclient.plan_delete(request, obj_id) class ProtectionPlanFilterAction(tables.FilterAction): @@ -101,7 +101,7 @@ class ProtectionPlanFilterAction(tables.FilterAction): class ProtectionPlansTable(tables.DataTable): name = tables.Column('name', - link="horizon:smaug:protectionplans:detail", + link="horizon:karbor:protectionplans:detail", verbose_name=_('Name')) status = tables.Column('status', diff --git a/smaug_dashboard/protectionplans/urls.py b/karbor_dashboard/protectionplans/urls.py similarity index 95% rename from smaug_dashboard/protectionplans/urls.py rename to karbor_dashboard/protectionplans/urls.py index 27ccd70..d9e9085 100644 --- a/smaug_dashboard/protectionplans/urls.py +++ b/karbor_dashboard/protectionplans/urls.py @@ -13,7 +13,7 @@ # under the License. from django.conf.urls import url -from smaug_dashboard.protectionplans import views +from karbor_dashboard.protectionplans import views urlpatterns = [ diff --git a/smaug_dashboard/protectionplans/views.py b/karbor_dashboard/protectionplans/views.py similarity index 83% rename from smaug_dashboard/protectionplans/views.py rename to karbor_dashboard/protectionplans/views.py index f302a21..d0798eb 100644 --- a/smaug_dashboard/protectionplans/views.py +++ b/karbor_dashboard/protectionplans/views.py @@ -22,10 +22,10 @@ from horizon import tables as horizon_tables from horizon.utils import memoized from horizon import views as horizon_views -from smaug_dashboard.api import smaug as smaugclient -from smaug_dashboard.protectionplans import forms -from smaug_dashboard.protectionplans import tables -from smaugclient.v1 import protectables +from karbor_dashboard.api import karbor as karborclient +from karbor_dashboard.protectionplans import forms +from karbor_dashboard.protectionplans import tables +from karborclient.v1 import protectables import uuid @@ -53,7 +53,7 @@ class IndexView(horizon_tables.DataTableView): reversed_order = prev_marker is not None plans = [] try: - plans, self._more, self._prev = smaugclient.plan_list_paged( + plans, self._more, self._prev = karborclient.plan_list_paged( request, None, marker=marker, paginate=True, @@ -74,8 +74,8 @@ class CreateView(horizon_forms.ModalFormView): form_id = "create_protectionplan_form" form_class = forms.CreateProtectionPlanForm submit_label = _("Create Protection Plan") - submit_url = reverse_lazy("horizon:smaug:protectionplans:create") - success_url = reverse_lazy('horizon:smaug:protectionplans:index') + submit_url = reverse_lazy("horizon:karbor:protectionplans:create") + success_url = reverse_lazy('horizon:karbor:protectionplans:index') page_title = _("Create Protection Plan") def get_context_data(self, **kwargs): @@ -91,7 +91,7 @@ class CreateView(horizon_forms.ModalFormView): @memoized.memoized_method def get_object(self): try: - instances = smaugclient.protectable_list_instances( + instances = karborclient.protectable_list_instances( self.request, "OS::Keystone::Project") results = [] self.get_results(instances, None, results) @@ -100,7 +100,7 @@ class CreateView(horizon_forms.ModalFormView): exceptions.handle( self.request, _('Unable to create protection plan.'), - redirect=reverse("horizon:smaug:protectionplans:index")) + redirect=reverse("horizon:karbor:protectionplans:index")) def get_results(self, instances, showparentid, results): for instance in instances: @@ -116,7 +116,7 @@ class CreateView(horizon_forms.ModalFormView): for dependent_resource in instance.dependent_resources: if dependent_resource is not None: - dependent = smaugclient.protectable_get_instance( + dependent = karborclient.protectable_get_instance( self.request, dependent_resource["type"], dependent_resource["id"]) @@ -129,19 +129,19 @@ class ScheduleProtectView(horizon_forms.ModalFormView): form_id = "scheduleprotect_form" form_class = forms.ScheduleProtectForm submit_label = _("Schedule Protect") - submit_url = "horizon:smaug:protectionplans:scheduleprotect" - success_url = reverse_lazy('horizon:smaug:protectionplans:index') + submit_url = "horizon:karbor:protectionplans:scheduleprotect" + success_url = reverse_lazy('horizon:karbor:protectionplans:index') page_title = _("Schedule Protect") @memoized.memoized_method def get_object(self): try: - return smaugclient.plan_get(self.request, self.kwargs['plan_id']) + return karborclient.plan_get(self.request, self.kwargs['plan_id']) except Exception: exceptions.handle( self.request, _('Unable to schedule protect.'), - redirect=reverse("horizon:smaug:protectionplans:index")) + redirect=reverse("horizon:karbor:protectionplans:index")) def get_context_data(self, **kwargs): context = super(ScheduleProtectView, self).get_context_data(**kwargs) @@ -168,31 +168,31 @@ class DetailView(horizon_views.HorizonTemplateView): context["plan"] = plan context["provider"] = self.get_provider(plan.provider_id) context["instances"] = self.get_instances(plan.resources) - context["url"] = reverse("horizon:smaug:protectionplans:index") + context["url"] = reverse("horizon:karbor:protectionplans:index") context["actions"] = table.render_row_actions(plan) return context @memoized.memoized_method def get_data(self): try: - return smaugclient.plan_get(self.request, self.kwargs['plan_id']) + return karborclient.plan_get(self.request, self.kwargs['plan_id']) except Exception: exceptions.handle( self.request, _('Unable to retrieve protection plan details.'), - redirect=reverse("horizon:smaug:protectionplans:index")) + redirect=reverse("horizon:karbor:protectionplans:index")) @memoized.memoized_method def get_provider(self, provider_id): provider = None if provider_id: try: - provider = smaugclient.provider_get(self.request, provider_id) + provider = karborclient.provider_get(self.request, provider_id) except Exception: exceptions.handle( self.request, _('Unable to retrieve protection provider details.'), - redirect=reverse("horizon:smaug:protectionplans:index")) + redirect=reverse("horizon:karbor:protectionplans:index")) return provider @memoized.memoized_method @@ -202,7 +202,7 @@ class DetailView(horizon_views.HorizonTemplateView): for instance in instances: instance["showid"] = str(uuid.uuid4()) result.append(protectables.Instances(self, instance)) - detail_instance = smaugclient.protectable_get_instance( + detail_instance = karborclient.protectable_get_instance( self.request, instance["type"].strip(), instance["id"].strip()) @@ -218,4 +218,4 @@ class DetailView(horizon_views.HorizonTemplateView): exceptions.handle( self.request, _('Unable to get instances.'), - redirect=reverse("horizon:smaug:protectionplans:index")) + redirect=reverse("horizon:karbor:protectionplans:index")) diff --git a/smaug_dashboard/protectionproviders/__init__.py b/karbor_dashboard/protectionproviders/__init__.py similarity index 100% rename from smaug_dashboard/protectionproviders/__init__.py rename to karbor_dashboard/protectionproviders/__init__.py diff --git a/smaug_dashboard/protectionproviders/panel.py b/karbor_dashboard/protectionproviders/panel.py similarity index 95% rename from smaug_dashboard/protectionproviders/panel.py rename to karbor_dashboard/protectionproviders/panel.py index 6a3feee..1602c24 100644 --- a/smaug_dashboard/protectionproviders/panel.py +++ b/karbor_dashboard/protectionproviders/panel.py @@ -15,7 +15,7 @@ from django.utils.translation import ugettext_lazy as _ import horizon -from smaug_dashboard import dashboard +from karbor_dashboard import dashboard class ProtectionProviders(horizon.Panel): diff --git a/smaug_dashboard/protectionproviders/tables.py b/karbor_dashboard/protectionproviders/tables.py similarity index 93% rename from smaug_dashboard/protectionproviders/tables.py rename to karbor_dashboard/protectionproviders/tables.py index 2a58481..5ddc685 100644 --- a/smaug_dashboard/protectionproviders/tables.py +++ b/karbor_dashboard/protectionproviders/tables.py @@ -27,7 +27,7 @@ class ShowCheckpointsAction(tables.Action): return True def single(self, table, request, obj_id): - redirect = reverse("horizon:smaug:checkpoints:index", + redirect = reverse("horizon:karbor:checkpoints:index", args=(obj_id,)) return http.HttpResponseRedirect(redirect) @@ -43,7 +43,7 @@ class ProtectionProviderFilterAction(tables.FilterAction): class ProtectionProvidersTable(tables.DataTable): name = tables.Column('name', - link="horizon:smaug:protectionproviders:detail", + link="horizon:karbor:protectionproviders:detail", verbose_name=_('Name')) description = tables.Column('description', verbose_name=_('Description')) diff --git a/smaug_dashboard/protectionproviders/tabs.py b/karbor_dashboard/protectionproviders/tabs.py similarity index 91% rename from smaug_dashboard/protectionproviders/tabs.py rename to karbor_dashboard/protectionproviders/tabs.py index 029cc14..b08643e 100644 --- a/smaug_dashboard/protectionproviders/tabs.py +++ b/karbor_dashboard/protectionproviders/tabs.py @@ -17,8 +17,8 @@ from django.utils.translation import ugettext_lazy as _ from horizon import exceptions from horizon import tabs +from karbor_dashboard.api import karbor as karborclient import simplejson as json -from smaug_dashboard.api import smaug as smaugclient class OptionsSchemaTab(tabs.Tab): @@ -29,7 +29,7 @@ class OptionsSchemaTab(tabs.Tab): def get_context_data(self, request): try: provider_id = self.tab_group.kwargs['provider_id'] - provider = smaugclient.provider_get(request, provider_id) + provider = karborclient.provider_get(request, provider_id) schema = {} if provider is not None: @@ -51,7 +51,7 @@ class RestoreSchemaTab(tabs.Tab): def get_context_data(self, request): try: provider_id = self.tab_group.kwargs['provider_id'] - provider = smaugclient.provider_get(request, provider_id) + provider = karborclient.provider_get(request, provider_id) schema = {} if provider is not None: @@ -73,7 +73,7 @@ class SavedInfoSchemaTab(tabs.Tab): def get_context_data(self, request): try: provider_id = self.tab_group.kwargs['provider_id'] - provider = smaugclient.provider_get(request, provider_id) + provider = karborclient.provider_get(request, provider_id) schema = {} if provider is not None: if 'saved_info_schema' in provider.extended_info_schema: diff --git a/smaug_dashboard/protectionproviders/urls.py b/karbor_dashboard/protectionproviders/urls.py similarity index 93% rename from smaug_dashboard/protectionproviders/urls.py rename to karbor_dashboard/protectionproviders/urls.py index 7cd72e6..e412c34 100644 --- a/smaug_dashboard/protectionproviders/urls.py +++ b/karbor_dashboard/protectionproviders/urls.py @@ -13,7 +13,7 @@ # under the License. from django.conf.urls import url -from smaug_dashboard.protectionproviders import views +from karbor_dashboard.protectionproviders import views urlpatterns = [ diff --git a/smaug_dashboard/protectionproviders/views.py b/karbor_dashboard/protectionproviders/views.py similarity index 87% rename from smaug_dashboard/protectionproviders/views.py rename to karbor_dashboard/protectionproviders/views.py index cfb8e3a..17bb92c 100644 --- a/smaug_dashboard/protectionproviders/views.py +++ b/karbor_dashboard/protectionproviders/views.py @@ -20,9 +20,9 @@ from horizon import tables as horizon_tables from horizon import tabs as horizon_tabs from horizon.utils import memoized -from smaug_dashboard.api import smaug as smaugclient -from smaug_dashboard.protectionproviders import tables -from smaug_dashboard.protectionproviders import tabs +from karbor_dashboard.api import karbor as karborclient +from karbor_dashboard.protectionproviders import tables +from karbor_dashboard.protectionproviders import tabs class IndexView(horizon_tables.DataTableView): @@ -50,7 +50,7 @@ class IndexView(horizon_tables.DataTableView): providers = [] try: providers, self._more, self._prev = \ - smaugclient.provider_list_paged( + karborclient.provider_list_paged( request, None, marker=marker, paginate=True, @@ -67,7 +67,7 @@ class IndexView(horizon_tables.DataTableView): class DetailView(horizon_tabs.TabView): - redirect_url = "horizon:smaug:protectionproviders:index" + redirect_url = "horizon:karbor:protectionproviders:index" tab_group_class = tabs.ProviderDetailTabs template_name = 'protectionproviders/detail.html' page_title = "{{ provider.name }}" @@ -81,12 +81,12 @@ class DetailView(horizon_tabs.TabView): def get_data(self): try: provider_id = self.kwargs['provider_id'] - provider = smaugclient.provider_get(self.request, provider_id) + provider = karborclient.provider_get(self.request, provider_id) except Exception: exceptions.handle( self.request, _('Unable to retrieve protection provider details.'), - redirect=reverse("horizon:smaug:protectionproviders:index")) + redirect=reverse("horizon:karbor:protectionproviders:index")) return provider def get_tabs(self, request, *args, **kwargs): diff --git a/smaug_dashboard/static/smaugdashboard/css/jquery.treetable.css b/karbor_dashboard/static/karbordashboard/css/jquery.treetable.css similarity index 100% rename from smaug_dashboard/static/smaugdashboard/css/jquery.treetable.css rename to karbor_dashboard/static/karbordashboard/css/jquery.treetable.css diff --git a/smaug_dashboard/static/smaugdashboard/images/collapse.png b/karbor_dashboard/static/karbordashboard/images/collapse.png similarity index 100% rename from smaug_dashboard/static/smaugdashboard/images/collapse.png rename to karbor_dashboard/static/karbordashboard/images/collapse.png diff --git a/smaug_dashboard/static/smaugdashboard/images/expand.png b/karbor_dashboard/static/karbordashboard/images/expand.png similarity index 100% rename from smaug_dashboard/static/smaugdashboard/images/expand.png rename to karbor_dashboard/static/karbordashboard/images/expand.png diff --git a/smaug_dashboard/static/smaugdashboard/images/logoicon.png b/karbor_dashboard/static/karbordashboard/images/logoicon.png similarity index 100% rename from smaug_dashboard/static/smaugdashboard/images/logoicon.png rename to karbor_dashboard/static/karbordashboard/images/logoicon.png diff --git a/smaug_dashboard/static/smaugdashboard/js/checkpoints.detail.js b/karbor_dashboard/static/karbordashboard/js/checkpoints.detail.js similarity index 100% rename from smaug_dashboard/static/smaugdashboard/js/checkpoints.detail.js rename to karbor_dashboard/static/karbordashboard/js/checkpoints.detail.js diff --git a/smaug_dashboard/static/smaugdashboard/js/checkpoints.restore.js b/karbor_dashboard/static/karbordashboard/js/checkpoints.restore.js similarity index 86% rename from smaug_dashboard/static/smaugdashboard/js/checkpoints.restore.js rename to karbor_dashboard/static/karbordashboard/js/checkpoints.restore.js index 33a2f94..02daa48 100644 --- a/smaug_dashboard/static/smaugdashboard/js/checkpoints.restore.js +++ b/karbor_dashboard/static/karbordashboard/js/checkpoints.restore.js @@ -17,7 +17,7 @@ function setRestoredResource() { var trResources = $("#checkpointRestoreResource tr[resource-id]"); var provider = $.parseJSON($(".provider").val()); - var parameters = $.Smaug.getResourceDefaultParameters(provider, "restore_schema"); + var parameters = $.Karbor.getResourceDefaultParameters(provider, "restore_schema"); if(trResources != null) { trResources.each(function() { var trResource = $(this); @@ -67,34 +67,34 @@ horizon.checkpoints_restore = { if(schema != null) { var exist_ui_dialogs = $("body").has(".ui-dialog"); if(exist_ui_dialogs.length == 0){ - var dialog_data = $.Smaug.createDialog(schema, userdata, resourceid); - $.Smaug.openDialog(dialog_data, "#parametersdialog", "div.dialog_wrapper"); + var dialog_data = $.Karbor.createDialog(schema, userdata, resourceid); + $.Karbor.openDialog(dialog_data, "#parametersdialog", "div.dialog_wrapper"); } } }); /* bind parameters dialog save button event */ $(document).on('click', "#parametersdialog .btn.btn-primary", function() { - var flag = $.Smaug.check_required($("#parametersdialog")); + var flag = $.Karbor.check_required($("#parametersdialog")); if(flag) { var resourceid = $("#parametersdialog .modal-body").attr("resourceid"); var form_controls = $("#parametersdialog .modal-body .form-control"); - var userdata = $.Smaug.getDynamicValue(form_controls); + var userdata = $.Karbor.getDynamicValue(form_controls); $("#checkpointRestoreResource").find("tr[resource-id='" + resourceid + "']") .find(".editparameters") .data("userdata", userdata); - $.Smaug.closeDialog("#parametersdialog"); + $.Karbor.closeDialog("#parametersdialog"); } }); /* bind parameters dialog cancel button event */ $(document).on('click', "#parametersdialog .btn.cancel", function() { - $.Smaug.closeDialog("#parametersdialog"); + $.Karbor.closeDialog("#parametersdialog"); }); /* bind parameters dialog close button event */ $(document).on('click', "#parametersdialog a.close", function() { - $.Smaug.closeDialog("#parametersdialog"); + $.Karbor.closeDialog("#parametersdialog"); }); } }; diff --git a/smaug_dashboard/static/smaugdashboard/js/jquery.smaug.js b/karbor_dashboard/static/karbordashboard/js/jquery.karbor.js similarity index 99% rename from smaug_dashboard/static/smaugdashboard/js/jquery.smaug.js rename to karbor_dashboard/static/karbordashboard/js/jquery.karbor.js index 5a8a011..7aa7a5f 100644 --- a/smaug_dashboard/static/smaugdashboard/js/jquery.smaug.js +++ b/karbor_dashboard/static/karbordashboard/js/jquery.karbor.js @@ -1,5 +1,5 @@ /* - * jQuery Smaug Function + * jQuery Karbor Function */ (function ($) { @@ -171,7 +171,7 @@ } } - $.Smaug = { + $.Karbor = { /* get the default resources parameters */ getResourceDefaultParameters: function(provider, schemaname) { diff --git a/smaug_dashboard/static/smaugdashboard/js/jquery.treetable.js b/karbor_dashboard/static/karbordashboard/js/jquery.treetable.js similarity index 100% rename from smaug_dashboard/static/smaugdashboard/js/jquery.treetable.js rename to karbor_dashboard/static/karbordashboard/js/jquery.treetable.js diff --git a/smaug_dashboard/static/smaugdashboard/js/protectionplans.create.js b/karbor_dashboard/static/karbordashboard/js/protectionplans.create.js similarity index 91% rename from smaug_dashboard/static/smaugdashboard/js/protectionplans.create.js rename to karbor_dashboard/static/karbordashboard/js/protectionplans.create.js index 511468b..7feb390 100644 --- a/smaug_dashboard/static/smaugdashboard/js/protectionplans.create.js +++ b/karbor_dashboard/static/karbordashboard/js/protectionplans.create.js @@ -32,7 +32,7 @@ function setProtectedResource() { var resources = []; var cbResources = $(".cbresource:checked"); var provider = getProvider($("select[name='provider_id']").val()); - var parameters = $.Smaug.getResourceDefaultParameters(provider, "options_schema"); + var parameters = $.Karbor.getResourceDefaultParameters(provider, "options_schema"); if(cbResources != null) { cbResources.each(function() { var cbResource = $(this); @@ -132,34 +132,34 @@ horizon.protectionplans_create = { if(schema != null) { var exist_ui_dialogs = $("body").has(".ui-dialog"); if(exist_ui_dialogs.length == 0){ - var dialog_data = $.Smaug.createDialog(schema, userdata, resourceid); - $.Smaug.openDialog(dialog_data, "#parametersdialog", "div.dialog_wrapper"); + var dialog_data = $.Karbor.createDialog(schema, userdata, resourceid); + $.Karbor.openDialog(dialog_data, "#parametersdialog", "div.dialog_wrapper"); } } }); /* bind parameters dialog save button event */ $(document).on('click', "#parametersdialog .btn.btn-primary", function() { - var flag = $.Smaug.check_required($("#parametersdialog")); + var flag = $.Karbor.check_required($("#parametersdialog")); if(flag) { var resourceid = $("#parametersdialog .modal-body").attr("resourceid"); var form_controls = $("#parametersdialog .modal-body .form-control"); - var userdata = $.Smaug.getDynamicValue(form_controls); + var userdata = $.Karbor.getDynamicValue(form_controls); $("#protectionplanCreateResource").find("tr[resource-id='" + resourceid + "']") .find(".editparameters") .data("userdata", userdata); - $.Smaug.closeDialog("#parametersdialog"); + $.Karbor.closeDialog("#parametersdialog"); } }); /* bind parameters dialog cancel button event */ $(document).on('click', "#parametersdialog .btn.cancel", function() { - $.Smaug.closeDialog("#parametersdialog"); + $.Karbor.closeDialog("#parametersdialog"); }); /* bind parameters dialog close button event */ $(document).on('click', "#parametersdialog a.close", function() { - $.Smaug.closeDialog("#parametersdialog"); + $.Karbor.closeDialog("#parametersdialog"); }); } }; diff --git a/smaug_dashboard/static/smaugdashboard/js/protectionplans.detail.js b/karbor_dashboard/static/karbordashboard/js/protectionplans.detail.js similarity index 100% rename from smaug_dashboard/static/smaugdashboard/js/protectionplans.detail.js rename to karbor_dashboard/static/karbordashboard/js/protectionplans.detail.js diff --git a/smaug_dashboard/templates/checkpoints/_detail.html b/karbor_dashboard/templates/checkpoints/_detail.html similarity index 94% rename from smaug_dashboard/templates/checkpoints/_detail.html rename to karbor_dashboard/templates/checkpoints/_detail.html index 3001969..a5b7fc4 100644 --- a/smaug_dashboard/templates/checkpoints/_detail.html +++ b/karbor_dashboard/templates/checkpoints/_detail.html @@ -4,7 +4,7 @@ {% block css %} {% compress css %} - + {% endcompress %} {% endblock %} diff --git a/smaug_dashboard/templates/checkpoints/_index.html b/karbor_dashboard/templates/checkpoints/_index.html similarity index 100% rename from smaug_dashboard/templates/checkpoints/_index.html rename to karbor_dashboard/templates/checkpoints/_index.html diff --git a/smaug_dashboard/templates/checkpoints/_restore.html b/karbor_dashboard/templates/checkpoints/_restore.html similarity index 95% rename from smaug_dashboard/templates/checkpoints/_restore.html rename to karbor_dashboard/templates/checkpoints/_restore.html index 8465ed5..026aa98 100644 --- a/smaug_dashboard/templates/checkpoints/_restore.html +++ b/karbor_dashboard/templates/checkpoints/_restore.html @@ -7,7 +7,7 @@ {% block css %} {% compress css %} - + {% endcompress %} {% endblock %} diff --git a/smaug_dashboard/templates/checkpoints/detail.html b/karbor_dashboard/templates/checkpoints/detail.html similarity index 100% rename from smaug_dashboard/templates/checkpoints/detail.html rename to karbor_dashboard/templates/checkpoints/detail.html diff --git a/smaug_dashboard/templates/checkpoints/index.html b/karbor_dashboard/templates/checkpoints/index.html similarity index 100% rename from smaug_dashboard/templates/checkpoints/index.html rename to karbor_dashboard/templates/checkpoints/index.html diff --git a/smaug_dashboard/templates/checkpoints/restore.html b/karbor_dashboard/templates/checkpoints/restore.html similarity index 100% rename from smaug_dashboard/templates/checkpoints/restore.html rename to karbor_dashboard/templates/checkpoints/restore.html diff --git a/smaug_dashboard/templates/operationlogs/_index.html b/karbor_dashboard/templates/operationlogs/_index.html similarity index 100% rename from smaug_dashboard/templates/operationlogs/_index.html rename to karbor_dashboard/templates/operationlogs/_index.html diff --git a/smaug_dashboard/templates/operationlogs/index.html b/karbor_dashboard/templates/operationlogs/index.html similarity index 100% rename from smaug_dashboard/templates/operationlogs/index.html rename to karbor_dashboard/templates/operationlogs/index.html diff --git a/smaug_dashboard/templates/protectionplans/_create.html b/karbor_dashboard/templates/protectionplans/_create.html similarity index 95% rename from smaug_dashboard/templates/protectionplans/_create.html rename to karbor_dashboard/templates/protectionplans/_create.html index 3dbfe9a..41516b4 100644 --- a/smaug_dashboard/templates/protectionplans/_create.html +++ b/karbor_dashboard/templates/protectionplans/_create.html @@ -7,7 +7,7 @@ {% block css %} {% compress css %} - + {% endcompress %} {% endblock %} diff --git a/smaug_dashboard/templates/protectionplans/_detail.html b/karbor_dashboard/templates/protectionplans/_detail.html similarity index 94% rename from smaug_dashboard/templates/protectionplans/_detail.html rename to karbor_dashboard/templates/protectionplans/_detail.html index 995e6c2..4dc4e7f 100644 --- a/smaug_dashboard/templates/protectionplans/_detail.html +++ b/karbor_dashboard/templates/protectionplans/_detail.html @@ -4,7 +4,7 @@ {% block css %} {% compress css %} - + {% endcompress %} {% endblock %} diff --git a/smaug_dashboard/templates/protectionplans/_scheduleprotect.html b/karbor_dashboard/templates/protectionplans/_scheduleprotect.html similarity index 100% rename from smaug_dashboard/templates/protectionplans/_scheduleprotect.html rename to karbor_dashboard/templates/protectionplans/_scheduleprotect.html diff --git a/smaug_dashboard/templates/protectionplans/create.html b/karbor_dashboard/templates/protectionplans/create.html similarity index 100% rename from smaug_dashboard/templates/protectionplans/create.html rename to karbor_dashboard/templates/protectionplans/create.html diff --git a/smaug_dashboard/templates/protectionplans/detail.html b/karbor_dashboard/templates/protectionplans/detail.html similarity index 100% rename from smaug_dashboard/templates/protectionplans/detail.html rename to karbor_dashboard/templates/protectionplans/detail.html diff --git a/smaug_dashboard/templates/protectionplans/index.html b/karbor_dashboard/templates/protectionplans/index.html similarity index 100% rename from smaug_dashboard/templates/protectionplans/index.html rename to karbor_dashboard/templates/protectionplans/index.html diff --git a/smaug_dashboard/templates/protectionplans/scheduleprotect.html b/karbor_dashboard/templates/protectionplans/scheduleprotect.html similarity index 100% rename from smaug_dashboard/templates/protectionplans/scheduleprotect.html rename to karbor_dashboard/templates/protectionplans/scheduleprotect.html diff --git a/smaug_dashboard/templates/protectionproviders/_detail.html b/karbor_dashboard/templates/protectionproviders/_detail.html similarity index 100% rename from smaug_dashboard/templates/protectionproviders/_detail.html rename to karbor_dashboard/templates/protectionproviders/_detail.html diff --git a/smaug_dashboard/templates/protectionproviders/_schema_contents.html b/karbor_dashboard/templates/protectionproviders/_schema_contents.html similarity index 100% rename from smaug_dashboard/templates/protectionproviders/_schema_contents.html rename to karbor_dashboard/templates/protectionproviders/_schema_contents.html diff --git a/smaug_dashboard/templates/protectionproviders/detail.html b/karbor_dashboard/templates/protectionproviders/detail.html similarity index 100% rename from smaug_dashboard/templates/protectionproviders/detail.html rename to karbor_dashboard/templates/protectionproviders/detail.html diff --git a/smaug_dashboard/templates/protectionproviders/index.html b/karbor_dashboard/templates/protectionproviders/index.html similarity index 100% rename from smaug_dashboard/templates/protectionproviders/index.html rename to karbor_dashboard/templates/protectionproviders/index.html diff --git a/smaug_dashboard/templates/triggers/_create.html b/karbor_dashboard/templates/triggers/_create.html similarity index 100% rename from smaug_dashboard/templates/triggers/_create.html rename to karbor_dashboard/templates/triggers/_create.html diff --git a/smaug_dashboard/templates/triggers/_detail.html b/karbor_dashboard/templates/triggers/_detail.html similarity index 100% rename from smaug_dashboard/templates/triggers/_detail.html rename to karbor_dashboard/templates/triggers/_detail.html diff --git a/smaug_dashboard/templates/triggers/create.html b/karbor_dashboard/templates/triggers/create.html similarity index 100% rename from smaug_dashboard/templates/triggers/create.html rename to karbor_dashboard/templates/triggers/create.html diff --git a/smaug_dashboard/templates/triggers/detail.html b/karbor_dashboard/templates/triggers/detail.html similarity index 100% rename from smaug_dashboard/templates/triggers/detail.html rename to karbor_dashboard/templates/triggers/detail.html diff --git a/smaug_dashboard/templates/triggers/index.html b/karbor_dashboard/templates/triggers/index.html similarity index 100% rename from smaug_dashboard/templates/triggers/index.html rename to karbor_dashboard/templates/triggers/index.html diff --git a/smaug_dashboard/test/__init__.py b/karbor_dashboard/test/__init__.py similarity index 100% rename from smaug_dashboard/test/__init__.py rename to karbor_dashboard/test/__init__.py diff --git a/smaug_dashboard/test/api_tests/__init__.py b/karbor_dashboard/test/api_tests/__init__.py similarity index 100% rename from smaug_dashboard/test/api_tests/__init__.py rename to karbor_dashboard/test/api_tests/__init__.py diff --git a/karbor_dashboard/test/api_tests/api_tests.py b/karbor_dashboard/test/api_tests/api_tests.py new file mode 100644 index 0000000..59ae4f1 --- /dev/null +++ b/karbor_dashboard/test/api_tests/api_tests.py @@ -0,0 +1,994 @@ +# Copyright (c) 2016 Huawei, Inc. +# +# 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 django.conf import settings +from django.test.utils import override_settings + +from karbor_dashboard.api import karbor +from karbor_dashboard.test import helpers as test + + +class karborApiTests(test.APITestCase): + def test_plan_get(self): + plan = self.plans.first() + karborclient = self.stub_karborclient() + karborclient.plans = self.mox.CreateMockAnything() + karborclient.plans.get(plan["id"]).AndReturn(plan) + self.mox.ReplayAll() + + ret_plan = karbor.plan_get(self.request, + plan_id='fake_plan_id1') + self.assertEqual(plan["id"], ret_plan["id"]) + + def test_plan_create(self): + plan = self.plans.first() + fake_resources = plan["resources"] + fake_parameters = plan["parameters"] + karborclient = self.stub_karborclient() + karborclient.plans = self.mox.CreateMockAnything() + karborclient.plans.create(plan["name"], plan["provider_id"], + plan["resources"], + plan["parameters"]).AndReturn(plan) + self.mox.ReplayAll() + + ret_plan = karbor.plan_create(self.request, + name="fake_name_1", + provider_id="fake_provider_id1", + resources=fake_resources, + parameters=fake_parameters) + self.assertEqual(len(plan), len(ret_plan)) + + def test_plan_delete(self): + plan = self.plans.first() + karborclient = self.stub_karborclient() + karborclient.plans = self.mox.CreateMockAnything() + karborclient.plans.delete(plan["id"]) + self.mox.ReplayAll() + + karbor.plan_delete(self.request, + plan_id="fake_plan_id1") + + def test_plan_update(self): + plan = self.plans.first() + plan2 = self.plans.list()[0] + data = {"name": "fake_name_new"} + karborclient = self.stub_karborclient() + karborclient.plans = self.mox.CreateMockAnything() + karborclient.plans.update(plan["id"], data).AndReturn(plan2) + self.mox.ReplayAll() + + ret_plan = karbor.plan_update(self.request, + plan_id="fake_plan_id1", + data=data) + self.assertEqual(plan["name"], ret_plan["name"]) + + def test_plan_list(self): + plans = self.plans.list() + karborclient = self.stub_karborclient() + karborclient.plans = self.mox.CreateMockAnything() + karborclient.plans.list(detailed=False, + search_opts=None, + marker=None, + limit=None, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(plans) + self.mox.ReplayAll() + + ret_list = karbor.plan_list(self.request) + self.assertEqual(len(plans), len(ret_list)) + + @override_settings(API_RESULT_PAGE_SIZE=4) + def test_plan_list_paged_equal_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 4) + + plan = self.plans.list() + karborclient = self.stub_karborclient() + karborclient.plans = self.mox.CreateMockAnything() + karborclient.plans.list(detailed=False, + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(plan) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = karbor.plan_list_paged( + self.request, paginate=True) + self.assertEqual(page_size, len(ret_val)) + self.assertFalse(has_more_data) + self.assertFalse(has_prev_data) + + @override_settings(API_RESULT_PAGE_SIZE=20) + def test_plan_list_paged_less_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 20) + plan = self.plans.list() + karborclient = self.stub_karborclient() + karborclient.plans = self.mox.CreateMockAnything() + karborclient.plans.list(detailed=False, + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(plan) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = karbor.plan_list_paged( + self.request, paginate=True) + + self.assertEqual(len(plan), len(ret_val)) + self.assertFalse(has_more_data) + self.assertFalse(has_prev_data) + + @override_settings(API_RESULT_PAGE_SIZE=1) + def test_plan_list_paged_more_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 1) + plan = self.plans.list() + karborclient = self.stub_karborclient() + karborclient.plans = self.mox.CreateMockAnything() + karborclient.plans.list(detailed=False, + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(plan[:page_size + 1]) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = karbor.plan_list_paged( + self.request, paginate=True) + + self.assertEqual(page_size, len(ret_val)) + self.assertTrue(has_more_data) + self.assertFalse(has_prev_data) + + def test_plan_list_paged_false(self): + plans = self.plans.list() + karborclient = self.stub_karborclient() + karborclient.plans = self.mox.CreateMockAnything() + karborclient.plans.list(detailed=False, + search_opts=None, + marker=None, + limit=None, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(plans) + self.mox.ReplayAll() + + plans, has_more_data, has_prev_data = karbor.plan_list_paged( + self.request) + self.assertEqual(len(plans), len(plans)) + + def test_scheduled_operation_create(self): + scheduled_operation = self.scheduled_operations.first() + operation_definition = {"trigger_id": "fake_trigger_id1", + "plan_id": "fake_plan_id"} + karborclient = self.stub_karborclient() + karborclient.scheduled_operations = self.mox.CreateMockAnything() + karborclient.scheduled_operations.create( + "My-scheduled-operation", + "protect", + "fake_trigger_id1", + operation_definition).AndReturn(scheduled_operation) + self.mox.ReplayAll() + + ret_so = karbor.scheduled_operation_create( + self.request, + name="My-scheduled-operation", + operation_type="protect", + trigger_id="fake_trigger_id1", + operation_definition=operation_definition) + self.assertEqual(scheduled_operation["id"], ret_so["id"]) + + def test_scheduled_operation_delete(self): + scheduled_operation = self.scheduled_operations.first() + karborclient = self.stub_karborclient() + karborclient.scheduled_operations = self.mox.CreateMockAnything() + karborclient.scheduled_operations.delete(scheduled_operation["id"]) + self.mox.ReplayAll() + + karbor.scheduled_operation_delete(self.request, + scheduled_operation["id"]) + + def test_scheduled_operation_list(self): + scheduled_operation = self.scheduled_operations.list() + karborclient = self.stub_karborclient() + karborclient.scheduled_operations = self.mox.CreateMockAnything() + karborclient.scheduled_operations.list( + detailed=False, + search_opts=None, + marker=None, + limit=None, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(scheduled_operation) + self.mox.ReplayAll() + + ret_val = karbor.scheduled_operation_list(self.request) + self.assertEqual(len(scheduled_operation), len(ret_val)) + + def test_scheduled_operation_list_false(self): + scheduled_operation = self.scheduled_operations.list() + karborclient = self.stub_karborclient() + karborclient.scheduled_operations = self.mox.CreateMockAnything() + karborclient.scheduled_operations.list( + detailed=False, + search_opts=None, + marker=None, + limit=None, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(scheduled_operation) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = \ + karbor.scheduled_operation_list_paged(self.request, paginate=False) + self.assertEqual(len(scheduled_operation), len(ret_val)) + self.assertFalse(has_more_data) + self.assertFalse(has_prev_data) + + @override_settings(API_RESULT_PAGE_SIZE=4) + def test_scheduled_operation_list_paged_equal_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 4) + scd_operation = self.scheduled_operations.list() + karborclient = self.stub_karborclient() + karborclient.scheduled_operations = self.mox.CreateMockAnything() + karborclient.scheduled_operations.list( + detailed=False, + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(scd_operation) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = \ + karbor.scheduled_operation_list_paged(self.request, paginate=True) + self.assertEqual(page_size, len(ret_val)) + self.assertFalse(has_more_data) + self.assertFalse(has_prev_data) + + @override_settings(API_RESULT_PAGE_SIZE=20) + def test_scheduled_operation_list_paged_less_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 20) + scd_operation = self.scheduled_operations.list() + karborclient = self.stub_karborclient() + karborclient.scheduled_operations = self.mox.CreateMockAnything() + karborclient.scheduled_operations.list( + detailed=False, + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(scd_operation) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = \ + karbor.scheduled_operation_list_paged(self.request, paginate=True) + + self.assertEqual(len(scd_operation), len(ret_val)) + self.assertFalse(has_more_data) + self.assertFalse(has_prev_data) + + @override_settings(API_RESULT_PAGE_SIZE=1) + def test_scheduled_operation_list_paged_more_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 1) + scd_operation = self.scheduled_operations.list() + karborclient = self.stub_karborclient() + karborclient.scheduled_operations = self.mox.CreateMockAnything() + karborclient.scheduled_operations.list( + detailed=False, + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(scd_operation[:page_size + 1]) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = \ + karbor.scheduled_operation_list_paged(self.request, paginate=True) + + self.assertEqual(page_size, len(ret_val)) + self.assertTrue(has_more_data) + self.assertFalse(has_prev_data) + + def test_scheduled_operation_get(self): + scheduled_operation = self.scheduled_operations.first() + karborclient = self.stub_karborclient() + karborclient.scheduled_operations = self.mox.CreateMockAnything() + karborclient.scheduled_operations.get( + scheduled_operation["id"]).AndReturn(scheduled_operation) + self.mox.ReplayAll() + + ret_val = karbor.scheduled_operation_get(self.request, + "fake_scheduled_operation_1") + self.assertEqual(scheduled_operation["id"], ret_val["id"]) + + def test_restore_create(self): + restore = self.restores.first() + karborclient = self.stub_karborclient() + karborclient.restores = self.mox.CreateMockAnything() + karborclient.restores.create(restore["provider_id"], + restore["checkpoint_id"], + restore["restore_target"], + restore["parameters"]).AndReturn(restore) + self.mox.ReplayAll() + + ret_val = karbor.restore_create(self.request, + restore["provider_id"], + restore["checkpoint_id"], + restore["restore_target"], + restore["parameters"]) + self.assertEqual(restore["id"], ret_val["id"]) + + def test_restore_delete(self): + restore = self.restores.first() + karborclient = self.stub_karborclient() + karborclient.restores = self.mox.CreateMockAnything() + karborclient.restores.delete(restore["id"]).AndReturn(restore) + self.mox.ReplayAll() + + karbor.restore_delete(self.request, restore["id"]) + + def test_restore_list(self): + restores = self.restores.list() + karborclient = self.stub_karborclient() + karborclient.restores = self.mox.CreateMockAnything() + karborclient.restores.list(detailed=False, + search_opts=None, + marker=None, + limit=None, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(restores) + self.mox.ReplayAll() + + ret_val = karbor.restore_list(self.request) + self.assertEqual(len(restores), len(ret_val)) + + def test_restore_list_false(self): + restores = self.restores.list() + karborclient = self.stub_karborclient() + karborclient.restores = self.mox.CreateMockAnything() + karborclient.restores.list(detailed=False, + search_opts=None, + marker=None, + limit=None, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(restores) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = karbor.restore_list_paged( + self.request, paginate=False) + self.assertEqual(len(restores), len(ret_val)) + self.assertFalse(has_more_data) + self.assertFalse(has_prev_data) + + @override_settings(API_RESULT_PAGE_SIZE=4) + def test_restore_list_paged_equal_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 4) + restore_list = self.restores.list() + karborclient = self.stub_karborclient() + karborclient.restores = self.mox.CreateMockAnything() + karborclient.restores.list(detailed=False, + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(restore_list) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = karbor.restore_list_paged( + self.request, paginate=True) + self.assertEqual(page_size, len(ret_val)) + self.assertFalse(has_more_data) + self.assertFalse(has_prev_data) + + @override_settings(API_RESULT_PAGE_SIZE=20) + def test_restore_list_paged_less_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 20) + restore_list = self.restores.list() + karborclient = self.stub_karborclient() + karborclient.restores = self.mox.CreateMockAnything() + karborclient.restores.list(detailed=False, + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(restore_list) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = karbor.restore_list_paged( + self.request, paginate=True) + + self.assertEqual(len(restore_list), len(ret_val)) + self.assertFalse(has_more_data) + self.assertFalse(has_prev_data) + + @override_settings(API_RESULT_PAGE_SIZE=1) + def test_restore_list_paged_more_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 1) + restore_list = self.restores.list() + karborclient = self.stub_karborclient() + karborclient.restores = self.mox.CreateMockAnything() + karborclient.restores.list( + detailed=False, + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(restore_list[:page_size + 1]) + self.mox.ReplayAll() + ret_val, has_more_data, has_prev_data = karbor.restore_list_paged( + self.request, paginate=True) + + self.assertEqual(page_size, len(ret_val)) + self.assertTrue(has_more_data) + self.assertFalse(has_prev_data) + + def test_restore_get(self): + restore = self.restores.first() + karborclient = self.stub_karborclient() + karborclient.restores = self.mox.CreateMockAnything() + karborclient.restores.get(restore["id"]).AndReturn(restore) + self.mox.ReplayAll() + + ret_val = karbor.restore_get(self.request, restore["id"]) + self.assertEqual(restore["id"], ret_val["id"]) + + def test_protectable_list(self): + protectables_list = self.protectables_list.list() + karborclient = self.stub_karborclient() + karborclient.protectables = self.mox.CreateMockAnything() + karborclient.protectables.list().AndReturn(protectables_list) + self.mox.ReplayAll() + + ret_val = karbor.protectable_list(self.request) + self.assertEqual(len(protectables_list), len(ret_val)) + + def test_protectable_get(self): + protectable = self.protectables_show.list()[0] + karborclient = self.stub_karborclient() + karborclient.protectables = self.mox.CreateMockAnything() + karborclient.protectables.get("OS::Nova::Server" + ).AndReturn(protectable) + self.mox.ReplayAll() + + ret_val = karbor.protectable_get(self.request, + protectable_type="OS::Nova::Server") + self.assertEqual(protectable["name"], ret_val["name"]) + + def test_protectable_get_instance(self): + protectable = self.protectables_ins.list()[1] + karborclient = self.stub_karborclient() + karborclient.protectables = self.mox.CreateMockAnything() + karborclient.protectables.get_instance("OS::Nova::Server", + protectable["id"] + ).AndReturn(protectable) + self.mox.ReplayAll() + + ret_val = karbor.protectable_get_instance(self.request, + "OS::Nova::Server", + protectable["id"] + ) + self.assertEqual(protectable["name"], ret_val["name"]) + + def test_protectable_list_instances(self): + protectable = self.protectables_ins.list() + karborclient = self.stub_karborclient() + karborclient.protectables = self.mox.CreateMockAnything() + karborclient.protectables.list_instances( + protectable_type="OS::Nova::Server", + search_opts=None, + marker=None, + limit=None, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(protectable) + self.mox.ReplayAll() + + ret_val = karbor.protectable_list_instances( + self.request, protectable_type="OS::Nova::Server") + self.assertEqual(len(protectable), len(ret_val)) + + @override_settings(API_RESULT_PAGE_SIZE=4) + def test_protectable_list_instances_paged_equal_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 4) + protectable_list = self.protectables_ins.list() + karborclient = self.stub_karborclient() + karborclient.protectables = self.mox.CreateMockAnything() + karborclient.protectables.list_instances("OS::Nova::Server", + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None, + ).AndReturn(protectable_list) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = \ + karbor.protectable_list_instances_paged( + self.request, + paginate=True, + protectable_type="OS::Nova::Server") + self.assertEqual(page_size, len(ret_val)) + self.assertFalse(has_more_data) + self.assertFalse(has_prev_data) + + @override_settings(API_RESULT_PAGE_SIZE=20) + def test_protectable_list_instances_paged_less_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 20) + protectable_list = self.protectables_ins.list() + karborclient = self.stub_karborclient() + karborclient.protectables = self.mox.CreateMockAnything() + karborclient.protectables.list_instances("OS::Nova::Server", + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None, + ).AndReturn(protectable_list) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = \ + karbor.protectable_list_instances_paged( + self.request, + paginate=True, + protectable_type="OS::Nova::Server") + self.assertEqual(len(protectable_list), len(ret_val)) + self.assertFalse(has_more_data) + self.assertFalse(has_prev_data) + + @override_settings(API_RESULT_PAGE_SIZE=1) + def test_protectable_list_instances_paged_more_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 1) + protectable_list = self.protectables_ins.list() + karborclient = self.stub_karborclient() + karborclient.protectables = self.mox.CreateMockAnything() + karborclient.protectables.list_instances( + "OS::Nova::Server", + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None + ).AndReturn(protectable_list[:page_size + 1]) + self.mox.ReplayAll() + ret_val, has_more_data, has_prev_data = \ + karbor.protectable_list_instances_paged( + self.request, + paginate=True, + protectable_type="OS::Nova::Server") + + self.assertEqual(page_size, len(ret_val)) + self.assertTrue(has_more_data) + self.assertFalse(has_prev_data) + + def test_protectable_list_instances_false(self): + protectable = self.protectables_ins.list() + karborclient = self.stub_karborclient() + karborclient.protectables = self.mox.CreateMockAnything() + karborclient.protectables.list_instances( + "OS::Nova::Server", + search_opts=None, + marker=None, + limit=None, + sort_key=None, + sort_dir=None, + sort=None + ).AndReturn(protectable) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = \ + karbor.protectable_list_instances_paged( + self.request, + protectable_type="OS::Nova::Server") + self.assertEqual(len(protectable), len(ret_val)) + self.assertFalse(has_more_data) + self.assertFalse(has_prev_data) + + def test_provider_list(self): + providers = self.providers.list() + karborclient = self.stub_karborclient() + karborclient.providers = self.mox.CreateMockAnything() + karborclient.providers.list(detailed=False, + search_opts=None, + marker=None, + limit=None, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(providers) + self.mox.ReplayAll() + + ret_val = karbor.provider_list(self.request) + self.assertEqual(len(providers), len(ret_val)) + + def test_provider_list_paged_false(self): + providers = self.providers.list() + karborclient = self.stub_karborclient() + karborclient.providers = self.mox.CreateMockAnything() + karborclient.providers.list(detailed=False, + search_opts=None, + marker=None, + limit=None, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(providers) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = karbor.provider_list_paged( + self.request, paginate=False) + self.assertEqual(len(providers), len(ret_val)) + self.assertFalse(has_more_data) + self.assertFalse(has_prev_data) + + @override_settings(API_RESULT_PAGE_SIZE=4) + def test_provider_list_paged_equal_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 4) + providers = self.providers.list() + karborclient = self.stub_karborclient() + karborclient.providers = self.mox.CreateMockAnything() + karborclient.providers.list(detailed=False, + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(providers) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = karbor.provider_list_paged( + self.request, paginate=True) + self.assertEqual(page_size, len(ret_val)) + self.assertFalse(has_more_data) + self.assertFalse(has_prev_data) + + @override_settings(API_RESULT_PAGE_SIZE=20) + def test_provider_list_paged_less_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 20) + providers = self.providers.list() + karborclient = self.stub_karborclient() + karborclient.providers = self.mox.CreateMockAnything() + karborclient.providers.list(detailed=False, + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(providers) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = karbor.provider_list_paged( + self.request, paginate=True) + self.assertEqual(len(providers), len(ret_val)) + self.assertFalse(has_more_data) + self.assertFalse(has_prev_data) + + @override_settings(API_RESULT_PAGE_SIZE=1) + def test_provider_list_paged_more_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 1) + providers = self.providers.list() + karborclient = self.stub_karborclient() + karborclient.providers = self.mox.CreateMockAnything() + karborclient.providers.list( + detailed=False, + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(providers[:page_size + 1]) + self.mox.ReplayAll() + ret_val, has_more_data, has_prev_data = karbor.provider_list_paged( + self.request, paginate=True) + + self.assertEqual(page_size, len(ret_val)) + self.assertTrue(has_more_data) + self.assertFalse(has_prev_data) + + def test_provider_get(self): + provider = self.providers.first() + karborclient = self.stub_karborclient() + karborclient.providers = self.mox.CreateMockAnything() + karborclient.providers.get(provider["id"]).AndReturn(provider) + self.mox.ReplayAll() + + ret_provider = karbor.provider_get(self.request, + provider_id="fake_provider_id") + self.assertEqual(provider["name"], ret_provider["name"]) + + def test_checkpoint_create(self): + checkpoint = self.checkpoints.first() + karborclient = self.stub_karborclient() + karborclient.checkpoints = self.mox.CreateMockAnything() + karborclient.checkpoints.create( + checkpoint["provider_id"], + checkpoint["plan"]["plan_id"]).AndReturn(checkpoint) + self.mox.ReplayAll() + + ret_checkpoint = karbor.checkpoint_create( + self.request, + provider_id="fake_provider_id", + plan_id="fake_plan_id") + self.assertEqual(checkpoint["id"], ret_checkpoint["id"]) + + def test_checkpoint_delete(self): + checkpoint = self.checkpoints.first() + karborclient = self.stub_karborclient() + karborclient.checkpoints = self.mox.CreateMockAnything() + karborclient.checkpoints.delete(checkpoint["provider_id"], + checkpoint["id"]) + self.mox.ReplayAll() + + karbor.checkpoint_delete(self.request, + provider_id="fake_provider_id", + checkpoint_id="fake_checkpoint_id") + + def test_checkpoint_list(self): + checkpoints = self.checkpoints.list() + karborclient = self.stub_karborclient() + karborclient.checkpoints = self.mox.CreateMockAnything() + karborclient.checkpoints.list(provider_id=None, + search_opts=None, + marker=None, + limit=None, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(checkpoints) + self.mox.ReplayAll() + + ret_checkpoints = karbor.checkpoint_list(self.request) + self.assertEqual(len(checkpoints), len(ret_checkpoints)) + + def test_checkpoint_list_paged_false(self): + checkpoints = self.checkpoints.list() + karborclient = self.stub_karborclient() + karborclient.checkpoints = self.mox.CreateMockAnything() + karborclient.checkpoints.list(provider_id=None, + search_opts=None, + marker=None, + limit=None, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(checkpoints) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = karbor.checkpoint_list_paged( + self.request, paginate=False) + self.assertEqual(len(checkpoints), len(ret_val)) + + @override_settings(API_RESULT_PAGE_SIZE=4) + def test_checkpoint_list_paged_equal_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 4) + checkpoints = self.checkpoints.list() + karborclient = self.stub_karborclient() + karborclient.checkpoints = self.mox.CreateMockAnything() + karborclient.checkpoints.list(provider_id=None, + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(checkpoints) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = karbor.checkpoint_list_paged( + self.request, paginate=True) + self.assertEqual(page_size, len(ret_val)) + self.assertFalse(has_more_data) + self.assertFalse(has_prev_data) + + @override_settings(API_RESULT_PAGE_SIZE=20) + def test_checkpoint_list_paged_less_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 20) + checkpoints = self.checkpoints.list() + karborclient = self.stub_karborclient() + karborclient.checkpoints = self.mox.CreateMockAnything() + karborclient.checkpoints.list(provider_id=None, + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(checkpoints) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = karbor.checkpoint_list_paged( + self.request, paginate=True) + self.assertEqual(len(checkpoints), len(ret_val)) + self.assertFalse(has_more_data) + self.assertFalse(has_prev_data) + + @override_settings(API_RESULT_PAGE_SIZE=1) + def test_checkpoint_list_paged_more_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 1) + checkpoint2 = self.checkpoints.list() + karborclient = self.stub_karborclient() + karborclient.checkpoints = self.mox.CreateMockAnything() + karborclient.checkpoints.list( + provider_id=None, + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(checkpoint2[:page_size + 1]) + self.mox.ReplayAll() + ret_val, has_more_data, has_prev_data = karbor.checkpoint_list_paged( + self.request, paginate=True) + + self.assertEqual(page_size, len(ret_val)) + self.assertTrue(has_more_data) + self.assertFalse(has_prev_data) + + def test_checkpoint_get(self): + checkpoint = self.checkpoints.first() + karborclient = self.stub_karborclient() + karborclient.checkpoints = self.mox.CreateMockAnything() + karborclient.checkpoints.get(checkpoint["provider_id"], + checkpoint["id"]).AndReturn(checkpoint) + self.mox.ReplayAll() + + ret_checkpoint = karbor.checkpoint_get( + self.request, + provider_id="fake_provider_id", + checkpoint_id="fake_checkpoint_id") + self.assertEqual(checkpoint["id"], ret_checkpoint["id"]) + + def test_trigger_create(self): + trigger = self.triggers.first() + karborclient = self.stub_karborclient() + karborclient.triggers = self.mox.CreateMockAnything() + karborclient.triggers.create(trigger["name"], + trigger["type"], + trigger["properties"]).AndReturn(trigger) + self.mox.ReplayAll() + + ret_trigger = karbor.trigger_create(self.request, + trigger["name"], + trigger["type"], + trigger["properties"]) + self.assertEqual(trigger["id"], ret_trigger["id"]) + + def test_trigger_delete(self): + trigger = self.triggers.first() + karborclient = self.stub_karborclient() + karborclient.triggers = self.mox.CreateMockAnything() + karborclient.triggers.delete(trigger["id"]) + self.mox.ReplayAll() + + karbor.trigger_delete(self.request, trigger["id"]) + + def test_trigger_list(self): + ret_triggers = self.triggers.list() + karborclient = self.stub_karborclient() + karborclient.triggers = self.mox.CreateMockAnything() + karborclient.triggers.list(detailed=False, + limit=None, + marker=None, + search_opts=None, + sort=None, + sort_dir=None, + sort_key=None).AndReturn(ret_triggers) + self.mox.ReplayAll() + + ret_val = karbor.trigger_list(self.request) + self.assertEqual(len(ret_triggers), len(ret_val)) + + def test_trigger_list_paged_false(self): + ret_triggers = self.triggers.list() + karborclient = self.stub_karborclient() + karborclient.triggers = self.mox.CreateMockAnything() + karborclient.triggers.list(detailed=False, + search_opts=None, + marker=None, + limit=None, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(ret_triggers) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = karbor.trigger_list_paged( + self.request) + self.assertEqual(len(ret_triggers), len(ret_val)) + self.assertFalse(has_more_data) + self.assertFalse(has_prev_data) + + @override_settings(API_RESULT_PAGE_SIZE=4) + def test_trigger_list_paged_equal_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 4) + ret_triggers = self.triggers.list() + karborclient = self.stub_karborclient() + karborclient.triggers = self.mox.CreateMockAnything() + karborclient.triggers.list(detailed=False, + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(ret_triggers) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = karbor.trigger_list_paged( + self.request, paginate=True) + self.assertEqual(page_size, len(ret_val)) + self.assertFalse(has_more_data) + self.assertFalse(has_prev_data) + + @override_settings(API_RESULT_PAGE_SIZE=20) + def test_trigger_list_paged_less_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 20) + ret_triggers = self.triggers.list() + karborclient = self.stub_karborclient() + karborclient.triggers = self.mox.CreateMockAnything() + karborclient.triggers.list(detailed=False, + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(ret_triggers) + self.mox.ReplayAll() + + ret_val, has_more_data, has_prev_data = karbor.trigger_list_paged( + self.request, paginate=True) + self.assertEqual(len(ret_triggers), len(ret_val)) + self.assertFalse(has_more_data) + self.assertFalse(has_prev_data) + + @override_settings(API_RESULT_PAGE_SIZE=1) + def test_trigger_list_paged_more_page_size(self): + page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 1) + trigger2 = self.triggers.list() + karborclient = self.stub_karborclient() + karborclient.triggers = self.mox.CreateMockAnything() + karborclient.triggers.list( + detailed=False, + search_opts=None, + marker=None, + limit=page_size + 1, + sort_key=None, + sort_dir=None, + sort=None).AndReturn(trigger2[:page_size + 1]) + self.mox.ReplayAll() + ret_val, has_more_data, has_prev_data = karbor.trigger_list_paged( + self.request, paginate=True) + + self.assertEqual(page_size, len(ret_val)) + self.assertTrue(has_more_data) + self.assertFalse(has_prev_data) + + def test_trigger_get(self): + trigger = self.triggers.first() + karborclient = self.stub_karborclient() + karborclient.triggers = self.mox.CreateMockAnything() + karborclient.triggers.get(trigger["id"]).AndReturn(trigger) + self.mox.ReplayAll() + + ret_trigger = karbor.trigger_get(self.request, + trigger_id="fake_trigger_id") + self.assertEqual(trigger["id"], ret_trigger["id"]) diff --git a/smaug_dashboard/test/helpers.py b/karbor_dashboard/test/helpers.py similarity index 59% rename from smaug_dashboard/test/helpers.py rename to karbor_dashboard/test/helpers.py index 069d28f..070e064 100644 --- a/smaug_dashboard/test/helpers.py +++ b/karbor_dashboard/test/helpers.py @@ -12,19 +12,19 @@ # License for the specific language governing permissions and limitations # under the License. +from karbor_dashboard import api +from karbor_dashboard.test import test_data +from karborclient.v1 import client as karbor_client from openstack_dashboard.test import helpers -from smaug_dashboard import api -from smaug_dashboard.test import test_data -from smaugclient.v1 import client as smaug_client class APITestCase(helpers.APITestCase): - """Extends the base Horizon APITestCase for smaugclient""" + """Extends the base Horizon APITestCase for karborclient""" def setUp(self): super(APITestCase, self).setUp() - self._original_smaugclient = api.smaug.smaugclient - api.smaug.smaugclient = lambda request: self.stub_smaugclient() + self._original_karborclient = api.karbor.karborclient + api.karbor.karborclient = lambda request: self.stub_karborclient() def _setup_test_data(self): super(APITestCase, self)._setup_test_data() @@ -32,10 +32,10 @@ class APITestCase(helpers.APITestCase): def tearDown(self): super(APITestCase, self).tearDown() - api.smaug.smaugclient = self._original_smaugclient + api.karbor.karborclient = self._original_karborclient - def stub_smaugclient(self): - if not hasattr(self, "smaugclient"): - self.mox.StubOutWithMock(smaug_client, 'Client') - self.smaugclient = self.mox.CreateMock(smaug_client.Client) - return self.smaugclient + def stub_karborclient(self): + if not hasattr(self, "karborclient"): + self.mox.StubOutWithMock(karbor_client, 'Client') + self.karborclient = self.mox.CreateMock(karbor_client.Client) + return self.karborclient diff --git a/smaug_dashboard/test/integration_tests/__init__.py b/karbor_dashboard/test/integration_tests/__init__.py similarity index 100% rename from smaug_dashboard/test/integration_tests/__init__.py rename to karbor_dashboard/test/integration_tests/__init__.py diff --git a/smaug_dashboard/test/settings.py b/karbor_dashboard/test/settings.py similarity index 97% rename from smaug_dashboard/test/settings.py rename to karbor_dashboard/test/settings.py index 4478f80..23585e1 100644 --- a/smaug_dashboard/test/settings.py +++ b/karbor_dashboard/test/settings.py @@ -33,7 +33,7 @@ STATIC_URL = '/static/' SECRET_KEY = secret_key.generate_or_read_from_file( os.path.join(TEST_DIR, '.secret_key_store')) -ROOT_URLCONF = 'smaug_dashboard.test.urls' +ROOT_URLCONF = 'karbor_dashboard.test.urls' TEMPLATE_DIRS = ( os.path.join(TEST_DIR, 'templates'), ) @@ -80,7 +80,7 @@ from openstack_dashboard.utils import settings dashboard_module_names = [ 'openstack_dashboard.enabled', 'openstack_dashboard.local.enabled', - 'smaug_dashboard.enabled', + 'karbor_dashboard.enabled', ] dashboard_modules = [] # All dashboards must be enabled for the namespace to get registered, which is @@ -151,7 +151,7 @@ LOGGING['loggers']['selenium'] = { 'propagate': False, } -LOGGING['loggers']['smaug_dashboard'] = { +LOGGING['loggers']['karbor_dashboard'] = { 'handlers': ['test'], 'propagate': False, } diff --git a/smaug_dashboard/test/test_data.py b/karbor_dashboard/test/test_data.py similarity index 100% rename from smaug_dashboard/test/test_data.py rename to karbor_dashboard/test/test_data.py diff --git a/smaug_dashboard/test/urls.py b/karbor_dashboard/test/urls.py similarity index 100% rename from smaug_dashboard/test/urls.py rename to karbor_dashboard/test/urls.py diff --git a/smaug_dashboard/triggers/__init__.py b/karbor_dashboard/triggers/__init__.py similarity index 100% rename from smaug_dashboard/triggers/__init__.py rename to karbor_dashboard/triggers/__init__.py diff --git a/smaug_dashboard/triggers/forms.py b/karbor_dashboard/triggers/forms.py similarity index 88% rename from smaug_dashboard/triggers/forms.py rename to karbor_dashboard/triggers/forms.py index 7e9c700..2229b0d 100644 --- a/smaug_dashboard/triggers/forms.py +++ b/karbor_dashboard/triggers/forms.py @@ -19,8 +19,8 @@ from horizon import exceptions from horizon import forms as horizon_forms from horizon import messages -from smaug_dashboard.api import smaug as smaugclient -from smaug_dashboard.triggers import utils +from karbor_dashboard.api import karbor as karborclient +from karbor_dashboard.triggers import utils class CreateTriggerForm(horizon_forms.SelfHandlingForm): @@ -66,10 +66,10 @@ class CreateTriggerForm(horizon_forms.SelfHandlingForm): def handle(self, request, data): try: data_properties = utils.CrontabUtil.convert_to_crontab(data) - new_trigger = smaugclient.trigger_create(request, - data["name"], - data["type"], - data_properties) + new_trigger = karborclient.trigger_create(request, + data["name"], + data["type"], + data_properties) messages.success(request, _("Trigger created successfully.")) return new_trigger diff --git a/smaug_dashboard/triggers/panel.py b/karbor_dashboard/triggers/panel.py similarity index 95% rename from smaug_dashboard/triggers/panel.py rename to karbor_dashboard/triggers/panel.py index 26dc4d3..1fe69d3 100644 --- a/smaug_dashboard/triggers/panel.py +++ b/karbor_dashboard/triggers/panel.py @@ -15,7 +15,7 @@ from django.utils.translation import ugettext_lazy as _ import horizon -from smaug_dashboard import dashboard +from karbor_dashboard import dashboard class Triggers(horizon.Panel): diff --git a/smaug_dashboard/triggers/tables.py b/karbor_dashboard/triggers/tables.py similarity index 91% rename from smaug_dashboard/triggers/tables.py rename to karbor_dashboard/triggers/tables.py index 0d3379c..4c6f70c 100644 --- a/smaug_dashboard/triggers/tables.py +++ b/karbor_dashboard/triggers/tables.py @@ -17,13 +17,13 @@ from django.utils.translation import ungettext_lazy from horizon import tables -from smaug_dashboard.api import smaug as smaugclient +from karbor_dashboard.api import karbor as karborclient class CreateTriggerLink(tables.LinkAction): name = "create" verbose_name = _("Create Trigger") - url = "horizon:smaug:triggers:create" + url = "horizon:karbor:triggers:create" classes = ("ajax-modal",) icon = "plus" @@ -48,7 +48,7 @@ class DeleteTriggersAction(tables.DeleteAction): return True def delete(self, request, obj_id): - smaugclient.trigger_delete(request, obj_id) + karborclient.trigger_delete(request, obj_id) class TriggerFilterAction(tables.FilterAction): @@ -61,7 +61,7 @@ class TriggerFilterAction(tables.FilterAction): class TriggersTable(tables.DataTable): name = tables.Column('name', - link="horizon:smaug:triggers:detail", + link="horizon:karbor:triggers:detail", verbose_name=_('Name')) type = tables.Column('type', verbose_name=_('Type')) diff --git a/smaug_dashboard/triggers/urls.py b/karbor_dashboard/triggers/urls.py similarity index 95% rename from smaug_dashboard/triggers/urls.py rename to karbor_dashboard/triggers/urls.py index 2f4e496..c228538 100644 --- a/smaug_dashboard/triggers/urls.py +++ b/karbor_dashboard/triggers/urls.py @@ -13,7 +13,7 @@ # under the License. from django.conf.urls import url -from smaug_dashboard.triggers import views +from karbor_dashboard.triggers import views urlpatterns = [ diff --git a/smaug_dashboard/triggers/utils.py b/karbor_dashboard/triggers/utils.py similarity index 100% rename from smaug_dashboard/triggers/utils.py rename to karbor_dashboard/triggers/utils.py diff --git a/smaug_dashboard/triggers/views.py b/karbor_dashboard/triggers/views.py similarity index 85% rename from smaug_dashboard/triggers/views.py rename to karbor_dashboard/triggers/views.py index 7b59938..fefdc92 100644 --- a/smaug_dashboard/triggers/views.py +++ b/karbor_dashboard/triggers/views.py @@ -22,10 +22,10 @@ from horizon import tables as horizon_tables from horizon.utils import memoized from horizon import views as horizon_views -from smaug_dashboard.api import smaug as smaugclient -from smaug_dashboard.triggers import forms -from smaug_dashboard.triggers import tables -from smaug_dashboard.triggers import utils +from karbor_dashboard.api import karbor as karborclient +from karbor_dashboard.triggers import forms +from karbor_dashboard.triggers import tables +from karbor_dashboard.triggers import utils class IndexView(horizon_tables.DataTableView): @@ -52,7 +52,7 @@ class IndexView(horizon_tables.DataTableView): reversed_order = prev_marker is not None triggers = [] try: - triggers, self._more, self._prev = smaugclient.trigger_list_paged( + triggers, self._more, self._prev = karborclient.trigger_list_paged( request, None, marker=marker, paginate=True, @@ -73,8 +73,8 @@ class CreateView(horizon_forms.ModalFormView): form_id = "create_trigger_form" form_class = forms.CreateTriggerForm submit_label = _("Create Trigger") - submit_url = reverse_lazy("horizon:smaug:triggers:create") - success_url = reverse_lazy('horizon:smaug:triggers:index') + submit_url = reverse_lazy("horizon:karbor:triggers:create") + success_url = reverse_lazy('horizon:karbor:triggers:index') page_title = _("Create Trigger") @@ -96,7 +96,7 @@ class DetailView(horizon_views.HorizonTemplateView): setattr(trigger, key, value) context["trigger"] = trigger - context["url"] = reverse("horizon:smaug:triggers:index") + context["url"] = reverse("horizon:karbor:triggers:index") context["actions"] = table.render_row_actions(trigger) return context @@ -104,10 +104,10 @@ class DetailView(horizon_views.HorizonTemplateView): def get_data(self): try: trigger_id = self.kwargs['trigger_id'] - trigger = smaugclient.trigger_get(self.request, trigger_id) + trigger = karborclient.trigger_get(self.request, trigger_id) except Exception: exceptions.handle( self.request, _('Unable to retrieve trigger details.'), - redirect=reverse("horizon:smaug:triggers:index")) + redirect=reverse("horizon:karbor:triggers:index")) return trigger diff --git a/smaug_dashboard/version.py b/karbor_dashboard/version.py similarity index 92% rename from smaug_dashboard/version.py rename to karbor_dashboard/version.py index 7291f93..27df847 100644 --- a/smaug_dashboard/version.py +++ b/karbor_dashboard/version.py @@ -16,5 +16,5 @@ from pbr import version -version_info = version.VersionInfo('smaug-dashboard') +version_info = version.VersionInfo('karbor-dashboard') __version__ = version_info.cached_version_string() diff --git a/smaug_dashboard/views.py b/karbor_dashboard/views.py similarity index 91% rename from smaug_dashboard/views.py rename to karbor_dashboard/views.py index 00faab4..b7bf7ca 100644 --- a/smaug_dashboard/views.py +++ b/karbor_dashboard/views.py @@ -16,4 +16,4 @@ import horizon def get_user_home(user): - return horizon.get_dashboard('smaug').get_absolute_url() + return horizon.get_dashboard('karbor').get_absolute_url() diff --git a/manage.py b/manage.py index 6ca72e5..ed4dc1a 100755 --- a/manage.py +++ b/manage.py @@ -19,5 +19,5 @@ from django.core.management import execute_from_command_line # noqa if __name__ == "__main__": os.environ.setdefault("DJANGO_SETTINGS_MODULE", - "smaug_dashboard.test.settings") + "karbor_dashboard.test.settings") execute_from_command_line(sys.argv) diff --git a/requirements.txt b/requirements.txt index 594c457..893567d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -36,4 +36,3 @@ XStatic-Rickshaw>=1.5.0 # BSD License (prior) XStatic-smart-table>=1.4.5.3 # MIT License XStatic-Spin>=1.2.5.2 # MIT License XStatic-term.js>=0.0.4 # MIT License -python-smaugclient>=0.0.5 # Apache-2.0 diff --git a/run_tests.sh b/run_tests.sh index d0fec38..5140ac2 100755 --- a/run_tests.sh +++ b/run_tests.sh @@ -57,7 +57,7 @@ root=`pwd -P` venv=$root/.venv venv_env_version=$venv/environments with_venv=tools/with_venv.sh -included_dirs="smaug_dashboard" +included_dirs="karbor_dashboard" always_venv=0 backup_env=0 @@ -187,7 +187,7 @@ function warn_on_flake8_without_venv { function run_pep8 { echo "Running flake8 ..." warn_on_flake8_without_venv - DJANGO_SETTINGS_MODULE=smaug_dashboard.test.settings ${command_wrapper} flake8 + DJANGO_SETTINGS_MODULE=karbor_dashboard.test.settings ${command_wrapper} flake8 } function run_pep8_changed { @@ -200,13 +200,13 @@ function run_pep8_changed { files=$(git diff --name-only $base_commit | tr '\n' ' ') echo "Running flake8 on ${files}" warn_on_flake8_without_venv - diff -u --from-file /dev/null ${files} | DJANGO_SETTINGS_MODULE=smaug_dashboard.test.settings ${command_wrapper} flake8 --diff + diff -u --from-file /dev/null ${files} | DJANGO_SETTINGS_MODULE=karbor_dashboard.test.settings ${command_wrapper} flake8 --diff exit } function run_sphinx { echo "Building sphinx..." - DJANGO_SETTINGS_MODULE=smaug_dashboard.test.settings ${command_wrapper} python setup.py build_sphinx + DJANGO_SETTINGS_MODULE=karbor_dashboard.test.settings ${command_wrapper} python setup.py build_sphinx echo "Build complete." } @@ -340,7 +340,7 @@ function run_tests { fi if [ $with_selenium -eq 0 -a $integration -eq 0 ]; then - testopts="$testopts --exclude-dir=smaug_dashboard/test/integration_tests" + testopts="$testopts --exclude-dir=karbor_dashboard/test/integration_tests" fi if [ $selenium_headless -eq 1 ]; then @@ -360,12 +360,12 @@ function run_tests_subset { } function run_tests_all { - echo "Running Smaug Dashboard tests" - export NOSE_XUNIT_FILE=smaug_dashboard/nosetests.xml + echo "Running Karbor Dashboard tests" + export NOSE_XUNIT_FILE=karbor_dashboard/nosetests.xml if [ "$NOSE_WITH_HTML_OUTPUT" = '1' ]; then export NOSE_HTML_OUT_FILE='dashboard_nose_results.html' fi - ${command_wrapper} ${coverage_run} $root/manage.py test smaug_dashboard --settings=openstack_dashboard.test.settings $testopts + ${command_wrapper} ${coverage_run} $root/manage.py test karbor_dashboard --settings=openstack_dashboard.test.settings $testopts # get results of the openstack_dashboard tests DASHBOARD_RESULT=$? @@ -420,21 +420,21 @@ function babel_extract { function run_makemessages { - echo -n "smaug dashboard: " - cd smaug_dashboard + echo -n "karbor dashboard: " + cd karbor_dashboard babel_extract django - SMAUG_PY_RESULT=$? + KARBOR_PY_RESULT=$? - echo -n "smaug dashboard javascript: " + echo -n "karbor dashboard javascript: " babel_extract djangojs - SMAUG_JS_RESULT=$? + KARBOR_JS_RESULT=$? cd .. if [ $check_only -eq 1 ]; then - rm smaug_dashboard/locale/django*.pot + rm karbor_dashboard/locale/django*.pot fi - exit $(($SMAUG_PY_RESULT || $SMAUG_JS_RESULT)) + exit $(($KARBOR_PY_RESULT || $KARBOR_JS_RESULT)) } function run_compilemessages { diff --git a/setup.cfg b/setup.cfg index 2fbf07a..f79df10 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,7 +1,7 @@ [metadata] -name = smaug-dashboard +name = karbor-dashboard version = 0.0.1 -summary = Smaug Dashboard +summary = Karbor Dashboard description-file = README.rst author = OpenStack @@ -21,7 +21,7 @@ classifier = [files] packages = - smaug_dashboard + karbor_dashboard [build_sphinx] source-dir = doc/source diff --git a/smaug_dashboard/test/api_tests/api_tests.py b/smaug_dashboard/test/api_tests/api_tests.py deleted file mode 100644 index 623f887..0000000 --- a/smaug_dashboard/test/api_tests/api_tests.py +++ /dev/null @@ -1,993 +0,0 @@ -# Copyright (c) 2016 Huawei, Inc. -# -# 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 django.conf import settings -from django.test.utils import override_settings - -from smaug_dashboard.api import smaug -from smaug_dashboard.test import helpers as test - - -class SmaugApiTests(test.APITestCase): - def test_plan_get(self): - plan = self.plans.first() - smaugclient = self.stub_smaugclient() - smaugclient.plans = self.mox.CreateMockAnything() - smaugclient.plans.get(plan["id"]).AndReturn(plan) - self.mox.ReplayAll() - - ret_plan = smaug.plan_get(self.request, - plan_id='fake_plan_id1') - self.assertEqual(plan["id"], ret_plan["id"]) - - def test_plan_create(self): - plan = self.plans.first() - fake_resources = plan["resources"] - fake_parameters = plan["parameters"] - smaugclient = self.stub_smaugclient() - smaugclient.plans = self.mox.CreateMockAnything() - smaugclient.plans.create(plan["name"], plan["provider_id"], - plan["resources"], - plan["parameters"]).AndReturn(plan) - self.mox.ReplayAll() - - ret_plan = smaug.plan_create(self.request, - name="fake_name_1", - provider_id="fake_provider_id1", - resources=fake_resources, - parameters=fake_parameters) - self.assertEqual(len(plan), len(ret_plan)) - - def test_plan_delete(self): - plan = self.plans.first() - smaugclient = self.stub_smaugclient() - smaugclient.plans = self.mox.CreateMockAnything() - smaugclient.plans.delete(plan["id"]) - self.mox.ReplayAll() - - smaug.plan_delete(self.request, - plan_id="fake_plan_id1") - - def test_plan_update(self): - plan = self.plans.first() - plan2 = self.plans.list()[0] - data = {"name": "fake_name_new"} - smaugclient = self.stub_smaugclient() - smaugclient.plans = self.mox.CreateMockAnything() - smaugclient.plans.update(plan["id"], data).AndReturn(plan2) - self.mox.ReplayAll() - - ret_plan = smaug.plan_update(self.request, - plan_id="fake_plan_id1", - data=data) - self.assertEqual(plan["name"], ret_plan["name"]) - - def test_plan_list(self): - plans = self.plans.list() - smaugclient = self.stub_smaugclient() - smaugclient.plans = self.mox.CreateMockAnything() - smaugclient.plans.list(detailed=False, - search_opts=None, - marker=None, - limit=None, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(plans) - self.mox.ReplayAll() - - ret_list = smaug.plan_list(self.request) - self.assertEqual(len(plans), len(ret_list)) - - @override_settings(API_RESULT_PAGE_SIZE=4) - def test_plan_list_paged_equal_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 4) - - plan = self.plans.list() - smaugclient = self.stub_smaugclient() - smaugclient.plans = self.mox.CreateMockAnything() - smaugclient.plans.list(detailed=False, - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(plan) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = smaug.plan_list_paged( - self.request, paginate=True) - self.assertEqual(page_size, len(ret_val)) - self.assertFalse(has_more_data) - self.assertFalse(has_prev_data) - - @override_settings(API_RESULT_PAGE_SIZE=20) - def test_plan_list_paged_less_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 20) - plan = self.plans.list() - smaugclient = self.stub_smaugclient() - smaugclient.plans = self.mox.CreateMockAnything() - smaugclient.plans.list(detailed=False, - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(plan) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = smaug.plan_list_paged( - self.request, paginate=True) - - self.assertEqual(len(plan), len(ret_val)) - self.assertFalse(has_more_data) - self.assertFalse(has_prev_data) - - @override_settings(API_RESULT_PAGE_SIZE=1) - def test_plan_list_paged_more_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 1) - plan = self.plans.list() - smaugclient = self.stub_smaugclient() - smaugclient.plans = self.mox.CreateMockAnything() - smaugclient.plans.list(detailed=False, - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(plan[:page_size + 1]) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = smaug.plan_list_paged( - self.request, paginate=True) - - self.assertEqual(page_size, len(ret_val)) - self.assertTrue(has_more_data) - self.assertFalse(has_prev_data) - - def test_plan_list_paged_false(self): - plans = self.plans.list() - smaugclient = self.stub_smaugclient() - smaugclient.plans = self.mox.CreateMockAnything() - smaugclient.plans.list(detailed=False, - search_opts=None, - marker=None, - limit=None, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(plans) - self.mox.ReplayAll() - - plans, has_more_data, has_prev_data = smaug.plan_list_paged( - self.request) - self.assertEqual(len(plans), len(plans)) - - def test_scheduled_operation_create(self): - scheduled_operation = self.scheduled_operations.first() - operation_definition = {"trigger_id": "fake_trigger_id1", - "plan_id": "fake_plan_id"} - smaugclient = self.stub_smaugclient() - smaugclient.scheduled_operations = self.mox.CreateMockAnything() - smaugclient.scheduled_operations.create( - "My-scheduled-operation", - "protect", - "fake_trigger_id1", - operation_definition).AndReturn(scheduled_operation) - self.mox.ReplayAll() - - ret_so = smaug.scheduled_operation_create( - self.request, - name="My-scheduled-operation", - operation_type="protect", - trigger_id="fake_trigger_id1", - operation_definition=operation_definition) - self.assertEqual(scheduled_operation["id"], ret_so["id"]) - - def test_scheduled_operation_delete(self): - scheduled_operation = self.scheduled_operations.first() - smaugclient = self.stub_smaugclient() - smaugclient.scheduled_operations = self.mox.CreateMockAnything() - smaugclient.scheduled_operations.delete(scheduled_operation["id"]) - self.mox.ReplayAll() - - smaug.scheduled_operation_delete(self.request, - scheduled_operation["id"]) - - def test_scheduled_operation_list(self): - scheduled_operation = self.scheduled_operations.list() - smaugclient = self.stub_smaugclient() - smaugclient.scheduled_operations = self.mox.CreateMockAnything() - smaugclient.scheduled_operations.list( - detailed=False, - search_opts=None, - marker=None, - limit=None, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(scheduled_operation) - self.mox.ReplayAll() - - ret_val = smaug.scheduled_operation_list(self.request) - self.assertEqual(len(scheduled_operation), len(ret_val)) - - def test_scheduled_operation_list_false(self): - scheduled_operation = self.scheduled_operations.list() - smaugclient = self.stub_smaugclient() - smaugclient.scheduled_operations = self.mox.CreateMockAnything() - smaugclient.scheduled_operations.list( - detailed=False, - search_opts=None, - marker=None, - limit=None, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(scheduled_operation) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = \ - smaug.scheduled_operation_list_paged(self.request, paginate=False) - self.assertEqual(len(scheduled_operation), len(ret_val)) - self.assertFalse(has_more_data) - self.assertFalse(has_prev_data) - - @override_settings(API_RESULT_PAGE_SIZE=4) - def test_scheduled_operation_list_paged_equal_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 4) - scd_operation = self.scheduled_operations.list() - smaugclient = self.stub_smaugclient() - smaugclient.scheduled_operations = self.mox.CreateMockAnything() - smaugclient.scheduled_operations.list( - detailed=False, - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(scd_operation) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = \ - smaug.scheduled_operation_list_paged(self.request, paginate=True) - self.assertEqual(page_size, len(ret_val)) - self.assertFalse(has_more_data) - self.assertFalse(has_prev_data) - - @override_settings(API_RESULT_PAGE_SIZE=20) - def test_scheduled_operation_list_paged_less_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 20) - scd_operation = self.scheduled_operations.list() - smaugclient = self.stub_smaugclient() - smaugclient.scheduled_operations = self.mox.CreateMockAnything() - smaugclient.scheduled_operations.list( - detailed=False, - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(scd_operation) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = \ - smaug.scheduled_operation_list_paged(self.request, paginate=True) - - self.assertEqual(len(scd_operation), len(ret_val)) - self.assertFalse(has_more_data) - self.assertFalse(has_prev_data) - - @override_settings(API_RESULT_PAGE_SIZE=1) - def test_scheduled_operation_list_paged_more_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 1) - scd_operation = self.scheduled_operations.list() - smaugclient = self.stub_smaugclient() - smaugclient.scheduled_operations = self.mox.CreateMockAnything() - smaugclient.scheduled_operations.list( - detailed=False, - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(scd_operation[:page_size + 1]) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = \ - smaug.scheduled_operation_list_paged(self.request, paginate=True) - - self.assertEqual(page_size, len(ret_val)) - self.assertTrue(has_more_data) - self.assertFalse(has_prev_data) - - def test_scheduled_operation_get(self): - scheduled_operation = self.scheduled_operations.first() - smaugclient = self.stub_smaugclient() - smaugclient.scheduled_operations = self.mox.CreateMockAnything() - smaugclient.scheduled_operations.get( - scheduled_operation["id"]).AndReturn(scheduled_operation) - self.mox.ReplayAll() - - ret_val = smaug.scheduled_operation_get(self.request, - "fake_scheduled_operation_1") - self.assertEqual(scheduled_operation["id"], ret_val["id"]) - - def test_restore_create(self): - restore = self.restores.first() - smaugclient = self.stub_smaugclient() - smaugclient.restores = self.mox.CreateMockAnything() - smaugclient.restores.create(restore["provider_id"], - restore["checkpoint_id"], - restore["restore_target"], - restore["parameters"]).AndReturn(restore) - self.mox.ReplayAll() - - ret_val = smaug.restore_create(self.request, - restore["provider_id"], - restore["checkpoint_id"], - restore["restore_target"], - restore["parameters"]) - self.assertEqual(restore["id"], ret_val["id"]) - - def test_restore_delete(self): - restore = self.restores.first() - smaugclient = self.stub_smaugclient() - smaugclient.restores = self.mox.CreateMockAnything() - smaugclient.restores.delete(restore["id"]).AndReturn(restore) - self.mox.ReplayAll() - - smaug.restore_delete(self.request, restore["id"]) - - def test_restore_list(self): - restores = self.restores.list() - smaugclient = self.stub_smaugclient() - smaugclient.restores = self.mox.CreateMockAnything() - smaugclient.restores.list(detailed=False, - search_opts=None, - marker=None, - limit=None, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(restores) - self.mox.ReplayAll() - - ret_val = smaug.restore_list(self.request) - self.assertEqual(len(restores), len(ret_val)) - - def test_restore_list_false(self): - restores = self.restores.list() - smaugclient = self.stub_smaugclient() - smaugclient.restores = self.mox.CreateMockAnything() - smaugclient.restores.list(detailed=False, - search_opts=None, - marker=None, - limit=None, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(restores) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = smaug.restore_list_paged( - self.request, paginate=False) - self.assertEqual(len(restores), len(ret_val)) - self.assertFalse(has_more_data) - self.assertFalse(has_prev_data) - - @override_settings(API_RESULT_PAGE_SIZE=4) - def test_restore_list_paged_equal_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 4) - restore_list = self.restores.list() - smaugclient = self.stub_smaugclient() - smaugclient.restores = self.mox.CreateMockAnything() - smaugclient.restores.list(detailed=False, - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(restore_list) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = smaug.restore_list_paged( - self.request, paginate=True) - self.assertEqual(page_size, len(ret_val)) - self.assertFalse(has_more_data) - self.assertFalse(has_prev_data) - - @override_settings(API_RESULT_PAGE_SIZE=20) - def test_restore_list_paged_less_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 20) - restore_list = self.restores.list() - smaugclient = self.stub_smaugclient() - smaugclient.restores = self.mox.CreateMockAnything() - smaugclient.restores.list(detailed=False, - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(restore_list) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = smaug.restore_list_paged( - self.request, paginate=True) - - self.assertEqual(len(restore_list), len(ret_val)) - self.assertFalse(has_more_data) - self.assertFalse(has_prev_data) - - @override_settings(API_RESULT_PAGE_SIZE=1) - def test_restore_list_paged_more_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 1) - restore_list = self.restores.list() - smaugclient = self.stub_smaugclient() - smaugclient.restores = self.mox.CreateMockAnything() - smaugclient.restores.list( - detailed=False, - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(restore_list[:page_size + 1]) - self.mox.ReplayAll() - ret_val, has_more_data, has_prev_data = smaug.restore_list_paged( - self.request, paginate=True) - - self.assertEqual(page_size, len(ret_val)) - self.assertTrue(has_more_data) - self.assertFalse(has_prev_data) - - def test_restore_get(self): - restore = self.restores.first() - smaugclient = self.stub_smaugclient() - smaugclient.restores = self.mox.CreateMockAnything() - smaugclient.restores.get(restore["id"]).AndReturn(restore) - self.mox.ReplayAll() - - ret_val = smaug.restore_get(self.request, restore["id"]) - self.assertEqual(restore["id"], ret_val["id"]) - - def test_protectable_list(self): - protectables_list = self.protectables_list.list() - smaugclient = self.stub_smaugclient() - smaugclient.protectables = self.mox.CreateMockAnything() - smaugclient.protectables.list().AndReturn(protectables_list) - self.mox.ReplayAll() - - ret_val = smaug.protectable_list(self.request) - self.assertEqual(len(protectables_list), len(ret_val)) - - def test_protectable_get(self): - protectable = self.protectables_show.list()[0] - smaugclient = self.stub_smaugclient() - smaugclient.protectables = self.mox.CreateMockAnything() - smaugclient.protectables.get("OS::Nova::Server").AndReturn(protectable) - self.mox.ReplayAll() - - ret_val = smaug.protectable_get(self.request, - protectable_type="OS::Nova::Server") - self.assertEqual(protectable["name"], ret_val["name"]) - - def test_protectable_get_instance(self): - protectable = self.protectables_ins.list()[1] - smaugclient = self.stub_smaugclient() - smaugclient.protectables = self.mox.CreateMockAnything() - smaugclient.protectables.get_instance("OS::Nova::Server", - protectable["id"] - ).AndReturn(protectable) - self.mox.ReplayAll() - - ret_val = smaug.protectable_get_instance(self.request, - "OS::Nova::Server", - protectable["id"] - ) - self.assertEqual(protectable["name"], ret_val["name"]) - - def test_protectable_list_instances(self): - protectable = self.protectables_ins.list() - smaugclient = self.stub_smaugclient() - smaugclient.protectables = self.mox.CreateMockAnything() - smaugclient.protectables.list_instances( - protectable_type="OS::Nova::Server", - search_opts=None, - marker=None, - limit=None, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(protectable) - self.mox.ReplayAll() - - ret_val = smaug.protectable_list_instances( - self.request, protectable_type="OS::Nova::Server") - self.assertEqual(len(protectable), len(ret_val)) - - @override_settings(API_RESULT_PAGE_SIZE=4) - def test_protectable_list_instances_paged_equal_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 4) - protectable_list = self.protectables_ins.list() - smaugclient = self.stub_smaugclient() - smaugclient.protectables = self.mox.CreateMockAnything() - smaugclient.protectables.list_instances("OS::Nova::Server", - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None, - ).AndReturn(protectable_list) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = \ - smaug.protectable_list_instances_paged( - self.request, - paginate=True, - protectable_type="OS::Nova::Server") - self.assertEqual(page_size, len(ret_val)) - self.assertFalse(has_more_data) - self.assertFalse(has_prev_data) - - @override_settings(API_RESULT_PAGE_SIZE=20) - def test_protectable_list_instances_paged_less_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 20) - protectable_list = self.protectables_ins.list() - smaugclient = self.stub_smaugclient() - smaugclient.protectables = self.mox.CreateMockAnything() - smaugclient.protectables.list_instances("OS::Nova::Server", - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None, - ).AndReturn(protectable_list) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = \ - smaug.protectable_list_instances_paged( - self.request, - paginate=True, - protectable_type="OS::Nova::Server") - self.assertEqual(len(protectable_list), len(ret_val)) - self.assertFalse(has_more_data) - self.assertFalse(has_prev_data) - - @override_settings(API_RESULT_PAGE_SIZE=1) - def test_protectable_list_instances_paged_more_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 1) - protectable_list = self.protectables_ins.list() - smaugclient = self.stub_smaugclient() - smaugclient.protectables = self.mox.CreateMockAnything() - smaugclient.protectables.list_instances( - "OS::Nova::Server", - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None - ).AndReturn(protectable_list[:page_size + 1]) - self.mox.ReplayAll() - ret_val, has_more_data, has_prev_data = \ - smaug.protectable_list_instances_paged( - self.request, - paginate=True, - protectable_type="OS::Nova::Server") - - self.assertEqual(page_size, len(ret_val)) - self.assertTrue(has_more_data) - self.assertFalse(has_prev_data) - - def test_protectable_list_instances_false(self): - protectable = self.protectables_ins.list() - smaugclient = self.stub_smaugclient() - smaugclient.protectables = self.mox.CreateMockAnything() - smaugclient.protectables.list_instances( - "OS::Nova::Server", - search_opts=None, - marker=None, - limit=None, - sort_key=None, - sort_dir=None, - sort=None - ).AndReturn(protectable) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = \ - smaug.protectable_list_instances_paged( - self.request, - protectable_type="OS::Nova::Server") - self.assertEqual(len(protectable), len(ret_val)) - self.assertFalse(has_more_data) - self.assertFalse(has_prev_data) - - def test_provider_list(self): - providers = self.providers.list() - smaugclient = self.stub_smaugclient() - smaugclient.providers = self.mox.CreateMockAnything() - smaugclient.providers.list(detailed=False, - search_opts=None, - marker=None, - limit=None, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(providers) - self.mox.ReplayAll() - - ret_val = smaug.provider_list(self.request) - self.assertEqual(len(providers), len(ret_val)) - - def test_provider_list_paged_false(self): - providers = self.providers.list() - smaugclient = self.stub_smaugclient() - smaugclient.providers = self.mox.CreateMockAnything() - smaugclient.providers.list(detailed=False, - search_opts=None, - marker=None, - limit=None, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(providers) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = smaug.provider_list_paged( - self.request, paginate=False) - self.assertEqual(len(providers), len(ret_val)) - self.assertFalse(has_more_data) - self.assertFalse(has_prev_data) - - @override_settings(API_RESULT_PAGE_SIZE=4) - def test_provider_list_paged_equal_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 4) - providers = self.providers.list() - smaugclient = self.stub_smaugclient() - smaugclient.providers = self.mox.CreateMockAnything() - smaugclient.providers.list(detailed=False, - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(providers) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = smaug.provider_list_paged( - self.request, paginate=True) - self.assertEqual(page_size, len(ret_val)) - self.assertFalse(has_more_data) - self.assertFalse(has_prev_data) - - @override_settings(API_RESULT_PAGE_SIZE=20) - def test_provider_list_paged_less_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 20) - providers = self.providers.list() - smaugclient = self.stub_smaugclient() - smaugclient.providers = self.mox.CreateMockAnything() - smaugclient.providers.list(detailed=False, - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(providers) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = smaug.provider_list_paged( - self.request, paginate=True) - self.assertEqual(len(providers), len(ret_val)) - self.assertFalse(has_more_data) - self.assertFalse(has_prev_data) - - @override_settings(API_RESULT_PAGE_SIZE=1) - def test_provider_list_paged_more_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 1) - providers = self.providers.list() - smaugclient = self.stub_smaugclient() - smaugclient.providers = self.mox.CreateMockAnything() - smaugclient.providers.list( - detailed=False, - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(providers[:page_size + 1]) - self.mox.ReplayAll() - ret_val, has_more_data, has_prev_data = smaug.provider_list_paged( - self.request, paginate=True) - - self.assertEqual(page_size, len(ret_val)) - self.assertTrue(has_more_data) - self.assertFalse(has_prev_data) - - def test_provider_get(self): - provider = self.providers.first() - smaugclient = self.stub_smaugclient() - smaugclient.providers = self.mox.CreateMockAnything() - smaugclient.providers.get(provider["id"]).AndReturn(provider) - self.mox.ReplayAll() - - ret_provider = smaug.provider_get(self.request, - provider_id="fake_provider_id") - self.assertEqual(provider["name"], ret_provider["name"]) - - def test_checkpoint_create(self): - checkpoint = self.checkpoints.first() - smaugclient = self.stub_smaugclient() - smaugclient.checkpoints = self.mox.CreateMockAnything() - smaugclient.checkpoints.create( - checkpoint["provider_id"], - checkpoint["plan"]["plan_id"]).AndReturn(checkpoint) - self.mox.ReplayAll() - - ret_checkpoint = smaug.checkpoint_create( - self.request, - provider_id="fake_provider_id", - plan_id="fake_plan_id") - self.assertEqual(checkpoint["id"], ret_checkpoint["id"]) - - def test_checkpoint_delete(self): - checkpoint = self.checkpoints.first() - smaugclient = self.stub_smaugclient() - smaugclient.checkpoints = self.mox.CreateMockAnything() - smaugclient.checkpoints.delete(checkpoint["provider_id"], - checkpoint["id"]) - self.mox.ReplayAll() - - smaug.checkpoint_delete(self.request, - provider_id="fake_provider_id", - checkpoint_id="fake_checkpoint_id") - - def test_checkpoint_list(self): - checkpoints = self.checkpoints.list() - smaugclient = self.stub_smaugclient() - smaugclient.checkpoints = self.mox.CreateMockAnything() - smaugclient.checkpoints.list(provider_id=None, - search_opts=None, - marker=None, - limit=None, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(checkpoints) - self.mox.ReplayAll() - - ret_checkpoints = smaug.checkpoint_list(self.request) - self.assertEqual(len(checkpoints), len(ret_checkpoints)) - - def test_checkpoint_list_paged_false(self): - checkpoints = self.checkpoints.list() - smaugclient = self.stub_smaugclient() - smaugclient.checkpoints = self.mox.CreateMockAnything() - smaugclient.checkpoints.list(provider_id=None, - search_opts=None, - marker=None, - limit=None, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(checkpoints) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = smaug.checkpoint_list_paged( - self.request, paginate=False) - self.assertEqual(len(checkpoints), len(ret_val)) - - @override_settings(API_RESULT_PAGE_SIZE=4) - def test_checkpoint_list_paged_equal_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 4) - checkpoints = self.checkpoints.list() - smaugclient = self.stub_smaugclient() - smaugclient.checkpoints = self.mox.CreateMockAnything() - smaugclient.checkpoints.list(provider_id=None, - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(checkpoints) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = smaug.checkpoint_list_paged( - self.request, paginate=True) - self.assertEqual(page_size, len(ret_val)) - self.assertFalse(has_more_data) - self.assertFalse(has_prev_data) - - @override_settings(API_RESULT_PAGE_SIZE=20) - def test_checkpoint_list_paged_less_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 20) - checkpoints = self.checkpoints.list() - smaugclient = self.stub_smaugclient() - smaugclient.checkpoints = self.mox.CreateMockAnything() - smaugclient.checkpoints.list(provider_id=None, - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(checkpoints) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = smaug.checkpoint_list_paged( - self.request, paginate=True) - self.assertEqual(len(checkpoints), len(ret_val)) - self.assertFalse(has_more_data) - self.assertFalse(has_prev_data) - - @override_settings(API_RESULT_PAGE_SIZE=1) - def test_checkpoint_list_paged_more_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 1) - checkpoint2 = self.checkpoints.list() - smaugclient = self.stub_smaugclient() - smaugclient.checkpoints = self.mox.CreateMockAnything() - smaugclient.checkpoints.list( - provider_id=None, - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(checkpoint2[:page_size + 1]) - self.mox.ReplayAll() - ret_val, has_more_data, has_prev_data = smaug.checkpoint_list_paged( - self.request, paginate=True) - - self.assertEqual(page_size, len(ret_val)) - self.assertTrue(has_more_data) - self.assertFalse(has_prev_data) - - def test_checkpoint_get(self): - checkpoint = self.checkpoints.first() - smaugclient = self.stub_smaugclient() - smaugclient.checkpoints = self.mox.CreateMockAnything() - smaugclient.checkpoints.get(checkpoint["provider_id"], - checkpoint["id"]).AndReturn(checkpoint) - self.mox.ReplayAll() - - ret_checkpoint = smaug.checkpoint_get( - self.request, - provider_id="fake_provider_id", - checkpoint_id="fake_checkpoint_id") - self.assertEqual(checkpoint["id"], ret_checkpoint["id"]) - - def test_trigger_create(self): - trigger = self.triggers.first() - smaugclient = self.stub_smaugclient() - smaugclient.triggers = self.mox.CreateMockAnything() - smaugclient.triggers.create(trigger["name"], - trigger["type"], - trigger["properties"]).AndReturn(trigger) - self.mox.ReplayAll() - - ret_trigger = smaug.trigger_create(self.request, - trigger["name"], - trigger["type"], - trigger["properties"]) - self.assertEqual(trigger["id"], ret_trigger["id"]) - - def test_trigger_delete(self): - trigger = self.triggers.first() - smaugclient = self.stub_smaugclient() - smaugclient.triggers = self.mox.CreateMockAnything() - smaugclient.triggers.delete(trigger["id"]) - self.mox.ReplayAll() - - smaug.trigger_delete(self.request, trigger["id"]) - - def test_trigger_list(self): - ret_triggers = self.triggers.list() - smaugclient = self.stub_smaugclient() - smaugclient.triggers = self.mox.CreateMockAnything() - smaugclient.triggers.list(detailed=False, - limit=None, - marker=None, - search_opts=None, - sort=None, - sort_dir=None, - sort_key=None).AndReturn(ret_triggers) - self.mox.ReplayAll() - - ret_val = smaug.trigger_list(self.request) - self.assertEqual(len(ret_triggers), len(ret_val)) - - def test_trigger_list_paged_false(self): - ret_triggers = self.triggers.list() - smaugclient = self.stub_smaugclient() - smaugclient.triggers = self.mox.CreateMockAnything() - smaugclient.triggers.list(detailed=False, - search_opts=None, - marker=None, - limit=None, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(ret_triggers) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = smaug.trigger_list_paged( - self.request) - self.assertEqual(len(ret_triggers), len(ret_val)) - self.assertFalse(has_more_data) - self.assertFalse(has_prev_data) - - @override_settings(API_RESULT_PAGE_SIZE=4) - def test_trigger_list_paged_equal_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 4) - ret_triggers = self.triggers.list() - smaugclient = self.stub_smaugclient() - smaugclient.triggers = self.mox.CreateMockAnything() - smaugclient.triggers.list(detailed=False, - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(ret_triggers) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = smaug.trigger_list_paged( - self.request, paginate=True) - self.assertEqual(page_size, len(ret_val)) - self.assertFalse(has_more_data) - self.assertFalse(has_prev_data) - - @override_settings(API_RESULT_PAGE_SIZE=20) - def test_trigger_list_paged_less_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 20) - ret_triggers = self.triggers.list() - smaugclient = self.stub_smaugclient() - smaugclient.triggers = self.mox.CreateMockAnything() - smaugclient.triggers.list(detailed=False, - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(ret_triggers) - self.mox.ReplayAll() - - ret_val, has_more_data, has_prev_data = smaug.trigger_list_paged( - self.request, paginate=True) - self.assertEqual(len(ret_triggers), len(ret_val)) - self.assertFalse(has_more_data) - self.assertFalse(has_prev_data) - - @override_settings(API_RESULT_PAGE_SIZE=1) - def test_trigger_list_paged_more_page_size(self): - page_size = getattr(settings, 'API_RESULT_PAGE_SIZE', 1) - trigger2 = self.triggers.list() - smaugclient = self.stub_smaugclient() - smaugclient.triggers = self.mox.CreateMockAnything() - smaugclient.triggers.list( - detailed=False, - search_opts=None, - marker=None, - limit=page_size + 1, - sort_key=None, - sort_dir=None, - sort=None).AndReturn(trigger2[:page_size + 1]) - self.mox.ReplayAll() - ret_val, has_more_data, has_prev_data = smaug.trigger_list_paged( - self.request, paginate=True) - - self.assertEqual(page_size, len(ret_val)) - self.assertTrue(has_more_data) - self.assertFalse(has_prev_data) - - def test_trigger_get(self): - trigger = self.triggers.first() - smaugclient = self.stub_smaugclient() - smaugclient.triggers = self.mox.CreateMockAnything() - smaugclient.triggers.get(trigger["id"]).AndReturn(trigger) - self.mox.ReplayAll() - - ret_trigger = smaug.trigger_get(self.request, - trigger_id="fake_trigger_id") - self.assertEqual(trigger["id"], ret_trigger["id"]) diff --git a/test-requirements.txt b/test-requirements.txt index afe083b..fd9fa20 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -26,3 +26,5 @@ testtools>=1.4.0 # MIT xvfbwrapper>=0.1.3 #license: MIT # Include horizon as test requirement http://tarballs.openstack.org/horizon/horizon-master.tar.gz#egg=horizon +# When the karbor client is stable, this line should be removed +http://tarballs.openstack.org/python-smaugclient/python-smaugclient-master.tar.gz#egg=python-smaugclient