Build and Test system for FairRoot

Slides:



Advertisements
Similar presentations
IcePro Source Code Management Source code analysis Runtime analysis Application deployment Source code generation Multi sites Click ! IcePro.
Advertisements

National Alliance for Medical Image Computing Testing with CTest and CDash Julien Jomier Kitware Inc.
Let Use SVN(Subversion) Interaction Lab. Hyo-Geun Ahn
Visual Studio Online. What it Provides Visual Studio Online, based on the capabilities of Team Foundation Server with additional cloud services, is the.
1 CS 106, Winter 2009 Class 4, Section 4 Slides by: Dr. Cynthia A. Brown, Instructor section 4: Dr. Herbert G. Mayer,
CS 501 : An Introduction to SCM & GForge An Introduction to SCM & GForge Lin Guo
Low level CASE: Source Code Management. Source Code Management  Also known as Configuration Management  Source Code Managers are tools that: –Archive.
Source Control Repositories for Enabling Team Working Svetlin Nakov Telerik Corporation
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
SubVersioN – the new Central Service at DESY by Marian Gawron.
Talend 5.4 Architecture Adam Pemble Talend Professional Services.
Perforce (Version Control Software). Perforce is an enterprise version management system in which users connect to a shared file repository. Perforce.
NA-MIC, 2008 June Workshop, IHK Akademie Westerham Engineering Methodology Sebastien BARRE, Ph.D. - Kitware, Inc.
Software Process, CMake, Dashboards, CPack Bill Hoffman Kitware, Inc.
DB2 (Express C Edition) Installation and Using a Database
Trilinos User Group Meeting Thursday, November 8 th, 2007 Timothy M. Shead (1424) Danny Dunlavy (1415) SAND P Sandia is a multiprogram laboratory.
Object-Oriented Analysis & Design Subversion. Contents  Configuration management  The repository  Versioning  Tags  Branches  Subversion 2.
FairRoot Build and Test System
CS 390 Unix Programming Summer Unix Programming - CS 3902 Course Details Online Information Please check.
HSAI Institute for Maneuverability and Terrain Physics Simulations (IMTPS) Software Engineering Owen J. Eslinger, Ph.D. 8 Oct 2009.
Installing CompuCell3D from source Maciej Swat Biocomplexity Institute, Indiana University.
CVS – concurrent versions system Network Management Workshop intERlab at AIT Thailand March 11-15, 2008.
CMake refactoring P. Hristov 19/03/2014. History I  Recursive makefiles (F.Carminati):  Problems in dependencies  Slow  "Recursive Makefiles.
DCDaPS: Digital Content Distribution and Publishing System.
Developing software and hardware in parallel Vladimir Rubanov ISP RAS.
CVS – concurrent versions system AROC Guatemala July 19-23, 2010 Guatemala City, Guatemala.
© 2007 OPNET Technologies, Inc. All rights reserved. OPNET and OPNET product names are trademarks of OPNET Technologies, Inc. An Open Source ARM 4 Implementation.
SWGData and Software Access - 1 UCB, Nov 15/16, 2006 THEMIS SCIENCE WORKING TEAM MEETING Data and Software Access Ken Bromund GST Inc., at NASA/GSFC.
L.T.E :: Learning Through Experimenting Using google-svn for MtM Docs Development Denis Thibault Version 3.2 Mar 12 th, 2009.
Build Tools 1. Building a program for a large project is usually managed by a build tool that controls the various steps involved. These steps may include:
How to configure, build and install Trilinos November 2, :30-9:30 a.m. Jim Willenbring.
Selenium server By, Kartikeya Rastogi Mayur Sapre Mosheca. R
Active-HDL Server Farm Course 11. All materials updated on: September 30, 2004 Outline 1.Introduction 2.Advantages 3.Requirements 4.Installation 5.Architecture.
1 Programming and problem solving in C, Maxima, and Excel.
Guide To Develop Mobile Apps With Titanium. Agenda Overview Installation of Platform SDKs Pros of Appcelerator Titanium Cons of Appcelerator Titanium.
IBM Worklight environment setup 1. Eclipse IDE Multi-purpose integrated development environment (IDE) Open source Supported for Windows, Mac OS X, Linux.
CMake: Experience in ALICE P. Hristov 19/06/12. History I Recursive makefiles (F.Carminati): – Problems in dependencies – Slow "Recursive Makefiles.
Take Your Data Analysis and Reporting to the Next Level by Combining SAS Office Analytics, SAS Visual Analytics, and SAS Studio David Bailey Tim Beese.
Project SCS a lightweight source control system for Windows platforms.
Course : PGClass : MCA Subject: Operating SystemSub.Code : 3CT11 Staff Name : S.SomasundaramYear & Sem : II nd & III rd.
Software development tools
CMake - Cross-Platform Make R. Douglas Barbieri Made to Order Software Corporation.
Version Control Systems
Integrating ArcSight with Enterprise Ticketing Systems
Agenda:- DevOps Tools Chef Jenkins Puppet Apache Ant Apache Maven Logstash Docker New Relic Gradle Git.
Integrating ArcSight with Enterprise Ticketing Systems
What are they? The Package Repository Client is a set of Tcl scripts that are capable of locating, downloading, and installing packages for both Tcl and.
Computer Terms Review from what language did C++ originate?
CVS – concurrent versions system
CVS – concurrent versions system
Introduction to .NET Core
A technical look at new capabilities and features
Version Control Systems
Getting started in Eclipse
Printer Admin Print Job Manager
Chapter 2: Operating-System Structures
Git Version Control for Everyone
DHCP, DNS, Client Connection, Assignment 1 1.3
X in [Integration, Delivery, Deployment]
Presented by: Anusha Kolla
CodePeer Update Arnaud Charlet CodePeer Update Arnaud Charlet
Design and Programming
.NET and .NET Core Foot View of .NET Pan Wuming 2017.
Cmake Primer.
CodePeer Update Arnaud Charlet CodePeer Update Arnaud Charlet
Objective Understand web-based digital media production methods, software, and hardware. Course Weight : 10%
Concurrent Versions System
Computer Terms Review from what language did C++ originate?
Carthage ios 8 onwards Dependency manager that streamlines the process of integrating the libraries into the project.
Web Application Development Using PHP
Presentation transcript:

Build and Test system for FairRoot M. Al-Turany, R. Karabowicz and F. Uhlig (f.uhlig@gsi.de) GSI, Darmstadt, Germany The simulation and analysis framework FairRoot, developed for the experiments at the new accelerator center FAIR, uses the open source tool CMake as bases for their build and test system. The open source tool CDash is used to setup a website as central entry point to access all the gathered information about the status of the system. CMake is an open-source, cross-platform C/C++ build manager, available for a great variety of platforms (Linux, MacOS, SunOS, HPUX, Irix, Windows,...), that lets you specify build parameters in text files. These text files are then used by CMake to generate files for native build tools such as UNIX-style makefiles or project files for IDE's like Eclipse, KDevelop, XCode and Visual Studio. This enables the developer to work with the development environment he is used to and not to use the tool which was chosen by someone else which increases the productivity. CMake provides a "simple" macro language which is powerful enough to setup the build environment even for complex projects, but CMake supports also complex custom commands whose results can be used in the input files. In FairRoot this functionality is used to run the Root C Interpreter (Cint) which create source files compiled later during the build process. CMake includes also a complete and automatic dependency generation for C, C++ and Fortran. 1 www.cmake.org 1 2 CDash is an open source, web-based software testing server. CDash aggregates, analyzes and displays the results of software testing processes submitted from clients located anywhere. FairRoot uses CDash to check the state of our software system, and to continually improve the quality of our code. CDash was developed to design, manage and maintain large-scale software systems. 2 www.cdash.org Testing FairRoot fully supports many platforms (different Linux flavors, Mac OS and support for Open Solaris on the way) with an increasing size and complexity of the project. Beside that the project depends also on many external software packages. It is quite evident that we have to identify problems when they occur, so One of our important goals is to know the status of the project as much detailed as possible at any time. For this task we use CTest (part of CMake) together with the dashboard CDash. Due to the perfect integration of CTest in CMake the setup of the tests in the build process is easy. The tests in our case are running Root macros which starts a simulation, reconstruction or analysis. The complete test chain is more complex. It starts with an update of the local working directory from the SVN repository. After this step the configuration creates the makefiles necessary on the actual platform. Finally after the project was build out of the sources, the tests are done and all the results are send to the central web-server. On the web-server the gathered data is available for display. This push scheme allow users to setup their own client if they have a new "untested" platform without any work for the administrators of the web-server. The test cycle can be started manually if developers want to test some new features they have implemented in their private version, or they can be started automatically. A nightly test run on all supported platforms each night and a continuous test runs whenever there was a commit to our SVN repository. SVN maintains source code revision automatic test Typical developer commit code Continuous test Dashboard e-Mail notification in case of problems Check results