Fix python3.7 import errors and made job voting

Python3.7 finally removed relative imports so we adopt the correct
syntax and also making py37 job voting to avoid regressions.

Change-Id: I16e01344e8ae1c732c31264c50d6dd57143ea799
This commit is contained in:
Sorin Sbarnea
2018-11-12 16:29:35 +00:00
committed by Aakarsh
parent 7c3aed604e
commit 8f338e08c2
7 changed files with 40 additions and 37 deletions

View File

@@ -2,7 +2,7 @@
- project: - project:
templates: templates:
- docs-on-readthedocs - docs-on-readthedocs
- openstack-python37-jobs-nonvoting - openstack-python37-jobs
- openstack-python36-jobs - openstack-python36-jobs
vars: vars:
rtd_webhook_id: '51626' rtd_webhook_id: '51626'

View File

@@ -19,13 +19,13 @@ import shutil
import subprocess import subprocess
import time import time
import elastic import browbeat.tools
import grafana from browbeat import elastic
from path import get_overcloudrc from browbeat import grafana
from path import get_workload_venv from browbeat import workloadbase
from path import results_path from browbeat.path import get_overcloudrc
import tools from browbeat.path import get_workload_venv
import workloadbase from browbeat.path import results_path
class PerfKit(workloadbase.WorkloadBase): class PerfKit(workloadbase.WorkloadBase):
@@ -34,7 +34,7 @@ class PerfKit(workloadbase.WorkloadBase):
self.overcloudrc = get_overcloudrc() self.overcloudrc = get_overcloudrc()
self.config = config self.config = config
self.result_dir_ts = result_dir_ts self.result_dir_ts = result_dir_ts
self.tools = tools.Tools(self.config) self.tools = browbeat.tools.Tools(self.config)
self.grafana = grafana.Grafana(self.config) self.grafana = grafana.Grafana(self.config)
self.elastic = elastic.Elastic(self.config, self.__class__.__name__.lower()) self.elastic = elastic.Elastic(self.config, self.__class__.__name__.lower())

View File

@@ -20,13 +20,12 @@ import re
import shutil import shutil
import time import time
import elastic import browbeat.tools
import grafana from browbeat import elastic
from path import get_workload_venv from browbeat import grafana
from path import results_path from browbeat import workloadbase
import workloadbase from browbeat.path import get_workload_venv
import tools from browbeat.path import results_path
class Rally(workloadbase.WorkloadBase): class Rally(workloadbase.WorkloadBase):
@@ -34,7 +33,7 @@ class Rally(workloadbase.WorkloadBase):
self.logger = logging.getLogger('browbeat.rally') self.logger = logging.getLogger('browbeat.rally')
self.config = config self.config = config
self.result_dir_ts = result_dir_ts self.result_dir_ts = result_dir_ts
self.tools = tools.Tools(self.config) self.tools = browbeat.tools.Tools(self.config)
self.grafana = grafana.Grafana(self.config) self.grafana = grafana.Grafana(self.config)
self.elastic = elastic.Elastic(self.config, self.__class__.__name__.lower()) self.elastic = elastic.Elastic(self.config, self.__class__.__name__.lower())

View File

@@ -19,13 +19,13 @@ import time
import uuid import uuid
import yaml import yaml
import elastic import browbeat.tools
import grafana from browbeat import elastic
from path import get_overcloudrc from browbeat import grafana
from path import get_workload_venv from browbeat import workloadbase
from path import results_path from browbeat.path import get_overcloudrc
import workloadbase from browbeat.path import get_workload_venv
import tools from browbeat.path import results_path
class Shaker(workloadbase.WorkloadBase): class Shaker(workloadbase.WorkloadBase):
@@ -35,7 +35,7 @@ class Shaker(workloadbase.WorkloadBase):
self.overcloudrc = get_overcloudrc() self.overcloudrc = get_overcloudrc()
self.config = config self.config = config
self.result_dir_ts = result_dir_ts self.result_dir_ts = result_dir_ts
self.tools = tools.Tools(self.config) self.tools = browbeat.tools.Tools(self.config)
self.grafana = grafana.Grafana(self.config) self.grafana = grafana.Grafana(self.config)
self.elastic = elastic.Elastic(self.config, self.__class__.__name__.lower()) self.elastic = elastic.Elastic(self.config, self.__class__.__name__.lower())

View File

@@ -16,10 +16,10 @@ import os
import re import re
import subprocess import subprocess
import perfkit from browbeat import perfkit
import rally from browbeat import rally
import shaker from browbeat import shaker
import yoda from browbeat import yoda
class Tools(object): class Tools(object):
@@ -51,7 +51,7 @@ class Tools(object):
stderr=subprocess.PIPE) stderr=subprocess.PIPE)
stdout, stderr = process.communicate() stdout, stderr = process.communicate()
output_dict = {} output_dict = {}
output_dict['stdout'] = stdout.strip() output_dict['stdout'] = stdout.strip().decode()
output_dict['stderr'] = stderr.strip() output_dict['stderr'] = stderr.strip()
output_dict['rc'] = process.returncode output_dict['rc'] = process.returncode
if process.returncode > 0: if process.returncode > 0:

View File

@@ -28,11 +28,11 @@ except ImportError:
ostag = None ostag = None
import requests import requests
import elastic import browbeat.tools
import grafana from browbeat import elastic
from path import results_path from browbeat import grafana
import workloadbase from browbeat import workloadbase
import tools from browbeat.path import results_path
class Yoda(workloadbase.WorkloadBase): class Yoda(workloadbase.WorkloadBase):
@@ -41,7 +41,7 @@ class Yoda(workloadbase.WorkloadBase):
self.logger = logging.getLogger('browbeat.yoda') self.logger = logging.getLogger('browbeat.yoda')
self.config = config self.config = config
self.result_dir_ts = result_dir_ts self.result_dir_ts = result_dir_ts
self.tools = tools.Tools(self.config) self.tools = browbeat.tools.Tools(self.config)
self.grafana = grafana.Grafana(self.config) self.grafana = grafana.Grafana(self.config)
self.elastic = elastic.Elastic(self.config, self.__class__.__name__.lower()) self.elastic = elastic.Elastic(self.config, self.__class__.__name__.lower())
self.error_count = 0 self.error_count = 0

View File

@@ -1,6 +1,6 @@
[tox] [tox]
minversion = 2.0 minversion = 2.0
envlist = py27,py35,py36,linters,dist,insights envlist = py27,py35,py36,py37,linters,dist,insights
skipsdist = True skipsdist = True
[testenv] [testenv]
@@ -62,6 +62,10 @@ commands = pytest {posargs}
basepython = python3.6 basepython = python3.6
commands = pytest {posargs} commands = pytest {posargs}
[testenv:py37]
basepython = python3.7
commands = pytest {posargs}
[testenv:cover] [testenv:cover]
commands = python setup.py test --coverage --testr-args={posargs} commands = python setup.py test --coverage --testr-args={posargs}