170 likes | 319 Views
ETICS Repository. Bologna, 2 nd ETICS All Hands meeting October 23-25, 2006. Lorenzo Dini Repository Manager ETICS - CERN. Agenda. Data Model Definitions, Hierarchy, Groups and Relations Storage and Dissemination Use Cases Publish a Package Find the Package Display the Build Report
E N D
ETICS Repository Bologna, 2nd ETICS All Hands meeting October 23-25, 2006 Lorenzo Dini Repository Manager ETICS - CERN
Agenda • Data Model • Definitions, Hierarchy, Groups and Relations • Storage and Dissemination • Use Cases • Publish a Package • Find the Package • Display the Build Report • Repository Service • Architecture • Deployment Scenario • Implementation • Fedora, Plone, eLibrary and CDS • Edit Package Metadata • Register a new User Disseminator BOLOGNA. ETICS All Hands meeting, October 23-25, 2006
Introduction • The ETICS Repository consists of a Data Management System that allows to store, catalog, manipulate, browse, search, disseminate and delete ETICS Artefacts or sets of them. What can be defined as an ETICS Artefact ? BOLOGNA. ETICS All Hands meeting, October 23-25, 2006
Data Object Definition • ETICS Artefacts: • Build-System Packages • rpm, tar.gz, msi, deb, zip, dmg • Metadata • Build-System Items • Build reports and logs • Metadata • Test Items • Test reports and logs • Custom output • Metadata BOLOGNA. ETICS All Hands meeting, October 23-25, 2006
Data Object Definition • ETICS Artefacts: • Services • Set of Build-System Packages • Set of Services • Metadata • Build-System Reports • Sets of Build-System Report Items • Metadata • Test Reports • Sets of Test Report Items • Metadata BOLOGNA. ETICS All Hands meeting, October 23-25, 2006
Hierarchy, Groups and Relations BOLOGNA. ETICS All Hands meeting, October 23-25, 2006
Stored Data • Raw data is stored in the repository • Every object can be accessed directly via URL Packages RPM, ZIP, MSI, DMG, TAR.GZ, DEB Build Report XML, LOG, TXT Test Report XML, TXT, HTML, LOG, OTHER BOLOGNA. ETICS All Hands meeting, October 23-25, 2006
Data Dissemination • Raw data can also be manipulated by disseminators • Examples are: • Package format change (i.e. from tar.gz to zip) • Report rendering and formatting (user customization of reports) • Graph and plot generation • Custom test output rendering and formatting BOLOGNA. ETICS All Hands meeting, October 23-25, 2006
Use Cases • Goal: Build a Project and publish the Build Report and the Package in the Repository • Primary Actor: Project Integrator • User lunches the command: etics-build … … … --register • Build-System checks for permissions • Build-System creates the Package and the Build Report • Build-System publishes Package and metadata • Build-System publishes each Report Item with metadata • Build-System publishes a Build Report as a group of Report Items • Build-System relates the Build Report to the Package BOLOGNA. ETICS All Hands meeting, October 23-25, 2006
Use Cases • Goal: Find the Package in the Repository • Primary Actor: Guest User • User accesses the web application • User navigates the tree considering project-subsystem-component structure • Web-Application checks for components visibility • If the package is not found, the user uses the search engine and search for metadata • User opens the page containing the download link • User downloads the Package BOLOGNA. ETICS All Hands meeting, October 23-25, 2006
Use Cases • Goal: Display the Build Report of the Package • Primary Actor: Guest User • User opens the build report related to the package • User is now able to download one of the available report items or to display the report using a particular Disseminator • User selects a Dissemination and lunches it • Repository Service lunches the specific Disseminator passing all needed Report Items • Repository Service retrieves back the HTML rendering (Caching) • Rendering is displayed on the screen BOLOGNA. ETICS All Hands meeting, October 23-25, 2006
Use Cases • Goal: Edit Package Metadata • Primary Actor: Project Librarian • User accesses the Web-Application • User enters the management area • Security Manager checks for permissions • User navigates the tree considering project-subsystem-component structure • Web-Application checks for components visibility with administration permissions • User opens the Package and edits it changing some metadata • Repository Service saves the updated component BOLOGNA. ETICS All Hands meeting, October 23-25, 2006
Use Cases • Goal: Register a new User Disseminator • Primary Actor: Project Librarian • User has implemented a new Web-Service that renders XML files in his project-portal style • User accesses the Web-Application • User enters the management area • Security Manager checks for permissions • User enters in the Dissemination area • User registers the new Web-Service as a Disseminator, specifying URL, method, parameters and return value • User links specific data types with the new Disseminator in order to render them with his project-portal style BOLOGNA. ETICS All Hands meeting, October 23-25, 2006
Architecture BOLOGNA. ETICS All Hands meeting, October 23-25, 2006
Deployment Scenario BOLOGNA. ETICS All Hands meeting, October 23-25, 2006
+ Dissemination + Web Service (OAI) + Scalability - Static Metadata (Dublin Core) - Security System - No Web Application + Dissemination + Web Service + Extensible Metadata (MARC) - Not yet tested Implementation + Web Application + Dynamic Metadata - No Web Service - No Dissemination - Security Lacks + Security System + Web Application + Scalability + Dynamic Metadata - No Web Service - No Dissemination BOLOGNA. ETICS All Hands meeting, October 23-25, 2006