Test using integrated build

In order to do a more complete verification of any patches,
we add a full uncontainerised OpenStack deployment to do the
functional testing using the integrated repo. This replaces
the previous functional test mechanism.

Any additional role tests are left as-is. They will require
some extra implementation in the integrated build before they
can be transferred.

This also includes a fix in the role which starts using the
os_quota role as the version of Ansible we ship has resolved
that bug.

In addition, the container network name added a trailing
addres which caused the lookup to fail.  This resolves that
issue so the configuration file can be dropped cleanly.

Depends-On: https://review.openstack.org/647840
Depends-On: https://review.openstack.org/648502
Depends-On: https://review.openstack.org/648551
Depends-On: https://review.openstack.org/648579
Depends-On: https://review.openstack.org/648793
Change-Id: I689c679c91c5d516cb8285077c7d3c7c064c9112
This commit is contained in:
Mohammed Naser 2019-03-28 15:09:24 -04:00
parent eee659d342
commit ea21d76875
3 changed files with 54 additions and 25 deletions

View File

@ -25,24 +25,17 @@
{{ (octavia_service_setup_host == 'localhost') | ternary(ansible_playbook_python, ansible_python['executable']) }}
block:
- name: Setup the service project quota
# The os_quota module has a bug that it always requires a
# configured cinder service to work, so we use the CLI instead.
# TODO(_xgerman):
# Use the os_quota module once the issue is resolved.
shell: >-
openstack quota set
--os-cloud default
--cores {{ octavia_num_cores }}
--instances {{ octavia_num_instances }}
--ram {{ octavia_ram }}
--server-groups {{ octavia_num_server_groups }}
--server-group-members {{ octavia_num_server_group_members }}
--secgroups {{ octavia_num_secgroups }}
--ports {{ octavia_num_ports }}
--secgroup-rules {{ octavia_num_security_group_rules }}
{{ octavia_service_project_name }}
tags:
- skip_ansible_lint
os_quota:
cloud: default
name: "{{ octavia_service_project_name }}"
cores: "{{ octavia_num_cores }}"
instances: "{{ octavia_num_instances }}"
ram: "{{ octavia_ram }}"
server_groups: "{{ octavia_num_server_groups }}"
server_group_members: "{{ octavia_num_server_group_members }}"
security_group: "{{ octavia_num_secgroups }}"
security_group_rule: "{{ octavia_num_security_group_rules }}"
port: "{{ octavia_num_ports }}"
- name: Create Octavia security group
os_security_group:

37
zuul.d/jobs.yaml Normal file
View File

@ -0,0 +1,37 @@
---
#
# 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.
- job:
name: openstack-ansible-deploy-aio_metal_octavia-centos-7
parent: openstack-ansible-deploy-aio
nodeset: centos-7
vars:
action: deploy
scenario: aio_metal_octavia
- job:
name: openstack-ansible-deploy-aio_metal_octavia-opensuse-150
parent: openstack-ansible-deploy-aio
nodeset: opensuse-150
vars:
action: deploy
scenario: aio_metal_octavia
- job:
name: openstack-ansible-deploy-aio_metal_octavia-ubuntu-bionic
parent: openstack-ansible-deploy-aio
nodeset: ubuntu-bionic
vars:
action: deploy
scenario: aio_metal_octavia

View File

@ -15,18 +15,17 @@
- project:
templates:
- check-requirements
- openstack-ansible-linters
- publish-openstack-docs-pti
- release-notes-jobs-python3
check:
jobs:
- openstack-ansible-linters
- openstack-ansible-functional-ubuntu-xenial
- openstack-ansible-functional-ubuntu-bionic
- openstack-ansible-deploy-aio_metal_octavia-centos-7
- openstack-ansible-deploy-aio_metal_octavia-ubuntu-bionic
experimental:
jobs:
- openstack-ansible-integrated-deploy-aio
- openstack-ansible-deploy-aio_metal_octavia-opensuse-150
gate:
jobs:
- openstack-ansible-linters
- openstack-ansible-functional-ubuntu-xenial
- openstack-ansible-functional-ubuntu-bionic
- openstack-ansible-deploy-aio_metal_octavia-centos-7
- openstack-ansible-deploy-aio_metal_octavia-ubuntu-bionic