1 / 14

C /C++ Build tools & Testbed

C /C++ Build tools & Testbed. J érémy Nguyen-Xuan (BE/CO/DO) 10.09.12. Build tools. Currently , CommonBuild is used for Java development C/C++ projects use make and /acc/local/. Move away from CommonBuild , Maven is a good candidate Opportunity to unify the builds tools. Maven.

frieda
Télécharger la présentation

C /C++ Build tools & Testbed

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. C/C++ Buildtools&Testbed JérémyNguyen-Xuan (BE/CO/DO) 10.09.12

  2. Build tools • Currently, CommonBuildisused for Java development • C/C++ projects use make and /acc/local/ • Move awayfromCommonBuild, Mavenis a good candidate • Opportunity to unify the buildstools

  3. Maven • Maven NAR – Existing plugin for C/C++ • Modified and extendedMaven NAR to ourneedswith a solution based on Makefiles

  4. Workflow Compilation phase Packaging phase Installation phase Makefiles Maven NAR Maven NAR Source code Dependencies Binaries NAR package Binary repository Resolvedependencies Maven NAR Maven NAR Dependency resolution phase

  5. Usage • CMW – All productsmavenized, usedmainly for the Testbed deployment • Fesa3 – 50% of the projectsconverted, used for immediate feedbacks when check-in code • Timing – Prototyping for new timing system

  6. Testbed Vision Reminder • Goals: • Ensure control system updates will not affect operations • Avoid late discovery of defects, bottlenecks and anomalies • Why? • Avoids costly mistakes • Provide more reliable products and services • Focus on development, not bug fixing for operation Niall TC may 2009

  7. Testbed Vision Reminder • How? • Test the Controls Core Components together • Certify that they work together before deployment • Become part of the standard Controls Workflow • Automate: lower testing effort and time • Scope: • Limited to Control System integration testing • Controls Core Components “release candidates” only • Not “for rent” to individual projects or teams Niall TC may 2009

  8. CO Testbed Hardware in place TIMING FEC03 SERVER06 SERVER07 FEC01 FEC02 FEC05 FEC04 Niall TC may 2009

  9. The Testbed • Aims to improvequalitythroughtesting,for corecontrols components • Covered tests: functional, system, regression, backward compatibility • The tests are runautomatically • Stagingapproach

  10. Testbed structure

  11. Deployment in Testbed • Automaticbuildbased on Bamboo

  12. So far… • Foundseveral bugs and inconsistencies • Used for development (Fesa3, logging system, RBAC) • Test platforms (SLC6, Java7, 64-bit)

  13. Future plans • Add stress tests • Integrate more components • Enhanced tests to cover more scenarios • Make the Testbed a mandatory step in the build/release workflow

  14. Conclusion • Testbed isexpandingwell and needs constant work http://wikis/display/CSTBF/Home • Maven, still in experimental state http://wikis/display/CMMNBUILD/Maven

More Related