Add Fedora image and flavor fixtures
Change-Id: I36c738f7a24f35acbd78ba6a76a337c6bfa8c5d9
This commit is contained in:
parent
5c18389698
commit
a6014b919f
@ -29,6 +29,7 @@ OPTIONS = [
|
|||||||
|
|
||||||
GLANCE_IMAGE_NAMES = ['centos',
|
GLANCE_IMAGE_NAMES = ['centos',
|
||||||
'cirros',
|
'cirros',
|
||||||
|
'fedora',
|
||||||
'ubuntu']
|
'ubuntu']
|
||||||
|
|
||||||
|
|
||||||
|
@ -17,6 +17,7 @@ from __future__ import absolute_import
|
|||||||
|
|
||||||
from tobiko.openstack.stacks import _centos
|
from tobiko.openstack.stacks import _centos
|
||||||
from tobiko.openstack.stacks import _cirros
|
from tobiko.openstack.stacks import _cirros
|
||||||
|
from tobiko.openstack.stacks import _fedora
|
||||||
from tobiko.openstack.stacks import _l3ha
|
from tobiko.openstack.stacks import _l3ha
|
||||||
from tobiko.openstack.stacks import _neutron
|
from tobiko.openstack.stacks import _neutron
|
||||||
from tobiko.openstack.stacks import _nova
|
from tobiko.openstack.stacks import _nova
|
||||||
@ -40,6 +41,10 @@ L3haPeerServerStackFixture = _l3ha.L3haPeerServerStackFixture
|
|||||||
L3haDifferentHostServerStackFixture = _l3ha.L3haDifferentHostServerStackFixture
|
L3haDifferentHostServerStackFixture = _l3ha.L3haDifferentHostServerStackFixture
|
||||||
L3haSameHostServerStackFixture = _l3ha.L3haSameHostServerStackFixture
|
L3haSameHostServerStackFixture = _l3ha.L3haSameHostServerStackFixture
|
||||||
|
|
||||||
|
FedoraFlavorStackFixture = _fedora.FedoraFlavorStackFixture
|
||||||
|
FedoraImageFixture = _fedora.FedoraImageFixture
|
||||||
|
FedoraServerStackFixture = _fedora.FedoraServerStackFixture
|
||||||
|
|
||||||
NetworkStackFixture = _neutron.NetworkStackFixture
|
NetworkStackFixture = _neutron.NetworkStackFixture
|
||||||
NetworkWithNetMtuWriteStackFixture = (
|
NetworkWithNetMtuWriteStackFixture = (
|
||||||
_neutron.NetworkWithNetMtuWriteStackFixture)
|
_neutron.NetworkWithNetMtuWriteStackFixture)
|
||||||
|
49
tobiko/openstack/stacks/_fedora.py
Normal file
49
tobiko/openstack/stacks/_fedora.py
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
# Copyright 2019 Red Hat
|
||||||
|
#
|
||||||
|
# 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.
|
||||||
|
from __future__ import absolute_import
|
||||||
|
|
||||||
|
import tobiko
|
||||||
|
from tobiko import config
|
||||||
|
from tobiko.openstack import glance
|
||||||
|
from tobiko.openstack.stacks import _nova
|
||||||
|
|
||||||
|
CONF = config.CONF
|
||||||
|
|
||||||
|
FEDORA_IMAGE_URL = \
|
||||||
|
('https://download.fedoraproject.org/pub/fedora/linux/releases/'
|
||||||
|
'30/Cloud/x86_64/images/Fedora-Cloud-Base-30-1.2.x86_64.qcow2')
|
||||||
|
|
||||||
|
|
||||||
|
class FedoraImageFixture(glance.URLGlanceImageFixture):
|
||||||
|
|
||||||
|
image_url = CONF.tobiko.fedora.image_url or FEDORA_IMAGE_URL
|
||||||
|
image_name = CONF.tobiko.fedora.image_name
|
||||||
|
image_file = CONF.tobiko.fedora.image_file
|
||||||
|
disk_format = CONF.tobiko.fedora.disk_format or "qcow2"
|
||||||
|
container_format = CONF.tobiko.fedora.container_format or "bare"
|
||||||
|
username = CONF.tobiko.fedora.username or 'fedora'
|
||||||
|
password = CONF.tobiko.fedora.password
|
||||||
|
|
||||||
|
|
||||||
|
class FedoraFlavorStackFixture(_nova.FlavorStackFixture):
|
||||||
|
ram = 512
|
||||||
|
|
||||||
|
|
||||||
|
class FedoraServerStackFixture(_nova.ServerStackFixture):
|
||||||
|
|
||||||
|
#: Glance image used to create a Nova server instance
|
||||||
|
image_fixture = tobiko.required_setup_fixture(FedoraImageFixture)
|
||||||
|
|
||||||
|
#: Glance image used to create a Nova server instance
|
||||||
|
flavor_stack = tobiko.required_setup_fixture(FedoraFlavorStackFixture)
|
34
tobiko/tests/functional/openstack/stacks/test_fedora.py
Normal file
34
tobiko/tests/functional/openstack/stacks/test_fedora.py
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
# Copyright (c) 2019 Red Hat, Inc.
|
||||||
|
#
|
||||||
|
# All Rights Reserved.
|
||||||
|
#
|
||||||
|
# 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.
|
||||||
|
from __future__ import absolute_import
|
||||||
|
|
||||||
|
import tobiko
|
||||||
|
from tobiko.shell import sh
|
||||||
|
from tobiko.openstack import stacks
|
||||||
|
from tobiko.tests.functional.openstack.stacks import test_cirros
|
||||||
|
|
||||||
|
|
||||||
|
class FedoraServerStackTest(test_cirros.CirrosServerStackTest):
|
||||||
|
"""Tests connectivity to Nova instances via floating IPs"""
|
||||||
|
|
||||||
|
#: Stack of resources with a server attached to a floating IP
|
||||||
|
stack = tobiko.required_setup_fixture(stacks.FedoraServerStackFixture)
|
||||||
|
|
||||||
|
def test_python(self):
|
||||||
|
python_version = sh.execute(['python3', '--version'],
|
||||||
|
ssh_client=self.stack.ssh_client).stdout
|
||||||
|
self.assertTrue(python_version.startswith('Python 3.'),
|
||||||
|
python_version)
|
Loading…
x
Reference in New Issue
Block a user