19.12.2011 WP7 Conference Call
From IMarine Wiki
Time: Monday December 19, 2011, 15:00 - 16:00 Europe/Rome
Phone call Agenda:
- WP participants, activities and duties
- Testing Infrastructure set-up
- new approaches/activities
- gHN distribution
- support for maven components
- migration to git
- WP tools
- Deliverable D7.1 - TOC and Plan
- Activity Report
- Maintenance Release 2.7.2
P. Pagano (CNR)
Federico De Faveri (CNR)
Manuele Simi (CNR)
Gabriele Giammatteo (ENG)
Andrea Manzi (CERN)
Gerasimos Farantatos (NKUA)
Alex Antoniadi (NKUA)
John Gerbesiotis (NKUA)
Main Discussions and Actions
Review WP participants roles and responsabilities
Activities in the workpackage are allocated as follow:
- CNR will maintain following tools used in release procedures: scm, Trac, Wiki
- ENG will set-up and maintain the testing infrastructure, coordinate release cycles, run deployment testing on ETICS as well as tests on testing infrastructure
- NKUA will follow the documentation validation procedure and will maintain the gCube web site
Setting up of the testing infrastructure
ENG will provide the testing infrastructure. The old testing infrastructure (at 4DSOFT) was counting about 20 nodes. ENG will start with a minimal set of nodes (at least 6) needed to run the enabling services. During the project new nodes will be added to address gCube services testings needs.
Some information have been provided (mainly from CERN) about the old testing infrastructure:
- minimum set of nodes: 6 circa
- OS: mainly SLC5 and Ubuntu
- no need for public IP addresses for all nodes.
Those information is helpful to set-up new infrastructure
The new testing infrastructure will run in "security mode". It will use the security layer shipped with latest gCube releases.
- (ENG) to provide machines for the testing infrastructure
- (ENG) to install all the required software in the testing infrastructure
- (ENG) to produce a brief report for the MS30 milestone
New Activities in the WP
During the project lifetime, the WP7 will focus on following changes/enchantments to current activities:
- generation of debian distribution packages
- support for maven in integration builds
- migration to git
Generation of Deb Packages
In the last period of D4Science-II project, the generation of .rpm packages (and yum repository) has been enabled for gHN.
In the last ETICS release, the capability of generating also .deb packages has been added. This feature will be used to create also gHN packages compliant with the debian packaging system.
- (ENG) to make a concrete plan for the implementation of this feature
Support for Maven components
The support for the maven tool has been identified as one of the priority by JRA developers. Main benefits that comes from the usage of maven are:
- easier setup of development environment by exploiting maven dependencies. E.g. Eclipse's maven plugin can automatically make available all dependencies the developer need to build his own component
- writing ad-hoc mavne plugins for gCube services, it is possible to automatize some tasks (e.g. servicearchive generation) and checks (e.g. existence of README file)
- in the future, the maven repository could become the main distribution channel for gCube software.
A restricted group of people in the project (mainly Fabio Simeoni, Andrea Manzi, Gabriele Giammatteo, Manuele Simi) already started the experimentation of maven in gCube. As of today we have:
- a set of basic modules in maven (e.g. maven-parent) that will be used by new gCube maven components
- a refactored gCore that builds with maven
- a "mavenizer" script able to publish on the maven repository also "legacy" ant components.
- a mechanism to support maven in the ETICS System
The solution, so far, is able to automatically publish snapshots and release versions of gCube services (both maven native and ant) in a maven repository (hosted by CNR) during an ETICS build. The solution requires no( or minor) changes to ETICS configurations.
CNR proposes to exploit information in the profile.xml file in order to produce a pom.xml file that includes dependencies for legacy ant components.
- (ENG) to define a clear roadmap for the introduction of support of maven in gCube
- (ENG) to circulate as much information as possible within the project's developers
Migration to Git
The adoption of a distributed source code repository (git is the most popular) would add flexibility in the management of source code allowing scenarios where each organization has its own git repository with its access policies, and a central repository is used for the release.
Though, the switch to git is not critical at this point of the project, ENG will start a feasibility study identifying pros and cons of the adoption of git, possible scenarios and effort required.
- (ENG) study the impact of the adoption of git on the project and present the results by the next TCOM
Changes in the release procedure
Pasquale (CNR) proposes to change the approach adopted so far for gCube software. Having a global release of all the gCube software (the approach adopted so far) forces to wait that all components satisfied build and certification requirements to close the release. This lead towards long releases and blocks other components in the release that could be ready to be deployed.
A more flexible approach should be identified with smaller (not all gCube software, but a subset of components) and frequent releases. A set of quality indicators should be identified (e.g. release cycle duration - in days) that should be respected
- (ENG) start a discussion on this topic collecting suggestions from other partners and trying to identify a new release cycle procedure