python-tempestconf/config_tempest/services/boto.py
Arx Cruz a9af6c823d Remove static class loader
This commit remove the static class loader and add a dynamic one.
This is done using a new property available_classes that checks for
classes inherited by Services and generate a list of it.
It also change how tempestconf identify available services using the
list_services api instead of get_catalog api from tempest lib.
This way, tempestconf are no longer generating Services objects for
services that doesn't have a specialized class, but still set the
defaults for true or false if a service is running or not.
The discover method has changed to get the services from the list of
services instead of from the catalog.

Change-Id: Ic9d482378e9c975ed00f6aa7ed5f7aed6956d229
Story: 2002787
Task: 22672
2018-08-27 17:17:41 +02:00

37 lines
1.0 KiB
Python

# Copyright 2016 Red Hat, Inc.
# All Rights Reserved.
#
# 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 config_tempest.services.base import Service
class Ec2Service(Service):
def set_default_tempest_options(self, conf):
conf.set('boto', 'ec2_url', self.service_url)
@staticmethod
def get_service_name():
return ['ec2']
class S3Service(Service):
def set_default_tempest_options(self, conf):
conf.set('boto', 's3_url', self.service_url)
@staticmethod
def get_service_name():
return ['s3']