Add JSON config file
Add a sample JSON config file and a module to read it. Change-Id: I1e29d7f878605a6bc934dd429a1ffca31475fd71
This commit is contained in:
parent
94eaa414c1
commit
aac0f61ce6
48
config.json.sample
Normal file
48
config.json.sample
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
{
|
||||||
|
"app_address": "x.x.x.x:8000",
|
||||||
|
|
||||||
|
"test_mode": "DOCKER",
|
||||||
|
|
||||||
|
"tempest_url":
|
||||||
|
"https://github.com/openstack/tempest/archive/stable/havana.zip",
|
||||||
|
|
||||||
|
"tempest_config":
|
||||||
|
{
|
||||||
|
"identity":
|
||||||
|
{
|
||||||
|
"uri": "http://x.x.x.x:5000/v2.0/",
|
||||||
|
"uri_v3": "http://x.x.x.x:5000/v3/",
|
||||||
|
"region": "RegionOne",
|
||||||
|
"username": "demo",
|
||||||
|
"tenant_name": "demo",
|
||||||
|
"alt_username": "alt_demo",
|
||||||
|
"alt_tenant_name": "alt_demo",
|
||||||
|
"admin_username": "admin",
|
||||||
|
"admin_tenant_name": "admin"
|
||||||
|
},
|
||||||
|
"compute":
|
||||||
|
{
|
||||||
|
"image_ref": "a8d70acb-f1c4-4171-b0ce-d73e5de21a9d",
|
||||||
|
"image_ref_alt": "6182b1da-e64d-4440-b0ef-c0afa4d77abb",
|
||||||
|
"flavor_ref": "1",
|
||||||
|
"flavor_ref_alt": "1",
|
||||||
|
"image_ssh_user": "root",
|
||||||
|
"image_ssh_password": "password",
|
||||||
|
"image_alt_ssh_user": "root",
|
||||||
|
"image_alt_ssh_password": "password"
|
||||||
|
},
|
||||||
|
"cli":
|
||||||
|
{
|
||||||
|
"enable": "False"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"tempest_testcases":
|
||||||
|
{
|
||||||
|
"testcases":
|
||||||
|
[
|
||||||
|
"tempest.api.compute.admin.test_flavors",
|
||||||
|
"tempest.api.compute.admin.test_availability_zone"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
62
refstack/refstack_config.py
Normal file
62
refstack/refstack_config.py
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
# vim: tabstop=4 shiftwidth=4 softtabstop=4
|
||||||
|
|
||||||
|
# Copyright 2014 IBM Corp.
|
||||||
|
#
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
import json
|
||||||
|
import os.path
|
||||||
|
from refstack.utils import INSTANCE_FOLDER_PATH
|
||||||
|
|
||||||
|
|
||||||
|
class RefStackConfig(object):
|
||||||
|
'''Utility class to process config file.'''
|
||||||
|
|
||||||
|
refstack_config = {}
|
||||||
|
|
||||||
|
config_file_name = os.path.join(INSTANCE_FOLDER_PATH, 'config.json')
|
||||||
|
|
||||||
|
working_dir = os.path.join(INSTANCE_FOLDER_PATH, 'tmpfiles')
|
||||||
|
|
||||||
|
def __init__(self, file_name=None):
|
||||||
|
'''Load the JSON data from the config file.'''
|
||||||
|
if file_name:
|
||||||
|
self.config_file_name = file_name
|
||||||
|
if os.path.isfile(self.config_file_name):
|
||||||
|
self.refstack_config = json.load(open(self.config_file_name))
|
||||||
|
if not os.path.exists(self.working_dir):
|
||||||
|
os.makedirs(self.working_dir)
|
||||||
|
|
||||||
|
def get_working_dir(self):
|
||||||
|
'''Return working directory.'''
|
||||||
|
return self.working_dir
|
||||||
|
|
||||||
|
def get_app_address(self):
|
||||||
|
'''Return address of the Web App server.'''
|
||||||
|
return self.refstack_config["app_address"]
|
||||||
|
|
||||||
|
def get_tempest_url(self):
|
||||||
|
'''Return the URL for tempest test code download.'''
|
||||||
|
return self.refstack_config["tempest_url"]
|
||||||
|
|
||||||
|
def get_tempest_config(self):
|
||||||
|
'''Return customized tempest config parameters.'''
|
||||||
|
return self.refstack_config["tempest_config"]
|
||||||
|
|
||||||
|
def get_tempest_testcases(self):
|
||||||
|
'''Return a JSON of tempest testcase.'''
|
||||||
|
return self.refstack_config["tempest_testcases"]
|
||||||
|
|
||||||
|
def get_test_mode(self):
|
||||||
|
'''Return the tempest test mode.'''
|
||||||
|
return self.refstack_config["test_mode"]
|
Loading…
Reference in New Issue
Block a user