Extensions for the ETICS client for Multi-Platform Support in NGIs Driven by User Requirements
description
Transcript of Extensions for the ETICS client for Multi-Platform Support in NGIs Driven by User Requirements
Extensions for the ETICS client for Multi-Platform Support in NGIs
Driven by User Requirements
Eamonn Kenny*, Brian Coghlan, Peter Lavin, John Walsh
Conference: CGW’09 Date: Oct 12th
User Community in EGI/NGI Infrastructure
EGI
NGI NGI
NGINGI
Site
YDL
Site
Site
SiteSite Ubuntu
Darwin
SLES
SL5
SL5
SL5SPARC
EGI/NGI linked Site/NGI provision
User requirements
site linked
NGI sites
Communications
SL5
Debian
AIX
site
platform
Open Source ETICS Structure
EMI/UMD
NGI NGI
NGINGI
Site
YDL
Site
Site
SiteSite Ubuntu
Darwin
SLES
SL5
SL5
SL5SPARC
Site/NGI provision
User requirements
NGI sites
CommunicationsAIX
Debian
SL5
ETICS server
ETICS clients
Extensions for Multi-Platform Support
XML Build System Wrapper• XML based build descriptions for multi-platform support• An automated GNU patch generation based on fixes to ETICS
components, timestamped and stored for future patching.• Python based module, used as an interpreter for XML build
descriptions, an intermediate patching system applied between checkout and builds, and table/report generation.
Extra Utilities• Automated timestamped checkouts of ETICS configurations to
be patched from the ETICS command-line interface.• Automatic RPM/deb to tarball generators in a form ready for
integration into ETICS.• Python scripts used to create wiki tables showing differences
between multiple build result files.Reporting• Automatic sync and storage of XML/HTML in a directory
structure allowing automatic HTML table generation.• A Hypergraph generator using the ETICS XML results set
Extended client directory structure
ETICSclient
Commandline
bin
lib/lib64
repository
Xmlparsing
patches<project>
workspaceTarballcreator
Main:xml-etics-build
timestampauto-
checkout
auto-commit
Mainextension
HTMLgen
ETICS
patches
Project/component
RPM/debgenerator
DMDM-modulesproject-rulesbuild-rulespatches
eticsupdate
web-server
python bash patches xml vendor
LEGEND
Hyper-graphs
XML Based Build Structure
User runs commands like:$ ./xml-etics-build2 --dryrun --targets=“patch,build,publish” org.glite-workspace/WN-3.2.0.xml
build-rules.xml
project-rules.xml
WN-modules-3.2.0.xml
WN-3.2.0.xml
Build Results & Achievements
• Building on CentOS 5.x/4.x (x86/x86_64), Debian 4.0/5.0 (x86_64), Mac OS X 10.5 (x86), Play Station 3 (PowerPC), openSUSE 11.1 (x86_64)
• Local builds are way ahead of CERN for Debian 5.0 x86_64/x86 although all patches auto-generated with timestamps are applied locally and defined in CERN savannah bug tracking system.
• Debian 5.0/4.0 x86_64 gLite-UI/WN and openSUSE 11.1 x86_64 glite-WN are ready for test. gLite-WN without DM is running on PS3 for local users drug screening software.
Conclusions
• TCD has been effectively using this software for 3-4 years now.
• The software is much more well developed since presented in CGW’07.
• The software is relatively easy to manage and provides a good framework for anyone using ETICS locally.
• The patches generated at the local sites MUST be fed back by NGI’s to EGI.
• Going forward, open source development/porting of grid middleware should be encouraged!