Merge "Skip known failed kolla images"
This commit is contained in:
commit
2ef0bd51a9
@ -94,6 +94,112 @@ STATUS_ERRORS = (STATUS_CONNECTION_ERROR, STATUS_PUSH_ERROR,
|
|||||||
STATUS_ERROR, STATUS_PARENT_ERROR)
|
STATUS_ERROR, STATUS_PARENT_ERROR)
|
||||||
|
|
||||||
|
|
||||||
|
SKIPPED_IMAGES = {
|
||||||
|
'centos+binary': [
|
||||||
|
"bifrost-base",
|
||||||
|
"blazar-base",
|
||||||
|
"dragonflow-base",
|
||||||
|
"freezer-base",
|
||||||
|
"kafka",
|
||||||
|
"karbor-base",
|
||||||
|
"kuryr-base",
|
||||||
|
"monasca-base",
|
||||||
|
"neutron-bgp-dragent",
|
||||||
|
"ovsdpdk",
|
||||||
|
"searchlight-base",
|
||||||
|
"senlin-base",
|
||||||
|
"solum-base",
|
||||||
|
"vitrage-base",
|
||||||
|
"vmtp",
|
||||||
|
"zun-base",
|
||||||
|
],
|
||||||
|
'centos+source': [
|
||||||
|
"bifrost-base",
|
||||||
|
"kafka",
|
||||||
|
"ovsdpdk",
|
||||||
|
],
|
||||||
|
'ubuntu+binary': [
|
||||||
|
"bifrost-base",
|
||||||
|
"blazar-base",
|
||||||
|
"cloudkitty-base",
|
||||||
|
"congress-base",
|
||||||
|
"dragonflow-base",
|
||||||
|
"ec2-api",
|
||||||
|
"freezer-base",
|
||||||
|
"heat-all",
|
||||||
|
"karbor-base",
|
||||||
|
"kuryr-base",
|
||||||
|
"mistral-event-engine",
|
||||||
|
"monasca-base",
|
||||||
|
"novajoin-base",
|
||||||
|
"octavia-base",
|
||||||
|
"searchlight-base",
|
||||||
|
"senlin-base",
|
||||||
|
"solum-base",
|
||||||
|
"tacker-base",
|
||||||
|
"vitrage-base",
|
||||||
|
"vmtp",
|
||||||
|
"zaqar",
|
||||||
|
"zun-base",
|
||||||
|
],
|
||||||
|
'ubuntu+source': [
|
||||||
|
"bifrost-base",
|
||||||
|
],
|
||||||
|
'debian+binary': [
|
||||||
|
"bifrost-base",
|
||||||
|
"blazar-base",
|
||||||
|
"cloudkitty-base",
|
||||||
|
"congress-base",
|
||||||
|
"dragonflow-base",
|
||||||
|
"ec2-api",
|
||||||
|
"freezer-base",
|
||||||
|
"heat-all",
|
||||||
|
"karbor-base",
|
||||||
|
"kuryr-base",
|
||||||
|
"mistral-event-engine",
|
||||||
|
"monasca-base",
|
||||||
|
"novajoin-base",
|
||||||
|
"octavia-base",
|
||||||
|
"searchlight-base",
|
||||||
|
"senlin-base",
|
||||||
|
"sensu-base",
|
||||||
|
"solum-base",
|
||||||
|
"tacker-base",
|
||||||
|
"vitrage-base",
|
||||||
|
"vmtp",
|
||||||
|
"zaqar",
|
||||||
|
"zun-base"
|
||||||
|
],
|
||||||
|
'debian+source': [
|
||||||
|
"bifrost-base",
|
||||||
|
"sensu-base",
|
||||||
|
],
|
||||||
|
'oraclelinux+binary': [
|
||||||
|
"bifrost-base",
|
||||||
|
"blazar-base",
|
||||||
|
"dragonflow-base",
|
||||||
|
"freezer-base",
|
||||||
|
"kafka",
|
||||||
|
"karbor-base",
|
||||||
|
"kuryr-base",
|
||||||
|
"monasca-base",
|
||||||
|
"neutron-bgp-dragent",
|
||||||
|
"ovsdpdk",
|
||||||
|
"searchlight-base",
|
||||||
|
"senlin-base",
|
||||||
|
"solum-base",
|
||||||
|
"vitrage-base",
|
||||||
|
"vmtp",
|
||||||
|
"zun-base"
|
||||||
|
],
|
||||||
|
'oraclelinux+source': [
|
||||||
|
"bifrost-base",
|
||||||
|
"kafka",
|
||||||
|
"ovsdpdk"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
class ArchivingError(Exception):
|
class ArchivingError(Exception):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
@ -847,6 +953,12 @@ class KollaWorker(object):
|
|||||||
for image in self.images:
|
for image in self.images:
|
||||||
image.status = STATUS_MATCHED
|
image.status = STATUS_MATCHED
|
||||||
|
|
||||||
|
skipped_images = SKIPPED_IMAGES.get('%s+%s' % (self.base,
|
||||||
|
self.install_type))
|
||||||
|
for image in self.images:
|
||||||
|
if image.name in skipped_images:
|
||||||
|
image.status = STATUS_UNMATCHED
|
||||||
|
|
||||||
def summary(self):
|
def summary(self):
|
||||||
"""Walk the dictionary of images statuses and print results."""
|
"""Walk the dictionary of images statuses and print results."""
|
||||||
# For debug we print the logs again if the image error'd. This is to
|
# For debug we print the logs again if the image error'd. This is to
|
||||||
@ -1083,7 +1195,7 @@ class KollaWorker(object):
|
|||||||
queue = six.moves.queue.Queue()
|
queue = six.moves.queue.Queue()
|
||||||
|
|
||||||
for image in self.images:
|
for image in self.images:
|
||||||
if image.status == STATUS_UNMATCHED:
|
if image.status in (STATUS_UNMATCHED, STATUS_SKIPPED):
|
||||||
# Don't bother queuing up build tasks for things that
|
# Don't bother queuing up build tasks for things that
|
||||||
# were not matched in the first place... (not worth the
|
# were not matched in the first place... (not worth the
|
||||||
# effort to run them, if they won't be used anyway).
|
# effort to run them, if they won't be used anyway).
|
||||||
|
@ -10,7 +10,6 @@
|
|||||||
# License for the specific language governing permissions and limitations
|
# License for the specific language governing permissions and limitations
|
||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
import abc
|
|
||||||
import multiprocessing
|
import multiprocessing
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
@ -29,7 +28,7 @@ LOG = logging.getLogger(__name__)
|
|||||||
|
|
||||||
|
|
||||||
class BuildTest(object):
|
class BuildTest(object):
|
||||||
excluded_images = abc.abstractproperty()
|
excluded_images = []
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(BuildTest, self).setUp()
|
super(BuildTest, self).setUp()
|
||||||
@ -52,14 +51,6 @@ class BuildTest(object):
|
|||||||
|
|
||||||
failures = 0
|
failures = 0
|
||||||
for image, result in bad_results.items():
|
for image, result in bad_results.items():
|
||||||
if image in self.excluded_images:
|
|
||||||
if result is 'error':
|
|
||||||
continue
|
|
||||||
failures = failures + 1
|
|
||||||
LOG.warning(">>> Expected image '%s' to fail, please update"
|
|
||||||
" the excluded_images in source file above if the"
|
|
||||||
" image build has been fixed.", image)
|
|
||||||
else:
|
|
||||||
if result is not 'error':
|
if result is not 'error':
|
||||||
continue
|
continue
|
||||||
failures = failures + 1
|
failures = failures + 1
|
||||||
@ -72,24 +63,6 @@ class BuildTest(object):
|
|||||||
|
|
||||||
|
|
||||||
class BuildTestCentosBinary(BuildTest, base.BaseTestCase):
|
class BuildTestCentosBinary(BuildTest, base.BaseTestCase):
|
||||||
excluded_images = [
|
|
||||||
"bifrost-base",
|
|
||||||
"blazar-base",
|
|
||||||
"dragonflow-base",
|
|
||||||
"freezer-base",
|
|
||||||
"kafka",
|
|
||||||
"karbor-base",
|
|
||||||
"kuryr-base",
|
|
||||||
"monasca-base",
|
|
||||||
"neutron-bgp-dragent",
|
|
||||||
"ovsdpdk",
|
|
||||||
"searchlight-base",
|
|
||||||
"senlin-base",
|
|
||||||
"solum-base",
|
|
||||||
"vitrage-base",
|
|
||||||
"vmtp",
|
|
||||||
"zun-base",
|
|
||||||
]
|
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(BuildTestCentosBinary, self).setUp()
|
super(BuildTestCentosBinary, self).setUp()
|
||||||
@ -98,11 +71,6 @@ class BuildTestCentosBinary(BuildTest, base.BaseTestCase):
|
|||||||
|
|
||||||
|
|
||||||
class BuildTestCentosSource(BuildTest, base.BaseTestCase):
|
class BuildTestCentosSource(BuildTest, base.BaseTestCase):
|
||||||
excluded_images = [
|
|
||||||
"bifrost-base",
|
|
||||||
"kafka",
|
|
||||||
"ovsdpdk",
|
|
||||||
]
|
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(BuildTestCentosSource, self).setUp()
|
super(BuildTestCentosSource, self).setUp()
|
||||||
@ -111,30 +79,6 @@ class BuildTestCentosSource(BuildTest, base.BaseTestCase):
|
|||||||
|
|
||||||
|
|
||||||
class BuildTestUbuntuBinary(BuildTest, base.BaseTestCase):
|
class BuildTestUbuntuBinary(BuildTest, base.BaseTestCase):
|
||||||
excluded_images = [
|
|
||||||
"bifrost-base",
|
|
||||||
"blazar-base",
|
|
||||||
"cloudkitty-base",
|
|
||||||
"congress-base",
|
|
||||||
"dragonflow-base",
|
|
||||||
"ec2-api",
|
|
||||||
"freezer-base",
|
|
||||||
"heat-all",
|
|
||||||
"karbor-base",
|
|
||||||
"kuryr-base",
|
|
||||||
"mistral-event-engine",
|
|
||||||
"monasca-base",
|
|
||||||
"novajoin-base",
|
|
||||||
"octavia-base",
|
|
||||||
"searchlight-base",
|
|
||||||
"senlin-base",
|
|
||||||
"solum-base",
|
|
||||||
"tacker-base",
|
|
||||||
"vitrage-base",
|
|
||||||
"vmtp",
|
|
||||||
"zaqar",
|
|
||||||
"zun-base",
|
|
||||||
]
|
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(BuildTestUbuntuBinary, self).setUp()
|
super(BuildTestUbuntuBinary, self).setUp()
|
||||||
@ -143,9 +87,6 @@ class BuildTestUbuntuBinary(BuildTest, base.BaseTestCase):
|
|||||||
|
|
||||||
|
|
||||||
class BuildTestUbuntuSource(BuildTest, base.BaseTestCase):
|
class BuildTestUbuntuSource(BuildTest, base.BaseTestCase):
|
||||||
excluded_images = [
|
|
||||||
"bifrost-base",
|
|
||||||
]
|
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(BuildTestUbuntuSource, self).setUp()
|
super(BuildTestUbuntuSource, self).setUp()
|
||||||
@ -154,31 +95,6 @@ class BuildTestUbuntuSource(BuildTest, base.BaseTestCase):
|
|||||||
|
|
||||||
|
|
||||||
class BuildTestDebianBinary(BuildTest, base.BaseTestCase):
|
class BuildTestDebianBinary(BuildTest, base.BaseTestCase):
|
||||||
excluded_images = [
|
|
||||||
"bifrost-base",
|
|
||||||
"blazar-base",
|
|
||||||
"cloudkitty-base",
|
|
||||||
"congress-base",
|
|
||||||
"dragonflow-base",
|
|
||||||
"ec2-api",
|
|
||||||
"freezer-base",
|
|
||||||
"heat-all",
|
|
||||||
"karbor-base",
|
|
||||||
"kuryr-base",
|
|
||||||
"mistral-event-engine",
|
|
||||||
"monasca-base",
|
|
||||||
"novajoin-base",
|
|
||||||
"octavia-base",
|
|
||||||
"searchlight-base",
|
|
||||||
"senlin-base",
|
|
||||||
"sensu-base",
|
|
||||||
"solum-base",
|
|
||||||
"tacker-base",
|
|
||||||
"vitrage-base",
|
|
||||||
"vmtp",
|
|
||||||
"zaqar",
|
|
||||||
"zun-base"
|
|
||||||
]
|
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(BuildTestDebianBinary, self).setUp()
|
super(BuildTestDebianBinary, self).setUp()
|
||||||
@ -187,10 +103,6 @@ class BuildTestDebianBinary(BuildTest, base.BaseTestCase):
|
|||||||
|
|
||||||
|
|
||||||
class BuildTestDebianSource(BuildTest, base.BaseTestCase):
|
class BuildTestDebianSource(BuildTest, base.BaseTestCase):
|
||||||
excluded_images = [
|
|
||||||
"bifrost-base",
|
|
||||||
"sensu-base",
|
|
||||||
]
|
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(BuildTestDebianSource, self).setUp()
|
super(BuildTestDebianSource, self).setUp()
|
||||||
@ -199,24 +111,6 @@ class BuildTestDebianSource(BuildTest, base.BaseTestCase):
|
|||||||
|
|
||||||
|
|
||||||
class BuildTestOracleLinuxBinary(BuildTest, base.BaseTestCase):
|
class BuildTestOracleLinuxBinary(BuildTest, base.BaseTestCase):
|
||||||
excluded_images = [
|
|
||||||
"bifrost-base",
|
|
||||||
"blazar-base",
|
|
||||||
"dragonflow-base",
|
|
||||||
"freezer-base",
|
|
||||||
"kafka",
|
|
||||||
"karbor-base",
|
|
||||||
"kuryr-base",
|
|
||||||
"monasca-base",
|
|
||||||
"neutron-bgp-dragent",
|
|
||||||
"ovsdpdk",
|
|
||||||
"searchlight-base",
|
|
||||||
"senlin-base",
|
|
||||||
"solum-base",
|
|
||||||
"vitrage-base",
|
|
||||||
"vmtp",
|
|
||||||
"zun-base",
|
|
||||||
]
|
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(BuildTestOracleLinuxBinary, self).setUp()
|
super(BuildTestOracleLinuxBinary, self).setUp()
|
||||||
@ -225,11 +119,6 @@ class BuildTestOracleLinuxBinary(BuildTest, base.BaseTestCase):
|
|||||||
|
|
||||||
|
|
||||||
class BuildTestOracleLinuxSource(BuildTest, base.BaseTestCase):
|
class BuildTestOracleLinuxSource(BuildTest, base.BaseTestCase):
|
||||||
excluded_images = [
|
|
||||||
"bifrost-base",
|
|
||||||
"kafka",
|
|
||||||
"ovsdpdk",
|
|
||||||
]
|
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(BuildTestOracleLinuxSource, self).setUp()
|
super(BuildTestOracleLinuxSource, self).setUp()
|
||||||
@ -238,36 +127,42 @@ class BuildTestOracleLinuxSource(BuildTest, base.BaseTestCase):
|
|||||||
|
|
||||||
|
|
||||||
class DeployTestCentosBinary(BuildTestCentosBinary):
|
class DeployTestCentosBinary(BuildTestCentosBinary):
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(DeployTestCentosBinary, self).setUp()
|
super(DeployTestCentosBinary, self).setUp()
|
||||||
self.build_args.extend(["--profile", "gate"])
|
self.build_args.extend(["--profile", "gate"])
|
||||||
|
|
||||||
|
|
||||||
class DeployTestCentosSource(BuildTestCentosSource):
|
class DeployTestCentosSource(BuildTestCentosSource):
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(DeployTestCentosSource, self).setUp()
|
super(DeployTestCentosSource, self).setUp()
|
||||||
self.build_args.extend(["--profile", "gate"])
|
self.build_args.extend(["--profile", "gate"])
|
||||||
|
|
||||||
|
|
||||||
class DeployTestOracleLinuxBinary(BuildTestOracleLinuxBinary):
|
class DeployTestOracleLinuxBinary(BuildTestOracleLinuxBinary):
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(DeployTestOracleLinuxBinary, self).setUp()
|
super(DeployTestOracleLinuxBinary, self).setUp()
|
||||||
self.build_args.extend(["--profile", "gate"])
|
self.build_args.extend(["--profile", "gate"])
|
||||||
|
|
||||||
|
|
||||||
class DeployTestOracleLinuxSource(BuildTestOracleLinuxSource):
|
class DeployTestOracleLinuxSource(BuildTestOracleLinuxSource):
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(DeployTestOracleLinuxSource, self).setUp()
|
super(DeployTestOracleLinuxSource, self).setUp()
|
||||||
self.build_args.extend(["--profile", "gate"])
|
self.build_args.extend(["--profile", "gate"])
|
||||||
|
|
||||||
|
|
||||||
class DeployTestUbuntuBinary(BuildTestUbuntuBinary):
|
class DeployTestUbuntuBinary(BuildTestUbuntuBinary):
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(DeployTestUbuntuBinary, self).setUp()
|
super(DeployTestUbuntuBinary, self).setUp()
|
||||||
self.build_args.extend(["--profile", "gate"])
|
self.build_args.extend(["--profile", "gate"])
|
||||||
|
|
||||||
|
|
||||||
class DeployTestUbuntuSource(BuildTestUbuntuSource):
|
class DeployTestUbuntuSource(BuildTestUbuntuSource):
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(DeployTestUbuntuSource, self).setUp()
|
super(DeployTestUbuntuSource, self).setUp()
|
||||||
self.build_args.extend(["--profile", "gate"])
|
self.build_args.extend(["--profile", "gate"])
|
||||||
|
Loading…
x
Reference in New Issue
Block a user