Juniper/contrail-test

Name: contrail-test

Owner: Juniper Networks

Description: null

Created: 2013-11-19 01:03:19.0

Updated: 2018-04-02 21:46:32.0

Pushed: 2018-04-02 21:46:30.0

Homepage: null

Size: 21661

Language: Python

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

Contrail Test Scripts

This software is licensed under the Apache License, Version 2.0 (the “License”); you may not use this software 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.

Overview

The Contrail Test repository contains the test code for validating the Contrail infrastructure. The code is organized into fixtures , scripts and serial_scripts.

Testcases under scripts folder are independent of each other and can be run in parallel. Testcases under serial_scripts can have cluster-wide impact and MUST be run only one at a time.

run_tests.sh lets you run these tests as well. Take a look at this .

fixtures

Contains high level fixtures for creating projects, virtual networks, virtual machines, floating ips, policies, security-groups, service instances, VPCs, VDNS etc. and validate these objects against Contrail components like Contrail API Server, Control nodes, Virtual Routers. The fixtures provide verify_on_setup() and verify_on_cleanup() methods to achieve this. They also provide some commonly used methods to work with these objects. Examples include:

scripts, serial_scripts

Test scripts at a per-feature level. Sub-folders are created for the features.

Test container

The scripts can be executed from a containerized environment. As part of the contrail software the test containers are also being built and posted @ https://hub.docker.com/r/opencontrailnightly/contrail-test-test/

Build test container

Test container is split into base and test containers where in base has sku and orchestrator independent packages like testr, chrome, wget, git etal and test container has orchestrator and sku specific packages on top of base.

One can also custom build base and test containers

To build base test container
$> ./build-container.sh base -h
   Build base container

   Usage: ./build-container.sh base
     -h|--help                     Print help message
     --registry-server REGISTRY_SERVER Docker registry hosting the base test container, specify if the image needs to be pushed
     --tag             TAG           Docker container tag, default to sku
$> ./build-container.sh base --registry-server opencontrailnightly/ --tag ocata-bld-1
To build test container
$> ./build-container.sh test -h
   Build test container

   Usage: ./build-container.sh test [OPTIONS]

     -h|--help                     Print help message
     --tag           TAG           Docker container tag, default to sku
     --base-tag      BASE_TAG      Specify contrail-base-test container tag to use. Defaults to 'latest'.
     --sku           SKU           Openstack version. Defaults to ocata
     --contrail-repo CONTRAIL_REPO Contrail Repository, optional, if unspecified specify --package-url.
     --package-url   INSTALL_PKG   Contrail-install-packages package url (scp:// or http:// or https://)
                                   Optional, if unspecified specify --package-url
                                   Local repo will be setup based on install package.
                                   In case of scp, specify the below env variables
                                   SSHUSER - user name to be used during scp, Default: current user
                                   SSHPASS - user password to be used during scp
     --registry-server REGISTRY_SERVER Docker registry hosting the base test container, Defaults to docker.io/opencontrail
     --post          POST          Upload the test container to the registy-server, if specified
$> ./build-container.sh test --tag ocata-bld-1 --base-tag ocata-bld-1 --sku ocata --package-url http://path/to/contrail-install-packages.rpm --contrail-repo http://path/to/contrail/repo/bld-1 --registry-server opencontrailnightly
Running Tests
Filing Bugs

Use launchpad http://bugs.launchpad.net/juniperopenstack to describe new bugs.

It will be useful to include the test run log file.

For post-analysis of a cluster, a fab task attach_logs_cores can collect the logs and cassandra logs.

Queries

Mail to dev@lists.opencontrail.org and users@lists.opencontrail.org.

IRC

#opencontrail on freenode.net


This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.