Barometer CI setup and test case development
Internship Projects/Mentors
Title | CI development and test case creation |
Status | Completed |
Difficulty | LOW |
Description
Barometer collects system metrics and events to aid in the monitoring of the NFVI and provide means for these metrics and events to be relayed to higher level fault management systems for enforcement and corrective actions. In addition, this information could be fed to analytics systems to enable failure prediction, and can also be used for intelligent workload placement.
Barometer uses collectd to collect the system metrics, and works closely with the collectd community. Increasing the automated test coverage benifits collectd as well as Barometer. The Barometer team has contributed several plugins to collectd, and in some cases, specialised hardware is needed to test that the plugins are functional.
Major work items for the Jerma release are improving the test infrastructure for collectd (particularly for Barometer-contributed plugins). This project will involve automating existing tests for individual plugins. The test automation being set up will be one instance of a set of collectd community CIs, which will report test results somewhere upstream (details are TBD, and the selected candidate may have the opportunity to participate in this discussion and set up the testing infrastructure).
Some of the work items include:
Integrating with CI
Writing test cases for Barometer and collectd (converting manual test cases to the chosen automation tool)
Ensuring functest and xtesting frameworks leverage barometer
Working with CNTT to create required test cases
Documentation, etc.
The prioritization of the activities will be discussed with the mentee based on his/her skillset and expectations.
Additional Information
Each new plugin proposed has a test plan submitted, these are currently not automated, part of the internship project would be automating these tests.
In addition to plugin-level tests, there are also higher level integration tests that will be developed in conjunction with the Common NFV testing taskforce (CNTT).
Barometer Release plan for Jerma
Learning Objectives
Have a comprehensive understanding of Barometer project
Have an understanding of exposing and integrating telemetry across cloud sub-systems
Familiar with the development process and CICD of Barometer/collectd
Take part in the development of test infrastructure for Barometer and collectd
Take an active role as a contributor in Barometer
Expected Outcomes
Accomplish assigned development and test tasks.
Related document and report.
Relation to LF Networking
OPNFV-Barometer
Education Level
Bachelor’s and/or Master’s degree in Computer Science, software Engineering or related technical discipline
Hands on experience in one or more of C/Python/C++
Skills
Familiar with C and Python
Basic understanding of one of the code versioning tools like Git.
Strong written and verbal communication and interpersonal skills in English.
Future plans
The development activities will be part of the testing infrastructure for collectd and Barometer and can help testing efforts as part of the collectd release process
Preferred Hours and Length of Internship
Full time or part time
Mentor(s) Names and Contact Info
Emma Foley efoley@redhat.com
Krzysztof Kepka krzysztof.kepka@intel.com
Jabir Kanhira Kadavathu jabir.kanhira.kadavathu@intel.com
Mentee(s) Names and Contact Info
Vishal Sharma vishaliitr7@gmail.com