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:
@@ -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'
|
||||||
|
|||||||
@@ -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())
|
||||||
|
|
||||||
|
|||||||
@@ -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())
|
||||||
|
|
||||||
|
|||||||
@@ -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())
|
||||||
|
|
||||||
|
|||||||
@@ -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:
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
6
tox.ini
6
tox.ini
@@ -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}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user