Project Name: Armband

Name for the repository: armband

Project Category: Integration and Testing

Project description

The purpose of this project is simply to integrate and test all aspects of OPNFV releases on ARM-based servers. The goal is to replicate all OPNFV software build, continuous integration, lab provisioning, and testing processes of each standard release OPNFV, such that the release can be available on both Intel Architecture-based and ARM Architecture-based servers.

Scope

This project, while adding support for ARM Architecture-based servers, will simultaneously identify platform dependencies that are necessary to modify to verify OPNFV independence of instruction set architecture at the silicon level, which is necessary for the industry.

The full details of this work, including tasks and schedule, will be determined in the early phase of the project once underway. Working in close coordination with other OPNFV projects and developers familiar with the process followed in building, installing, configuring, and testing the Arno release and beyond, this project will identify the list of tasks and schedule, available components, scripts, tools required etc., in order to accomplish the goal of this project. The steps of executing this project include:

An analysis of what specifics of running OPNFV in ARM architecture are needed

This step will produce a global view of critical path, and expected work in dependent projects, such as Pharos, Octopus, FuncTest, YardStick, etc.

According to the analysis and critical path, collaborate with those dependent projects through resource commitment and code contribution

ARM-specific code development in own repo for integration (e.g. with OVS).

Please note that the spirit of this project focuses on collaborative development with other OPNFV projects in building, installing, configuring and testing, while modifying code as necessary to add support for multi-architecture, for integration purpose. This naturally implies ensuring support ARM-based silicon without impacting x86-based silicon.

The project will also necessitate the population of ARM-based servers in OPNFV Labs, which is discussion on several fronts, but will likely begin in an “incubation lab” of sorts, which is already underway since early in 2015.

This project will also add, in addition to all of the upstream projects planned for the Brahmaputra release, the upstream project OpenDataPlane for additional interfaces to underlying silicon platform.

It should be noted that the overall goal is to be able to demonstrate to the OPNFV community, ISVs, and all end users that OPNFV can be configured, build, deployed and run on any relevant silicon required by the industry. It is expected that some dependencies developed in the Arno release will naturally be discovered and will need to be adjusted through collaborative development to realize this goal. Once this goal is reached, there should be no further special projects required to address the ability to release OPNFV on multi-architectures identified as required for subsequent releases.

Dependencies

Pharos: for the provisioning of ARM-based servers in OPNFV Pharos compliant labs

Octopus: necessary CI tools and scripts, if any, of integration and build for ARM-based servers

FuncTest: necessary test tools and scripts, if any, of integration with test framework for testing

Comprehensive source-to-tested-deployment script for running the entire system start to end for either use in development (deployed system is interesting), performance testing (performance results are interesting) or CI (test passes and failures are interesting).

Proposed Release Schedule

Output of this project directly contributes to, aligns with the standard OPNFV releases.