Slawek Kaplonski d833b3d2ee Fix connectivity between multinode devstack jobs
To have connectivity through public network to the vms which are on
various nodes in the ci job, we need to configure special bridge called
"br-infra" and connect this bridge with br-ex with patch ports.
This can be done using "multi-node-bridge" role from zuul roles and
"multi-node-setup" added to this repository.

Change-Id: I80d7d2bed8291ba21ddc68b48fef5d0aac996b39
2020-12-18 14:49:15 +01:00

297 lines
8.2 KiB
YAML

---
- job:
name: devstack-tobiko-base
parent: devstack
abstract: true
description: |
Base Devstack Tobiko Plugin job.
This job provides the base for both the single and multi-node
test setup. To run a multi-node test inherit from devstack-tobiko
job and set the nodeset to a multi-node one.
required-projects:
- openstack/devstack-gate
- openstack/heat
- openstack/neutron
- openstack/requirements
- x/devstack-plugin-tobiko
- x/tobiko
roles:
- zuul: x/tobiko
timeout: 7200
vars:
devstack_localrc:
MULTI_HOST: 0
LOG_COLOR: false
NETWORK_API_EXTENSIONS: >-
address-scope,agent,allowed-address-pairs,auto-allocated-topology,
availability_zone,binding,default-subnetpools,dhcp_agent_scheduler,
dns-domain-ports,dns-integration,dvr,empty-string-filtering,
ext-gw-mode,external-net,extra_dhcp_opt,extraroute,filter-validation,
fip-port-details,flavors,ip-substring-filtering,l3-flavors,l3-ha,
l3_agent_scheduler,logging,metering,multi-provider,net-mtu,
net-mtu-writable,network-ip-availability,network_availability_zone,
pagination,port-security,project-id,provider,qos,
qos-bw-minimum-ingress,qos-fip,quotas,quota_details,rbac-policies,
router,router_availability_zone,security-group,
port-mac-address-regenerate,port-security-groups-filtering,
segment,service-type,sorting,standard-attr-description,
standard-attr-revisions,standard-attr-segment,
standard-attr-timestamp,standard-attr-tag,subnet_allocation,
trunk,trunk-details,uplink-status-propagation
TOBIKO_NEUTRON_IPV4_DNS_NAMESERVERS:
"{{ ipv4_dns_nameservers | join(',') }}"
TOBIKO_NEUTRON_IPV6_DNS_NAMESERVERS:
"{{ ipv6_dns_nameservers | join(',') }}"
devstack_plugins:
heat: https://opendev.org/openstack/heat.git
neutron: https://opendev.org/openstack/neutron.git
devstack-plugin-tobiko: https://opendev.org/x/devstack-plugin-tobiko.git
devstack_services:
heat: true
h-api: true
h-api-cfn: true
h-eng: true
n-cpu: true
# NOTE(slaweq): we need to enable it as "legacy" service because for
# Fedora job it has to be disabled. If it would be disabled as
# "neutron-dns: false" then it devstack would consider that
# neutron-legacy isn't used and would not load proper files
q-dns: true
# see bug #1860753 (https://bugs.launchpad.net/devstack/+bug/1860753)
memory_tracker: false
neutron-qos: true
neutron-segments: true
neutron-trunk: true
neutron-uplink-status-propagation: true
tempest: false
tls-proxy: false
# NOTE(slaweq): Swift can't run with python3 currently
s-account: false
s-container: false
s-object: false
s-proxy: false
# NOTE(slaweq): without Swift, c-bak cannot run (in the Gate at least)
c-bak: false
devstack_local_conf:
post-config:
$NEUTRON_CONF:
QUOTAS:
quota_router: 100
quota_floatingip: 500
quota_security_group: 100
quota_security_group_rule: 1000
$NOVA_CONF:
quota:
instances: 20
ipv4_dns_nameservers:
- 1.0.0.1
- 8.8.8.8
ipv6_dns_nameservers: []
zuul_copy_output:
'{{ stage_dir }}/stackviz': logs
extensions_to_txt:
conf: true
log: true
yaml: true
yml: true
test_log_debug: true
test_case_timeout: 1800
requirements_dir: >-
{{ ansible_user_dir }}/src/opendev.org/openstack/requirements
upper_constraints_file: '{{ requirements_dir }}/upper-constraints.txt'
pre-run: playbooks/devstack/pre.yaml
run: playbooks/devstack/run.yaml
post-run: playbooks/devstack/post.yaml
irrelevant-files:
- ^.*\.rst$
- ^doc/
- ^infrared_plugin/
- ^releasenotes/
- ^report/
- ^tobiko/tests/unit/
- job:
name: devstack-tobiko-octavia
parent: devstack-tobiko-base
abstract: true
description: |
Base Tobiko devstack job to be used with Octavia.
required-projects:
- openstack/barbican
- openstack/diskimage-builder
- openstack/octavia
- openstack/octavia-lib
- openstack/python-barbicanclient
- openstack/tripleo-image-elements
timeout: 7800
vars:
devstack_services:
# Octavia
octavia: true
o-cw: true
o-hk: true
o-hm: true
o-api: true
zuul_copy_output:
'/var/log/dib-build/': logs
'/var/log/octavia-tenant-traffic.log': logs
'/var/log/octavia-amphora.log': logs
extensions_to_txt:
conf: true
log: true
yaml: true
yml: true
- job:
name: devstack-tobiko
parent: devstack-tobiko-octavia
abstract: true
- job:
name: devstack-tobiko-gate
parent: devstack-tobiko
description: |
Tobiko devstack job for gating Tobiko changes.
nodeset: openstack-single-node-focal
voting: false
vars:
test_workflow: gate
irrelevant-files:
- ^.*\.rst$
- ^doc/
- ^infrared_plugin/
- ^releasenotes/
- ^report/
- ^tobiko/tests/faults/
- job:
name: devstack-tobiko-functional
parent: devstack-tobiko
description: |
Base Tobiko devstack job to execute functional tests.
vars:
test_workflow: functional
irrelevant-files:
- ^.*\.rst$
- ^doc/
- ^infrared_plugin/
- ^releasenotes/
- ^report/
- ^tobiko/tests/faults/
- ^tobiko/tests/scenario/
- ^tobiko/tests/unit/
- job:
name: devstack-tobiko-functional-centos
parent: devstack-tobiko-functional
nodeset: devstack-single-node-centos-8
voting: false
- job:
name: devstack-tobiko-functional-ubuntu
parent: devstack-tobiko-functional
nodeset: openstack-single-node-focal
voting: true
- job:
name: devstack-tobiko-scenario
parent: devstack-tobiko
description: |
Base Tobiko devstack job to execute functional tests.
vars:
test_workflow: create-resources
irrelevant-files:
- ^.*\.rst$
- ^doc/
- ^infrared_plugin/
- ^releasenotes/
- ^report/
- ^tobiko/tests/faults/
- ^tobiko/tests/functional/
- ^tobiko/tests/unit/
- job:
name: devstack-tobiko-multinode
parent: devstack-tobiko
abstract: true
description: Base DevStack Tobiko job with multinode.
timeout: 10800
pre-run: playbooks/multinode-setup.yaml
vars:
topology: multinode
devstack_localrc:
ENABLE_FILE_INJECTION: true
MULTI_HOST: 1
devstack_services:
n-cpu: false
group-vars:
subnode:
devstack_services:
c-vol: true
dstat: true
heat: false
h-api: false
h-api-cfn: false
h-eng: false
n-api-meta: true
placement-client: true
n-cpu: true
neutron-agent: true
# see bug #1860753 (https://bugs.launchpad.net/devstack/+bug/1860753)
memory_tracker: false
q-agt: true
q-l3: true
q-meta: true
tls-proxy: false
- job:
name: devstack-tobiko-faults
parent: devstack-tobiko-multinode
abstract: true
description: |
Base Tobiko devstack job to execute scenario+faults+scenario test cases.
vars:
test_workflow: faults
irrelevant-files:
- ^.*\.rst$
- ^doc/
- ^infrared_plugin/
- ^releasenotes/
- ^report/
- ^tobiko/tests/functional/
- ^tobiko/tests/unit/
- job:
name: devstack-tobiko-faults-centos
parent: devstack-tobiko-faults
nodeset: devstack-tobiko-multinode-centos
voting: false
- job:
name: devstack-tobiko-faults-ubuntu
parent: devstack-tobiko-faults
nodeset: devstack-tobiko-multinode-ubuntu
voting: false
vars:
devstack_services:
tls-proxy: true
group-vars:
subnode:
devstack_services:
tls-proxy: true