eb0bb51faf
This tox environment will be run with check experimental for now. Ultimately it should become part of the gate testing for the role. Change-Id: I410f029816590dde819a6c97bde5f159f7a791d1 Implements: blueprint support-openvswitch
88 lines
2.3 KiB
YAML
88 lines
2.3 KiB
YAML
---
|
|
# Copyright 2015, Rackspace US, Inc.
|
|
#
|
|
# 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.
|
|
|
|
# Packages need to be installed outside
|
|
# of venv to be usable by Ansible
|
|
- name: Install testing pip packages
|
|
pip:
|
|
name: "{{ item }}"
|
|
with_items:
|
|
- python-neutronclient
|
|
- httplib2
|
|
|
|
- name: Check the neutron api
|
|
uri:
|
|
url: "http://localhost:9696"
|
|
status_code: 200
|
|
|
|
# No assertion around this yet, just useful for debug purposes
|
|
# TODO(automagically) - Test for all expected agents and agent status
|
|
- name: Neutron agents status
|
|
shell: |
|
|
. /root/openrc
|
|
neutron agent-list
|
|
register: agent_list
|
|
|
|
- name: Ensure that the DHCP agent is alive
|
|
shell: |
|
|
. /root/openrc
|
|
neutron agent-list | grep DHCP
|
|
register: neutron_dhcp_agent
|
|
until: neutron_dhcp_agent.stdout.find(':-)') != -1
|
|
retries: 5
|
|
delay: 10
|
|
|
|
- name: Create test network
|
|
neutron:
|
|
command: create_network
|
|
openrc_path: /root/openrc
|
|
net_name: test-network
|
|
|
|
- name: Create test subnet
|
|
neutron:
|
|
command: create_subnet
|
|
openrc_path: /root/openrc
|
|
net_name: test-network
|
|
subnet_name: test-subnet
|
|
cidr: "192.168.74.0/24"
|
|
|
|
- name: Create test port
|
|
shell: |
|
|
. /root/openrc
|
|
neutron port-create --name test-port test-network
|
|
register: neutron_port_create
|
|
until: neutron_port_create.rc == 0
|
|
retries: 5
|
|
delay: 10
|
|
|
|
- name: Check for dhcp network namespace
|
|
shell: ip netns
|
|
register: dhcp_namespace
|
|
|
|
- name: Make sure the dhcp namespace is present
|
|
assert:
|
|
that:
|
|
- "'qdhcp' in dhcp_namespace.stdout"
|
|
|
|
- name: Check for iptables checksum rule
|
|
shell: |
|
|
ip netns exec {{ dhcp_namespace.stdout.split(' ')[0] }} iptables -C neutron-dhcp-age-POSTROUTING -t mangle -p udp --dport 68 -j CHECKSUM --checksum-fill
|
|
register: checksum_rule
|
|
until : checksum_rule.rc == 0
|
|
retries: 5
|
|
delay: 10
|
|
when:
|
|
- groups['neutron_linuxbridge_agent'] | length > 0
|