diff --git a/cfme/fixtures/parallelizer/__init__.py b/cfme/fixtures/parallelizer/__init__.py index a893bcd045..04b784ce04 100644 --- a/cfme/fixtures/parallelizer/__init__.py +++ b/cfme/fixtures/parallelizer/__init__.py @@ -57,11 +57,11 @@ # Initialize slaveid to None, indicating this as the master process # slaves will set this to a unique string when they're initialized -conf.runtime['env']['slaveid'] = None +conf['env']['slaveid'] = None -if not conf.runtime['env'].get('ts'): +if not conf['env'].get('ts'): ts = str(time()) - conf.runtime['env']['ts'] = ts + conf['env']['ts'] = ts def pytest_addhooks(pluginmanager): @@ -127,7 +127,7 @@ def start(self): sys.executable, remote.__file__, '--worker', self.id, '--appliance', self.appliance.as_json, - '--ts', conf.runtime['env']['ts'], + '--ts', conf['env']['ts'], '--config', json.dumps(self.worker_config), diff --git a/cfme/fixtures/parallelizer/remote.py b/cfme/fixtures/parallelizer/remote.py index a08beac6ce..c00fd53c0e 100644 --- a/cfme/fixtures/parallelizer/remote.py +++ b/cfme/fixtures/parallelizer/remote.py @@ -19,9 +19,8 @@ def __init__(self, config, slaveid, zmq_endpoint): self.config = config self.session = None self.collection = None - self.slaveid = conf.runtime['env']['slaveid'] = slaveid + self.slaveid = conf['env']['slaveid'] = slaveid self.log = cfme.utils.log.logger - conf.clear() # Override the logger in utils.log ctx = zmq.Context.instance() @@ -241,8 +240,8 @@ def _init_config(slave_options, slave_args): from cfme.fixtures.pytest_store import store from cfme.utils import conf - conf.runtime['env']['slaveid'] = args.worker - conf.runtime['env']['ts'] = args.ts + conf['env']['slaveid'] = args.worker + conf['env']['ts'] = args.ts store.parallelizer_role = 'slave' slave_args = config.pop('args') @@ -251,8 +250,8 @@ def _init_config(slave_options, slave_args): appliance_data = config["appliance_data"] if ip_address in appliance_data: template_name, provider_name = appliance_data[ip_address] - conf.runtime["cfme_data"]["basic_info"]["appliance_template"] = template_name - conf.runtime["cfme_data"]["basic_info"]["appliances_provider"] = provider_name + conf["cfme_data"]["basic_info"]["appliance_template"] = template_name + conf["cfme_data"]["basic_info"]["appliances_provider"] = provider_name pytest_config = _init_config(slave_options, slave_args) slave_manager = SlaveManager(pytest_config, args.worker, config['zmq_endpoint']) pytest_config.pluginmanager.register(slave_manager, 'slave_manager') diff --git a/cfme/markers/env_markers/provider.py b/cfme/markers/env_markers/provider.py index a76320e80a..08b7e9798d 100644 --- a/cfme/markers/env_markers/provider.py +++ b/cfme/markers/env_markers/provider.py @@ -189,6 +189,7 @@ def all_required(miq_version, filters=None): try: data_for_stream = conf.supportability[stream]['providers'] except KeyError: + logger.warning(f"A KeyError was caught while accessing supportability for {stream}") # there are cases when such data isn't available. For instance travis data_for_stream = {} diff --git a/cfme/test_framework/sprout/plugin.py b/cfme/test_framework/sprout/plugin.py index e20b349f0d..d8908e616c 100644 --- a/cfme/test_framework/sprout/plugin.py +++ b/cfme/test_framework/sprout/plugin.py @@ -188,7 +188,7 @@ def mangle_in_sprout_appliances(config): log.info("- %s is %s", appliance['url'], appliance['name']) mgr.reset_timer() template_name = requested_appliances[0]["template_name"] - conf.runtime["cfme_data"]["basic_info"]["appliance_template"] = template_name + conf["cfme_data"]["basic_info"]["appliance_template"] = template_name log.info("appliance_template: %s", template_name) with project_path.join('.appliance_template').open('w') as template_file: template_file.write('export appliance_template="{}"'.format(template_name)) diff --git a/cfme/utils/conf.py b/cfme/utils/conf.py index 068cfc7a6f..f898bedb8c 100644 --- a/cfme/utils/conf.py +++ b/cfme/utils/conf.py @@ -1,12 +1,12 @@ import sys -from cfme.test_framework.config import DeprecatedConfigWrapper -from cfme.test_framework.config import global_configuration from cfme.utils import path +from cfme.utils.config import ConfigWrapper +from cfme.utils.config import global_configuration -global_configuration.configure( +global_configuration.configure_creds( config_dir=path.conf_path.strpath, - crypt_key_file=path.project_path.join('.yaml_key').strpath, + crypt_key_file=path.project_path.join('.yaml_key').strpath ) -sys.modules[__name__] = DeprecatedConfigWrapper(global_configuration) +sys.modules[__name__] = ConfigWrapper(global_configuration) diff --git a/cfme/utils/config.py b/cfme/utils/config.py new file mode 100644 index 0000000000..6a055c37e4 --- /dev/null +++ b/cfme/utils/config.py @@ -0,0 +1,140 @@ +""" +classes to manage the cfme test framework configuration +""" +import os + +import attr +import yaycl +from cached_property import cached_property +from dynaconf import LazySettings + +from cfme.utils import path + +YAML_KEYS = ['auth_data', 'cfme_data', 'cfme_performance', 'composite', + 'credentials', 'docker', 'env', 'gpg', 'hidden', 'jenkins', + 'migration_tests', 'perf_tests', 'polarion_tools', 'rdb', + 'supportability'] + + +class ConfigData(object): + """A wrapper for configs in yamls- reads and loads values from yaml files in conf/ dir.""" + def __init__(self, env='cfme_data'): + self.settings = LazySettings( + ENV_FOR_DYNACONF=env, + INCLUDES_FOR_DYNACONF='{}/*.yaml'.format(path.conf_path.strpath), + ROOT_PATH_FOR_DYNACONF=path.conf_path.strpath + ) + + def __getitem__(self, key): + return self.__getattr__(key) + + def __getattr__(self, key): + self.config = self.settings[key.upper()] + return self.config + + def __setitem__(self, key, value): + """This function allows you to mimic some behavior like runtime from yaycl + You can do following: + from cfme.utils import conf + conf ['env']['new_key'] = 'new_val' + conf ['env']['new_key'] + # The new_key and its value is cached through the session + """ + self.settings[key] = value + + def __contains__(self, key): + return key in self.settings.as_dict() or key.upper() in self.settings.as_dict() + + def get(self, key, default=None): + try: + return self.__getattr__(key) + except KeyError: + return default + + +class Configuration(object): + """ + Holds ConfigData objects in dictionary `settings`. + """ + def __init__(self): + self.yaycl_config = None + + def configure_creds(self, config_dir, crypt_key_file=None): + """ + do the defered initial loading of the configuration + + :param config_dir: path to the folder with configuration files + :param crypt_key_file: optional name of a file holding the key for encrypted + configuration files + + :raises: AssertionError if called more than once + + if the `utils.conf` api is removed, the loading can be transformed to eager loading + """ + assert self.yaycl_config is None + if crypt_key_file and os.path.exists(crypt_key_file): + self.yaycl_config = yaycl.Config( + config_dir=config_dir, + crypt_key_file=crypt_key_file) + else: + self.yaycl_config = yaycl.Config(config_dir=config_dir) + + @cached_property + def settings(self): + """ + Loads all the congfigs in settings dictionary where Key is filename(without extension) + and value is ConfigData object relevant to that file. + + Example self.settings would look like: + {'cfme_data': , + 'env': , + 'gpg': , + ... + ... + 'polarion_tools': , + 'perf_tests': } + + """ + settings = { + f.purebasename: ConfigData(env=f.purebasename) + for f in path.conf_path.listdir() if '.local.yaml' not in f.basename and + f.ext in ['.yaml', '.yml'] + } + return settings + + def get_config(self, name): + """returns a config object + + :param name: name of the configuration object + """ + if name in YAML_KEYS: + if name == 'credentials' or name == 'hidden': + return getattr(self.yaycl_config, name) + try: + return self.settings[name] + except KeyError: + # seems like config was deleted, reload + self.settings[name] = ConfigData(env=name) + return self.settings[name] + + def del_config(self, name): + if self.settings: + if name in self.settings: + del self.settings[name] + + +@attr.s +class ConfigWrapper(object): + configuration = attr.ib() + + def __getattr__(self, key): + return self.configuration.get_config(key) + + def __getitem__(self, key): + return self.configuration.get_config(key) + + def __delitem__(self, key): + return self.configuration.del_config(key) + + +global_configuration = Configuration() diff --git a/cfme/utils/log.py b/cfme/utils/log.py index 92c7ebec11..c37f567bd6 100644 --- a/cfme/utils/log.py +++ b/cfme/utils/log.py @@ -220,13 +220,6 @@ def process(self, message, kwargs): def _load_conf(logger_name=None): - # Reload logging conf from env, then update the logging_conf - try: - del(conf['env']) - except KeyError: - # env not loaded yet - pass - logging_conf = _default_conf.copy() yaml_conf = conf.env.get('logging', {}) diff --git a/conf/cfme_data.yaml.template b/conf/cfme_data.yaml.template index a25a73c97d..7b6468e823 100644 --- a/conf/cfme_data.yaml.template +++ b/conf/cfme_data.yaml.template @@ -1,679 +1,680 @@ -basic_info: - app_version: 5.2.0 - cfme_images_url: - downstream-59z: http://some-host.com/builds/ -ansible_links: - playbook_repositories: - v2v: https://github.com/v2v-test/ansible_playbooks.git -management_systems: - vsphere5: - name: vsphere 5 - default_name: Virtual Center (10.0.0.2) - endpoints: - default: - credentials: vsphere5 - hostname: vsphere5.example.com - ipaddress: 10.0.0.1 - host_vnc_port: - start: 5900 - end: 5980 - server_zone: default - type: virtualcenter - discovery_range: - start: 10.0.0.1 - end: 10.0.0.2 - datacenters: - - default - clusters: - - iscsi - hosts: - - name: myhost - credentials: - default: myhost - remote_login: remote_login_cred - web_services: web_services_cred - type: esxi - test_fleece: True - datastores: - - type: iscsi - name: iscsi_storage - test_fleece: True - - type: vmfs - name: vmfs_storage - test_fleece: False - tags: - Provisioning Scope: All - policy_profiles: - - example policy profile x - test_vm_power_control: - - vm_name - provisioning: - pxe_template: pxe_prov_template - pxe_server: pxe_server - pxe_image: image - pxe_kickstart: customizationscript - pxe_root_password: password - template: provisioning_template_name - host: target provisioning host name (from hosts above) - datastore: target provisioning datastore name (from datastores above) - templates: - console_template: - name: template1 - creds: template1Creds - small_template: - name: template2 - creds: template2Creds - rhevm31: - name: RHEV 3.1 - default_name: RHEV-M (10.0.0.3) - endpoints: - default: - credentials: rhevm31 - hostname: rhevm.example.com - ipaddress: 10.0.0.1 - api_port: 3000 - verify_tls: False - cat_certs: - candu: - cu_credentials: rhevm31-cu_db_cred_name_from_credentials.yaml - api_port: - database: ovirt_engine_history - hostname: rhevm.example.com - server_zone: default - type: rhevm - discovery_range: - start: 10.0.0.3 - end: 10.0.0.3 - clusters: - - iscsi - hosts: - - name: myhost - credentials: - default: myhost - remote_login: remote_login_cred - web_services: web_services_cred - type: rhel - test_fleece: False - datastores: - - type: iscsi - name: rhevm_iscsi - test_fleece: True - tags: - Provisioning Scope: All - policy_profiles: - - example policy profile y - test_vm_power_control: - - vm_name - provisioning: - template: provisioning_template_name - host: target provisioning host name (from hosts above) - datastore: target provisioning datastore name (from datastores above) - vlan: name of vlan to attach to vm (required only for rhevm providers) - ec2: - name: EC2 US East - default_name: EC2 US East - region: us-west-1 - region_name: US West - endpoints: - default: - credentials: aws - hostname: ec2.us-east-1.amazonaws.com - ipaddress: 207.171.162.181 - server_zone: default - type: ec2 - clusters: - - us-east-1 - tags: - Provisioning Scope: All - # EC2 Power Control is currently broken - #test_vm_power_control: - # - instance_id_or_name - openstack: - name: rhos-01 - hostname: rhos-01i - ipaddress: 10.0.0.4 - port: 5000 - endpoints: - default: - hostname: rhos-01 - ipaddress: 10.0.0.4 - api_port: - credentials: rhos - events: - event_stream: AMQP - hostname: 10.0.0.4 - api_port: - security_protocol: Non-SSL - credentials: rhos - auth_url: http://10.0.0.4:35357/v2.0/ - tenant: demo - server_zone: default - type: openstack - network: defaultnetwork - test_vm_power_control: - - pwr-ctl-vm-1-dnd - lenovo: - name: lenovo - type: lenovo - endpoints: - default: - credentials: lenovo - ipaddress: 10.0.0.1 - hostname: lenovo.hostname - api_port: 3000 - redfish: - name: redfish - type: redfish - endpoints: - default: - credentials: redfish - hostname: redfish.hostname - security_protocol: SSL - api_port: 443 - nuage: - name: nuage_net - type: nuage - api_version: v5_0 - api_version_name: Version 5.0 - endpoints: - default: - hostname: - credentials: nuage - security_protocol: SSL - api_port: - vcloud: - name: vmware_cloud - type: vcloud - api_version: 9.0 - api_version_name: vCloud API 9.0 - endpoints: - default: - hostname: 10.11.12.13 - credentials: vcloud - api_port: 443 +cfme_data: + basic_info: + app_version: 5.2.0 + cfme_images_url: + downstream-59z: http://some-host.com/builds/ + ansible_links: + playbook_repositories: + v2v: https://github.com/v2v-test/ansible_playbooks.git + management_systems: + vsphere5: + name: vsphere 5 + default_name: Virtual Center (10.0.0.2) + endpoints: + default: + credentials: vsphere5 + hostname: vsphere5.example.com + ipaddress: 10.0.0.1 + host_vnc_port: + start: 5900 + end: 5980 + server_zone: default + type: virtualcenter + discovery_range: + start: 10.0.0.1 + end: 10.0.0.2 + datacenters: + - default + clusters: + - iscsi + hosts: + - name: myhost + credentials: + default: myhost + remote_login: remote_login_cred + web_services: web_services_cred + type: esxi + test_fleece: True + datastores: + - type: iscsi + name: iscsi_storage + test_fleece: True + - type: vmfs + name: vmfs_storage + test_fleece: False + tags: + Provisioning Scope: All + policy_profiles: + - example policy profile x + test_vm_power_control: + - vm_name + provisioning: + pxe_template: pxe_prov_template + pxe_server: pxe_server + pxe_image: image + pxe_kickstart: customizationscript + pxe_root_password: password + template: provisioning_template_name + host: target provisioning host name (from hosts above) + datastore: target provisioning datastore name (from datastores above) + templates: + console_template: + name: template1 + creds: template1Creds + small_template: + name: template2 + creds: template2Creds + rhevm31: + name: RHEV 3.1 + default_name: RHEV-M (10.0.0.3) + endpoints: + default: + credentials: rhevm31 + hostname: rhevm.example.com + ipaddress: 10.0.0.1 + api_port: 3000 + verify_tls: False + cat_certs: + candu: + cu_credentials: rhevm31-cu_db_cred_name_from_credentials.yaml + api_port: + database: ovirt_engine_history + hostname: rhevm.example.com + server_zone: default + type: rhevm + discovery_range: + start: 10.0.0.3 + end: 10.0.0.3 + clusters: + - iscsi + hosts: + - name: myhost + credentials: + default: myhost + remote_login: remote_login_cred + web_services: web_services_cred + type: rhel + test_fleece: False + datastores: + - type: iscsi + name: rhevm_iscsi + test_fleece: True + tags: + Provisioning Scope: All + policy_profiles: + - example policy profile y + test_vm_power_control: + - vm_name + provisioning: + template: provisioning_template_name + host: target provisioning host name (from hosts above) + datastore: target provisioning datastore name (from datastores above) + vlan: name of vlan to attach to vm (required only for rhevm providers) + ec2: + name: EC2 US East + default_name: EC2 US East + region: us-west-1 + region_name: US West + endpoints: + default: + credentials: aws + hostname: ec2.us-east-1.amazonaws.com + ipaddress: 207.171.162.181 + server_zone: default + type: ec2 + clusters: + - us-east-1 + tags: + Provisioning Scope: All + # EC2 Power Control is currently broken + #test_vm_power_control: + # - instance_id_or_name + openstack: + name: rhos-01 + hostname: rhos-01i + ipaddress: 10.0.0.4 + port: 5000 + endpoints: + default: + hostname: rhos-01 + ipaddress: 10.0.0.4 + api_port: + credentials: rhos + events: + event_stream: AMQP + hostname: 10.0.0.4 + api_port: + security_protocol: Non-SSL + credentials: rhos + auth_url: http://10.0.0.4:35357/v2.0/ + tenant: demo + server_zone: default + type: openstack + network: defaultnetwork + test_vm_power_control: + - pwr-ctl-vm-1-dnd + lenovo: + name: lenovo + type: lenovo + endpoints: + default: + credentials: lenovo + ipaddress: 10.0.0.1 + hostname: lenovo.hostname + api_port: 3000 + redfish: + name: redfish + type: redfish + endpoints: + default: + credentials: redfish + hostname: redfish.hostname + security_protocol: SSL + api_port: 443 + nuage: + name: nuage_net + type: nuage + api_version: v5_0 + api_version_name: Version 5.0 + endpoints: + default: + hostname: + credentials: nuage + security_protocol: SSL + api_port: + vcloud: + name: vmware_cloud + type: vcloud + api_version: 9.0 + api_version_name: vCloud API 9.0 + endpoints: + default: + hostname: 10.11.12.13 + credentials: vcloud + api_port: 443 -configuration_managers: - sat6: - type: satellite - name: Satellite 6 - url: my-satellite.example.com - ssl: false - credentials: satellite - provisioning: true - config_profiles: - - rhel7 - - rhel6 -management_hosts: - esx: - name: esx-01 - hostname: esx-01 - ipaddress: 10.0.0.5 - ipmi_address: 10.0.1.5 - mac_address: ff:ee:dd:cc:bb:aa - credentials: esx - ipmi_credentials: ipmi - user_assigned_os: VMware ESX + configuration_managers: + sat6: + type: satellite + name: Satellite 6 + url: my-satellite.example.com + ssl: false + credentials: satellite + provisioning: true + config_profiles: + - rhel7 + - rhel6 + management_hosts: + esx: + name: esx-01 + hostname: esx-01 + ipaddress: 10.0.0.5 + ipmi_address: 10.0.1.5 + mac_address: ff:ee:dd:cc:bb:aa + credentials: esx + ipmi_credentials: ipmi + user_assigned_os: VMware ESX -auth_modes: - ldap_server: - timeout_h: "1" - timeout_m: "0" - mode: ldap - hosts: - - ad1.example.com - - ad2.example.com - - ad3.example.com - port: "389" - user_type: principal - user_suffix: ad.example.com - get_groups: True - get_roles: True - follow_referrals: False - base_dn: dc=ad,dc=example,dc=com - bind_dn: administrator@ad.example.com - bind_password: password - aws_iam: - session_timeout_hours: "1" - session_timeout_mins: "0" - mode: amazon - get_groups: True - credentials: aws -server_roles: - all: # Do not change, unless there is a change in the UI! - - ems_operations - - ems_metrics_collector - - ems_metrics_coordinator - - reporting - - ems_metrics_processor - - scheduler - - smartproxy - - database_operations - - smartstate - - event - - user_interface - - web_services - - ems_inventory - - notifier - - automate - - rhn_mirror - - database_synchronization - sets: # A role not specified in the set is considered to be false (except user_interface) - # There is a dict generated between `all` and specific set - # What is in `all` but not in the particular set, is False - # What is in `all` and also in the particular set, is True - # It is not a dictionary due to compatibility with the old code. - default: - - database_operations - - event - - ems_inventory + auth_modes: + ldap_server: + timeout_h: "1" + timeout_m: "0" + mode: ldap + hosts: + - ad1.example.com + - ad2.example.com + - ad3.example.com + port: "389" + user_type: principal + user_suffix: ad.example.com + get_groups: True + get_roles: True + follow_referrals: False + base_dn: dc=ad,dc=example,dc=com + bind_dn: administrator@ad.example.com + bind_password: password + aws_iam: + session_timeout_hours: "1" + session_timeout_mins: "0" + mode: amazon + get_groups: True + credentials: aws + server_roles: + all: # Do not change, unless there is a change in the UI! - ems_operations + - ems_metrics_collector + - ems_metrics_coordinator - reporting + - ems_metrics_processor - scheduler + - smartproxy + - database_operations - smartstate + - event + - user_interface - web_services -group_roles: - evmgroup-administrator: - menus: - cloud_intelligence: - - dashboard - - reports - - chargeback - - timelines - - rss - services: - - my_services - - catalogs - - requests - - workloads - clouds: - - providers - - availability_zones - - flavors - - security_groups - - instances - infrastructure: - - providers - - clusters - - hosts - - virtual_machines - - resource_pools - - datastores - - pxe - - requests - control: - - explorer - - simulation - - import_export - - log - automate: - - explorer - - simulation - - customization - - import_export - - log - - requests - optimize: - - utilization - - planning - - bottlenecks - configure: - - my_settings - - tasks - - smartproxies - - about - evmgroup-approver: - menus: - cloud_intelligence: - - dashboard - - reports - - chargeback - - timelines - - rss - services: - - requests - - workloads - clouds: - - instances - infrastructure: - - providers - - clusters - - hosts - - virtual_machines - - resource_pools - - datastores - - requests - control: - - explorer - - simulation - - log - configure: - - my_settings - - tasks - - about - evmgroup-auditor: - menus: - cloud_intelligence: - - dashboard - - reports - - chargeback - - timelines - - rss - services: - - workloads - clouds: - - instances - infrastructure: - - providers - - clusters - - hosts - - virtual_machines - - resource_pools - - datastores - control: - - explorer - - simulation - - log - optimize: - - utilization - - planning - - bottlenecks - configure: - - my_settings - - tasks - - about - evmgroup-desktop: - menus: - cloud_intelligence: - - dashboard - services: - - requests - - workloads - configure: - - my_settings - - about - evmgroup-operator: - menus: - cloud_intelligence: - - dashboard - - reports - - chargeback - - timelines - - rss - services: - - workloads - clouds: - - instances - infrastructure: - - providers - - clusters - - hosts - - virtual_machines - - resource_pools - - datastores - configure: - - my_settings - - tasks - - about - evmgroup-security: - menus: - cloud_intelligence: - - dashboard - - reports - - chargeback - - timelines - - rss - services: - - workloads - clouds: - - instances - infrastructure: - - providers - - clusters - - hosts - - virtual_machines - - resource_pools - - datastores - control: - - explorer - - simulation - - log - configure: - - my_settings - - tasks - - about - evmgroup-super_administrator: - menus: - cloud_intelligence: - - dashboard - - reports - - chargeback - - timelines - - rss - services: - - my_services - - catalogs - - requests - - workloads - clouds: - - providers - - availability_zones - - flavors - - security_groups - - instances - infrastructure: - - providers - - clusters - - hosts - - virtual_machines - - resource_pools - - datastores - - pxe - - requests - control: - - explorer - - simulation - - import_export - - log - automate: - - explorer - - simulation - - customization - - import_export - - log - - requests - optimize: - - utilization - - planning - - bottlenecks - configure: - - my_settings - - tasks - - configuration - - smartproxies - - about - evmgroup-support: - menus: - cloud_intelligence: - - dashboard - - reports - - chargeback - - timelines - - rss - services: - - workloads - clouds: - - instances - infrastructure: - - providers - - clusters - - hosts - - virtual_machines - - resource_pools - - datastores - control: - - explorer - - simulation - - log - configure: - - my_settings - - tasks - - about - evmgroup-user: - menus: - cloud_intelligence: - - dashboard - - reports - - chargeback - - timelines - - rss - services: - - workloads - clouds: - - instances - infrastructure: - - providers - - clusters - - hosts - - virtual_machines - - resource_pools - - datastores - configure: - - my_settings - - tasks - - about - evmgroup-user_limited_self_service: - menus: - services: - - requests - infrastructure: - - virtual_machines - - requests - configure: - - my_settings - - about - evmgroup-user_self_service: - menus: - services: - - requests - infrastructure: - - virtual_machines - - requests - configure: - - my_settings - - about - evmgroup-vm_user: - menus: - services: - - requests - - workloads - configure: - - my_settings - - about + - ems_inventory + - notifier + - automate + - rhn_mirror + - database_synchronization + sets: # A role not specified in the set is considered to be false (except user_interface) + # There is a dict generated between `all` and specific set + # What is in `all` but not in the particular set, is False + # What is in `all` and also in the particular set, is True + # It is not a dictionary due to compatibility with the old code. + default: + - database_operations + - event + - ems_inventory + - ems_operations + - reporting + - scheduler + - smartstate + - web_services + group_roles: + evmgroup-administrator: + menus: + cloud_intelligence: + - dashboard + - reports + - chargeback + - timelines + - rss + services: + - my_services + - catalogs + - requests + - workloads + clouds: + - providers + - availability_zones + - flavors + - security_groups + - instances + infrastructure: + - providers + - clusters + - hosts + - virtual_machines + - resource_pools + - datastores + - pxe + - requests + control: + - explorer + - simulation + - import_export + - log + automate: + - explorer + - simulation + - customization + - import_export + - log + - requests + optimize: + - utilization + - planning + - bottlenecks + configure: + - my_settings + - tasks + - smartproxies + - about + evmgroup-approver: + menus: + cloud_intelligence: + - dashboard + - reports + - chargeback + - timelines + - rss + services: + - requests + - workloads + clouds: + - instances + infrastructure: + - providers + - clusters + - hosts + - virtual_machines + - resource_pools + - datastores + - requests + control: + - explorer + - simulation + - log + configure: + - my_settings + - tasks + - about + evmgroup-auditor: + menus: + cloud_intelligence: + - dashboard + - reports + - chargeback + - timelines + - rss + services: + - workloads + clouds: + - instances + infrastructure: + - providers + - clusters + - hosts + - virtual_machines + - resource_pools + - datastores + control: + - explorer + - simulation + - log + optimize: + - utilization + - planning + - bottlenecks + configure: + - my_settings + - tasks + - about + evmgroup-desktop: + menus: + cloud_intelligence: + - dashboard + services: + - requests + - workloads + configure: + - my_settings + - about + evmgroup-operator: + menus: + cloud_intelligence: + - dashboard + - reports + - chargeback + - timelines + - rss + services: + - workloads + clouds: + - instances + infrastructure: + - providers + - clusters + - hosts + - virtual_machines + - resource_pools + - datastores + configure: + - my_settings + - tasks + - about + evmgroup-security: + menus: + cloud_intelligence: + - dashboard + - reports + - chargeback + - timelines + - rss + services: + - workloads + clouds: + - instances + infrastructure: + - providers + - clusters + - hosts + - virtual_machines + - resource_pools + - datastores + control: + - explorer + - simulation + - log + configure: + - my_settings + - tasks + - about + evmgroup-super_administrator: + menus: + cloud_intelligence: + - dashboard + - reports + - chargeback + - timelines + - rss + services: + - my_services + - catalogs + - requests + - workloads + clouds: + - providers + - availability_zones + - flavors + - security_groups + - instances + infrastructure: + - providers + - clusters + - hosts + - virtual_machines + - resource_pools + - datastores + - pxe + - requests + control: + - explorer + - simulation + - import_export + - log + automate: + - explorer + - simulation + - customization + - import_export + - log + - requests + optimize: + - utilization + - planning + - bottlenecks + configure: + - my_settings + - tasks + - configuration + - smartproxies + - about + evmgroup-support: + menus: + cloud_intelligence: + - dashboard + - reports + - chargeback + - timelines + - rss + services: + - workloads + clouds: + - instances + infrastructure: + - providers + - clusters + - hosts + - virtual_machines + - resource_pools + - datastores + control: + - explorer + - simulation + - log + configure: + - my_settings + - tasks + - about + evmgroup-user: + menus: + cloud_intelligence: + - dashboard + - reports + - chargeback + - timelines + - rss + services: + - workloads + clouds: + - instances + infrastructure: + - providers + - clusters + - hosts + - virtual_machines + - resource_pools + - datastores + configure: + - my_settings + - tasks + - about + evmgroup-user_limited_self_service: + menus: + services: + - requests + infrastructure: + - virtual_machines + - requests + configure: + - my_settings + - about + evmgroup-user_self_service: + menus: + services: + - requests + infrastructure: + - virtual_machines + - requests + configure: + - my_settings + - about + evmgroup-vm_user: + menus: + services: + - requests + - workloads + configure: + - my_settings + - about -clone_retire_setup: - vmware_linux_workflow: - vm_name: firstVM - number_of_cpu: 1 - vm_memory: 1024 - owner_first_name: testFirst - owner_last_name: testLast - owner_email: test@company.com -ip_echo: - host: "somehost" - port: 8080 -mail_collector: - test_email: "email@email.com" -log_db_depot: - machine: - credentials: machine_creds - smb: - hostname: smb.example.com/sharename - path_on_host: /path/on/host - use_for_log_collection: True - use_for_db_backups: False - nfs: - hostname: nfs.example.com/path/on/host - use_for_log_collection: False - use_for_db_backups: True - ftp: - hostname: ftp.example.com - use_for_log_collection: True -datastores_not_for_provision: - - datastore-name-1 # uses `in` operator - - datastore-name-2 -redhat_updates: - current_version: 1.2.3.4 - registration: - rhsm: - test_registration: True - test_direct: True - test_rhn_mirror: True - use_http_proxy: True - url: subscription.rhn.redhat.com - enable_repo: cfme-repo-name - sat5: - test_registration: True - test_direct: True - use_http_proxy: True - url: https://sat5.example.com - add_channel: cfme-channel-name - organization: 2 - sat6: - test_registration: False - test_direct: False - test_rhn_mirror: False - use_http_proxy: False - url: https://sat6.example.com - enable_repo: - http_proxy: - url: 1.2.3.4:5678 - appliances: - EVM: - register: True - update: True - EVM_2: - register: True - update: True - download_repo_files: - - url: http://my.example.com/repos/latest/my_repository.repo - reg_methods: - - rhsm - - rhn_mirror - enable_repos: - add_channels: -storage: - managers: - netapp-mgr-id-1: - name: its name - type: NetApp Remote Service - hostname: some-server.example.com - ip: 1.2.3.4 - credentials: netapp-storage - testing: - file_shares: - - col: val - col2: val2 + clone_retire_setup: + vmware_linux_workflow: + vm_name: firstVM + number_of_cpu: 1 + vm_memory: 1024 + owner_first_name: testFirst + owner_last_name: testLast + owner_email: test@company.com + ip_echo: + host: "somehost" + port: 8080 + mail_collector: + test_email: "email@email.com" + log_db_depot: + machine: + credentials: machine_creds + smb: + hostname: smb.example.com/sharename + path_on_host: /path/on/host + use_for_log_collection: True + use_for_db_backups: False + nfs: + hostname: nfs.example.com/path/on/host + use_for_log_collection: False + use_for_db_backups: True + ftp: + hostname: ftp.example.com + use_for_log_collection: True + datastores_not_for_provision: + - datastore-name-1 # uses `in` operator + - datastore-name-2 + redhat_updates: + current_version: 1.2.3.4 + registration: + rhsm: + test_registration: True + test_direct: True + test_rhn_mirror: True + use_http_proxy: True + url: subscription.rhn.redhat.com + enable_repo: cfme-repo-name + sat5: + test_registration: True + test_direct: True + use_http_proxy: True + url: https://sat5.example.com + add_channel: cfme-channel-name + organization: 2 + sat6: + test_registration: False + test_direct: False + test_rhn_mirror: False + use_http_proxy: False + url: https://sat6.example.com + enable_repo: + http_proxy: + url: 1.2.3.4:5678 + appliances: + EVM: + register: True + update: True + EVM_2: + register: True + update: True + download_repo_files: + - url: http://my.example.com/repos/latest/my_repository.repo + reg_methods: + - rhsm + - rhn_mirror + enable_repos: + add_channels: + storage: + managers: + netapp-mgr-id-1: + name: its name + type: NetApp Remote Service + hostname: some-server.example.com + ip: 1.2.3.4 + credentials: netapp-storage + testing: + file_shares: + - col: val + col2: val2 -resources: - databases: - jdbc_drivers: - jdbc_drivers_url: jdbc driver file url - db_allocator: - db_allocate_url: url for allocation - db_deallocate_url: url for deallocation + resources: + databases: + jdbc_drivers: + jdbc_drivers_url: jdbc driver file url + db_allocator: + db_allocate_url: url for allocation + db_deallocate_url: url for deallocation -cfme_annotations_path: data/testcase_tiers_and_types.csv + cfme_annotations_path: data/testcase_tiers_and_types.csv -clock_servers: - - 0.pool.ntp.org - - 1.pool.ntp.org - - 2.pool.ntp.org + clock_servers: + - 0.pool.ntp.org + - 1.pool.ntp.org + - 2.pool.ntp.org -vm_console: - cert: - install_dir: /var/www/miq/vmdb/certs - country: US - state: North Carolina - city: Durham - organization: CFME - organizational_unit: QE + vm_console: + cert: + install_dir: /var/www/miq/vmdb/certs + country: US + state: North Carolina + city: Durham + organization: CFME + organizational_unit: QE diff --git a/conf/docker.yaml.template b/conf/docker.yaml.template index 5ab53d3928..cd9a942b25 100644 --- a/conf/docker.yaml.template +++ b/conf/docker.yaml.template @@ -1,17 +1,18 @@ -appliances: - Downstream: https://xx.xx.xx.xx - Upstream: https://xx.xx.xx.xx -cfme_cred_repo: https://repo -cfme_cred_repo_dir: /cfme-qe-yamls -cfme_repo: https://github.com/RedHatQE/cfme_tests -cfme_repo_dir: /cfme_tests_te -pytest: -k test_bad_password -branch: origin/master -selff: cfmeqe/sel_ff_chrome -pytest_con: py_test_base -artifactor_dir: /log_report -log_depot: /home/username/log_depot/ -banner: True -gh_token: AAAAAAA -gh_owner: RedHatQE -gh_repo: cfme_tests +docker: + appliances: + Downstream: https://xx.xx.xx.xx + Upstream: https://xx.xx.xx.xx + cfme_cred_repo: https://repo + cfme_cred_repo_dir: /cfme-qe-yamls + cfme_repo: https://github.com/RedHatQE/cfme_tests + cfme_repo_dir: /cfme_tests_te + pytest: -k test_bad_password + branch: origin/master + selff: cfmeqe/sel_ff_chrome + pytest_con: py_test_base + artifactor_dir: /log_report + log_depot: /home/username/log_depot/ + banner: True + gh_token: AAAAAAA + gh_owner: RedHatQE + gh_repo: cfme_tests diff --git a/conf/env.yaml.template b/conf/env.yaml.template index a90b6f5f39..1b1d96c30b 100644 --- a/conf/env.yaml.template +++ b/conf/env.yaml.template @@ -1,24 +1,25 @@ -appliances: - - hostname: 10.11.12.13 -browser: - webdriver: Remote - webdriver_options: - desired_capabilities: - platform: LINUX - browserName: 'chrome' - unexpectedAlertBehaviour: 'ignore' -github: - default_repo: foo/bar - token: abcdef0123456789 -bugzilla: - url: https://bugzilla.redhat.com/xmlrpc.cgi - loose: # Params of BugzillaBug to be converted to LooseVersion at runtime - - target_release - - version - - fixed_in - upstream_version: "master" - credentials: cred_file_key - skip: # Bug states that are considered for skipping (not used now but will be incorporated later) - - ON_DEV - - NEW - - ASSIGNED +env: + appliances: + - hostname: 10.11.12.13 + browser: + webdriver: Remote + webdriver_options: + desired_capabilities: + platform: LINUX + browserName: 'chrome' + unexpectedAlertBehaviour: 'ignore' + github: + default_repo: foo/bar + token: abcdef0123456789 + bugzilla: + url: https://bugzilla.redhat.com/xmlrpc.cgi + loose: # Params of BugzillaBug to be converted to LooseVersion at runtime + - target_release + - version + - fixed_in + upstream_version: "master" + credentials: cred_file_key + skip: # Bug states that are considered for skipping (not used now but will be incorporated later) + - ON_DEV + - NEW + - ASSIGNED diff --git a/conf/perf_tests.yaml.template b/conf/perf_tests.yaml.template index 0356d5f653..142e7b402f 100644 --- a/conf/perf_tests.yaml.template +++ b/conf/perf_tests.yaml.template @@ -1,87 +1,88 @@ -test_queue: - infra_time: 28800 -ui: - threshold: - selenium: 60000 - page_render: 5000 - query_time: 1000 - query_count: 1000 - uncached_count: 1000 - page_check: - intelligence: - reports: - saved_reports: 20 - reports: 20 - schedules: 10 - dashboards: 10 - dashboard_widgets: 10 - edit_report_menus: 10 - import_export: 10 - chargeback: - reports: 10 - rates: 10 - assignments: 10 - services: - my_services: - services: 10 - catalogs: - catalog_items: 10 - catalogs: 10 - service_catalogs: 10 - workloads: - vms_instances: 10 - templates_images: 10 - cloud: - providers: 20 - availability_zones: 10 - tenants: 10 - flavors: 10 - security_groups: 20 - vm_explorer: - instances_by_prov: 50 - images_by_prov: 20 - instances: 20 - images: 20 - infrastructure: - providers: 20 - clusters: 20 - hosts: 20 - vm_explorer: - vms_and_templates: 50 - vms: 50 - templates: 50 - resource_pools: 20 - datastores: 20 - pxe: - pxe_servers: 10 - customization_templates: 10 - system_image_types: 10 - iso_datastores: 10 - control: - explorer: - policy_profiles: 10 - policies: 10 - events: 10 - conditions: 10 - actions: 10 - alert_profiles: 10 - alerts: 10 - automate: - explorer: - datastore: 20 - customization: - provisioning_dialogs: 10 - service_dialogs: 10 - buttons: 10 - import_export: 10 - optimize: - utilization: - utilization: 10 - bottlenecks: - bottlenecks: 10 - configure: - configuration: - settings: 10 - access_control: 10 - diagnostics: 10 - database: 10 +perf_tests: + test_queue: + infra_time: 28800 + ui: + threshold: + selenium: 60000 + page_render: 5000 + query_time: 1000 + query_count: 1000 + uncached_count: 1000 + page_check: + intelligence: + reports: + saved_reports: 20 + reports: 20 + schedules: 10 + dashboards: 10 + dashboard_widgets: 10 + edit_report_menus: 10 + import_export: 10 + chargeback: + reports: 10 + rates: 10 + assignments: 10 + services: + my_services: + services: 10 + catalogs: + catalog_items: 10 + catalogs: 10 + service_catalogs: 10 + workloads: + vms_instances: 10 + templates_images: 10 + cloud: + providers: 20 + availability_zones: 10 + tenants: 10 + flavors: 10 + security_groups: 20 + vm_explorer: + instances_by_prov: 50 + images_by_prov: 20 + instances: 20 + images: 20 + infrastructure: + providers: 20 + clusters: 20 + hosts: 20 + vm_explorer: + vms_and_templates: 50 + vms: 50 + templates: 50 + resource_pools: 20 + datastores: 20 + pxe: + pxe_servers: 10 + customization_templates: 10 + system_image_types: 10 + iso_datastores: 10 + control: + explorer: + policy_profiles: 10 + policies: 10 + events: 10 + conditions: 10 + actions: 10 + alert_profiles: 10 + alerts: 10 + automate: + explorer: + datastore: 20 + customization: + provisioning_dialogs: 10 + service_dialogs: 10 + buttons: 10 + import_export: 10 + optimize: + utilization: + utilization: 10 + bottlenecks: + bottlenecks: 10 + configure: + configuration: + settings: 10 + access_control: 10 + diagnostics: 10 + database: 10 diff --git a/conf/polarion_tools.local.yaml.template b/conf/polarion_tools.local.yaml.template index 71861e68bc..796ed9f666 100644 --- a/conf/polarion_tools.local.yaml.template +++ b/conf/polarion_tools.local.yaml.template @@ -1,42 +1,43 @@ -repo_address: https://github.com/ManageIQ/integration_tests -polarion-project-id: -xunit_import_properties: - polarion-lookup-method: name - polarion-testrun-status-id: inprogress - polarion-testrun-template-id: - polarion-group-id: - polarion-testrun-title: - polarion-testrun-id: -testcase_import_properties: - lookup-method: name -polarion_url: +polarion_tools: + repo_address: https://github.com/ManageIQ/integration_tests + polarion-project-id: + xunit_import_properties: + polarion-lookup-method: name + polarion-testrun-status-id: inprogress + polarion-testrun-template-id: + polarion-group-id: + polarion-testrun-title: + polarion-testrun-id: + testcase_import_properties: + lookup-method: name + polarion_url: -username: -password: + username: + password: -blacklisted_tests: - - 'test_import_own_module' + blacklisted_tests: + - 'test_import_own_module' -whitelisted_tests: - - 'cfme/tests/v2v' + whitelisted_tests: + - 'cfme/tests/v2v' -known_fields: - assignee: "" - initialEstimate: "" - caseimportance: high - caselevel: component - caseposneg: positive - caseautomation: automated - testtype: functional - casecomponent: "-" - subtype1: "-" - subtype2: "-" - tags: "" - setup: "" - teardown: "" - description: "" - linkedWorkItems: "" - testSteps: "" - expectedResults: "" - title: "" - work_item_id: "" + known_fields: + assignee: "" + initialEstimate: "" + caseimportance: high + caselevel: component + caseposneg: positive + caseautomation: automated + testtype: functional + casecomponent: "-" + subtype1: "-" + subtype2: "-" + tags: "" + setup: "" + teardown: "" + description: "" + linkedWorkItems: "" + testSteps: "" + expectedResults: "" + title: "" + work_item_id: "" diff --git a/conf/polarion_tools.yaml b/conf/polarion_tools.yaml index 2f7e4611d2..36b418a421 100644 --- a/conf/polarion_tools.yaml +++ b/conf/polarion_tools.yaml @@ -1,90 +1,116 @@ -default_fields: - arch: "" - approver-ids: "mshriver akarol smallamp jkrocil rhcf3_machine:approved" - status-id: "approved" - assignee: "" - automation_script: "" - caseautomation: automated - casecomponent: "-" - caseimportance: high - caselevel: component - caseposneg: positive - customerscenario: false - description: "" - endsin: "" - expectedResults: "" - initialEstimate: "" - legacytest: "" - linkedWorkItems: "" - multiproduct: "" - reqverify: "" - setup: "" - startsin: "" - subcomponent: "" - subtype1: "-" - subtype2: "-" - tags: "" - teardown: "" - testSteps: "" - testtier: "" - testtype: functional - title: "" - upstream: "" - work_item_id: "" +polarion_tools: + default_fields: + arch: "" + approver-ids: "mshriver akarol smallamp jkrocil rhcf3_machine:approved" + status-id: "approved" + assignee: "" + automation_script: "" + caseautomation: automated + casecomponent: "-" + caseimportance: high + caselevel: component + caseposneg: positive + customerscenario: false + description: "" + endsin: "" + expectedResults: "" + initialEstimate: "" + legacytest: "" + linkedWorkItems: "" + multiproduct: "" + reqverify: "" + setup: "" + startsin: "" + subcomponent: "" + subtype1: "-" + subtype2: "-" + tags: "" + teardown: "" + testSteps: "" + testtier: "" + testtype: functional + title: "" + upstream: "" + work_item_id: "" -requirements_default_fields: - approver-ids: "mshriver akarol smallamp jkrocil rhcf3_machine:approved" - status-id: "approved" + requirements_default_fields: + approver-ids: "mshriver akarol smallamp jkrocil rhcf3_machine:approved" + status-id: "approved" -custom_fields: - - arch - - automation_script - - caseautomation - - casecomponent - - caseimportance - - caselevel - - caseposneg - - customerscenario - - endsin - - legacytest - - multiproduct - - reqverify - - setup - - startsin - - subcomponent - - subtype1 - - subtype2 - - tags - - teardown - - testtier - - testtype - - upstream -blacklisted_tests: - - cfme/tests/openstack/ - - cfme/tests/perf/ - - cfme/tests/physical_infrastructure/ - - cfme/tests/networks/nuage/ - - cfme/tests/test_modules_importable - - hawkular - - \[.*rhos - -docstrings: - required_fields: - - assignee - - initialEstimate + custom_fields: + - arch + - automation_script + - caseautomation - casecomponent + - caseimportance + - caselevel + - caseposneg + - customerscenario + - endsin + - legacytest + - multiproduct + - reqverify + - setup + - startsin + - subcomponent + - subtype1 + - subtype2 + - tags + - teardown + - testtier + - testtype + - upstream + + blacklisted_tests: + - cfme/tests/openstack/ + - cfme/tests/perf/ + - cfme/tests/physical_infrastructure/ + - cfme/tests/networks/nuage/ + - cfme/tests/test_modules_importable + - hawkular + - \[.*rhos + + docstrings: + required_fields: + - assignee + - initialEstimate + - casecomponent + - caseimportance + - caselevel + - caseposneg + - customerscenario + - endsin + - legacytest + - multiproduct + - reqverify + - setup + - startsin + - subcomponent + - subtype1 + - subtype2 + - tags + - teardown + - testtier + - testtype + - upstream + + docstrings: + required_fields: + - assignee + - initialEstimate + - casecomponent - marker_fields: - caselevel: "@pytest.mark.tier" - caseautomation: "@pytest.mark.manual" - customerscenario: "@pytest.mark.customer_scenario" - # default for manual mark is 'notautomated' - # @pytest.mark.manual('manualonly') to set 'manualonly' - linkedWorkItems: "@pytest.mark.requirements" + marker_fields: + caselevel: "@pytest.mark.tier" + caseautomation: "@pytest.mark.manual" + customerscenario: "@pytest.mark.customer_scenario" + # default for manual mark is 'notautomated' + # @pytest.mark.manual('manualonly') to set 'manualonly' + linkedWorkItems: "@pytest.mark.requirements" - ignored_fields: - description: "use test docstring instead" + ignored_fields: + description: "use test docstring instead" valid_values: caseimportance: diff --git a/conf/polarion_tools.yaml.template b/conf/polarion_tools.yaml.template index cba6868adb..c64ee1620d 100644 --- a/conf/polarion_tools.yaml.template +++ b/conf/polarion_tools.yaml.template @@ -1,7 +1,8 @@ -polarion-project-id: PROJECTID -xunit_import_properties: - polarion-lookup-method: name - polarion-testrun-status-id: inprogress -testcase_import_properties: - lookup-method: name -polarion_url: https://polarion.example.com +polarion_tools: + polarion-project-id: PROJECTID + xunit_import_properties: + polarion-lookup-method: name + polarion-testrun-status-id: inprogress + testcase_import_properties: + lookup-method: name + polarion_url: https://polarion.example.com diff --git a/conf/supportability.yaml b/conf/supportability.yaml index ce626c1f4d..a19bb13b8b 100644 --- a/conf/supportability.yaml +++ b/conf/supportability.yaml @@ -1,33 +1,34 @@ -'master': - providers: - infra: - - virtualcenter: - - 5.5 - - 6.0 - - 6.5 - - 6.7 - - rhevm: - - 4.1 - - 4.2 - - 4.3 - - scvmm: - - 2012 - - 2016 - cloud: - - openstack: - - 11 - - 12 - - 13 - - 14 - - ec2 - - gce - - azure: - - common - - msdn - container: - - openshift: - - 3.5 - - 3.6 - - 3.7 - - 3.9 - - 3.11 +supportability: + 'master': + providers: + infra: + - virtualcenter: + - 5.5 + - 6.0 + - 6.5 + - 6.7 + - rhevm: + - 4.1 + - 4.2 + - 4.3 + - scvmm: + - 2012 + - 2016 + cloud: + - openstack: + - 11 + - 12 + - 13 + - 14 + - ec2 + - gce + - azure: + - common + - msdn + container: + - openshift: + - 3.5 + - 3.6 + - 3.7 + - 3.9 + - 3.11 diff --git a/conf/supportability.yaml.template b/conf/supportability.yaml.template index 2e3aeed073..34b83c05f7 100644 --- a/conf/supportability.yaml.template +++ b/conf/supportability.yaml.template @@ -1,89 +1,90 @@ -'5.8': - providers: - infra: - - virtualcenter: - - 5.5 - - 6.0 - - 6.5 - - rhevm: - - 4.1 - - 4.2 - - scvmm: - - 2012 - - 2016 - cloud: - - openstack: - - 11 - - ec2 - - gce - - azure: - - common - - msdn - container: - - openshift: - - 3.5 - - 3.6 - - 3.7 -'5.9': - providers: - infra: - - virtualcenter: - - 5.5 - - 6.0 - - 6.5 - - rhevm: - - 4.1 - - 4.2 - - scvmm: - - 2012 - - 2016 - cloud: - - openstack: - - 11 - - ec2 - - gce - - azure: - - common - - msdn - container: - - openshift: - - 3.5 - - 3.6 - - 3.7 - - 3.9 - physical: - - lenovo - networks: - - nuage -'master': - providers: - infra: - - virtualcenter: - - 5.5 - - 6.0 - - 6.5 - - rhevm: - - 4.1 - - 4.2 - - scvmm: - - 2012 - - 2016 - cloud: - - openstack: - - 11 - - ec2 - - gce - - azure: - - common - - msdn - container: - - openshift: - - 3.5 - - 3.6 - - 3.7 - - 3.9 - physical: - - lenovo - - redfish - networks: - - nuage +supportability: + '5.8': + providers: + infra: + - virtualcenter: + - 5.5 + - 6.0 + - 6.5 + - rhevm: + - 4.1 + - 4.2 + - scvmm: + - 2012 + - 2016 + cloud: + - openstack: + - 11 + - ec2 + - gce + - azure: + - common + - msdn + container: + - openshift: + - 3.5 + - 3.6 + - 3.7 + '5.9': + providers: + infra: + - virtualcenter: + - 5.5 + - 6.0 + - 6.5 + - rhevm: + - 4.1 + - 4.2 + - scvmm: + - 2012 + - 2016 + cloud: + - openstack: + - 11 + - ec2 + - gce + - azure: + - common + - msdn + container: + - openshift: + - 3.5 + - 3.6 + - 3.7 + - 3.9 + physical: + - lenovo + networks: + - nuage + 'master': + providers: + infra: + - virtualcenter: + - 5.5 + - 6.0 + - 6.5 + - rhevm: + - 4.1 + - 4.2 + - scvmm: + - 2012 + - 2016 + cloud: + - openstack: + - 11 + - ec2 + - gce + - azure: + - common + - msdn + container: + - openshift: + - 3.5 + - 3.6 + - 3.7 + - 3.9 + physical: + - lenovo + - redfish + networks: + - nuage diff --git a/requirements/constraints.txt b/requirements/constraints.txt index f03806be55..d8382933ad 100644 --- a/requirements/constraints.txt +++ b/requirements/constraints.txt @@ -1,4 +1,5 @@ azure-storage-common==1.4.0 +dynaconf[all]==2.2.0 pdfminer.six==20181108 pytest<=3.4.1 websocket-client<=0.40.2,>=0.32.0 diff --git a/requirements/frozen.txt b/requirements/frozen.txt index 6c9caa16e8..a6355205d0 100644 --- a/requirements/frozen.txt +++ b/requirements/frozen.txt @@ -1,6 +1,7 @@ adal==1.2.1 aenum==2.1.2 alabaster==0.7.12 +amqp==2.5.1 ansible==2.8.5 anytree==2.6.0 apipkg==1.5 @@ -94,6 +95,7 @@ Babel==2.6.0 backcall==0.1.0 bambou==3.0.1 bcrypt==3.1.6 +billiard==3.6.1.0 bleach==3.1.0 boto==2.49.0 boto3==1.6.6 @@ -112,6 +114,7 @@ Click==7.0 cliff==2.14.1 cmd2==0.9.11 colorama==0.4.1 +configobj==5.0.6 cryptography==2.6.1 cycler==0.10.0 dateparser==0.7.2 @@ -129,6 +132,7 @@ docker-pycreds==0.4.0 docutils==0.15.2 dogpile.cache==0.7.1 dump2polarion==0.46.0 +dynaconf==2.2.0 ecdsa==0.13.2 entrypoints==0.3 fauxfactory==3.0.6 @@ -146,6 +150,7 @@ google-compute-engine==2.8.13 greenlet==0.4.15 httplib2==0.12.1 humanfriendly==4.18 +hvac==0.9.5 identify==1.4.7 idna==2.8 imagesize==1.1.0 @@ -173,6 +178,7 @@ jupyter-client==5.2.4 jupyter-console==6.0.0 jupyter-core==4.4.0 keystoneauth1==3.17.1 +kombu==4.6.4 kubernetes==3.0.0 kwargify==2.2.0 layered-yaml-attrdict-config==18.12.3 @@ -257,10 +263,12 @@ pyperclip==1.7.0 pytesseract==0.3.0 pytest==3.4.1 pytest-polarion-collect==0.21.0 +pytest-report-parameters==0.4.0 python-box==3.2.4 python-bugzilla==2.3.0 python-cinderclient==4.1.0 python-dateutil==2.8.0 +python-dotenv==0.10.3 python-glanceclient==2.16.0 python-heatclient==1.17.0 python-ironicclient==2.7.0 @@ -279,6 +287,7 @@ PyYAML==5.1 pyzmq==18.0.1 qtconsole==4.4.3 redfish-client==0.1.0 +redis==3.3.10 reg==0.11 regex==2019.4.14 repoze.lru==0.7 @@ -314,6 +323,7 @@ sphinxcontrib-jsmath==1.0.1 sphinxcontrib-qthelp==1.0.2 sphinxcontrib-serializinghtml==1.1.3 SQLAlchemy==1.3.8 +sqlparse==0.3.0 stevedore==1.30.1 suds-jurko==0.6 tabulate==0.8.3 @@ -326,6 +336,7 @@ traitlets==4.3.2 tzlocal==2.0.0 uritemplate==3.0.0 urllib3==1.25.6 +vine==1.3.0 virtualenv==16.4.3 vspk==5.3.2 wait-for==1.1.0 @@ -340,6 +351,7 @@ widgetsnbextension==3.4.2 wrapanapi==3.4.1 wrapt==1.11.1 xmltodict==0.12.0 +yamlordereddictloader==0.4.0 yaycl==0.3.0 yaycl-crypt==0.4.0 zipp==0.6.0 diff --git a/requirements/frozen_docs.py3.txt b/requirements/frozen_docs.py3.txt index eca4220083..7f04d1724d 100644 --- a/requirements/frozen_docs.py3.txt +++ b/requirements/frozen_docs.py3.txt @@ -2,7 +2,6 @@ # currently requirements/freeze_all.py needs to be executed for both python2 and python3 ! # to upgrade a single package use requirements/freeze_all.py --upgrade-only apackage - adal==1.2.2 aenum==2.1.2 alabaster==0.7.12 diff --git a/requirements/template_scanned_imports.txt b/requirements/template_scanned_imports.txt index 808f97bc9d..b246ad25cb 100644 --- a/requirements/template_scanned_imports.txt +++ b/requirements/template_scanned_imports.txt @@ -14,6 +14,7 @@ debtcollector deepdiff diaper docker-py +dynaconf[all] fauxfactory gevent humanfriendly