Direct SA1 Links
Etics Portal - Etics Web - EticsAgendas - ETICS 2 SA1 Savannah - SA1Actions (in Savannah) , SA1 Internal


ETICS Multi-Node Testing

TO DO

Web Services

  • Changes to the WS (extra changes, not clear what they are)
  • merge the branch with the "--virtuial" property

Repository

  • Schema changes
  • Rep Portlet changes
  • New email from repository and not from submitters as now

Client

  • Modification for the MN inthe client (detaisl needed)

Marian

  • 2 slots in the eticsdev for MN

DONE

MN in Web Application

  • different look for nodes in the tree (DONE) /lists
  • new actions in menu/toolbar (DONE)
  • new viewers/editors (DONE)
  • only static dependencies allowed (DONE)
  • MultiNodeTest configurations will only have
    • no platform; no satellites (Done)
    • Node Configurations (done)
  • node configurations
    • platforms (DONE)
    • testcommands (DONE)
    • properties (DONE)
    • environment (DONE)
    • services (dependencies on component configurations) (DONE)
  • prevent deployment configurations to be attached to project conf (DONE)
  • show nodes as test children in workspace (TODO)

Done

Short Description of the Task

This task consists in the design and implementation of a number of simple multi-node testing use cases. It includes the definition of the use cases, the design of the necessary ETICS software components and their implementation. The criteria for success is the successful execution of all described use cases using a consistent ETICS System release deployed on the etics-test server

Useful Links

Links to document, attach material needed, external resources, example, etc.

  • Multi-Node Specification Document doc - pdf
  • Working document from Etics1 with planned modifications to the Configuration WA

Requirements, Ideas, Constraints etc

General requirements
The multi-node functionality consists in the possibility of executing tests involving more than one node and one or more software components on each node exchanging information among themselves to synchronize the execution. While the high-level multi-node test designer implementation is performed, a basic, but working solution is required to investigate the requirements, constraints and integration issues. The task described here has the following goals:

1. Register a set of basic multi-node tests of increasing complexity in the ETICS database
2. Visualize the tests in the web-application
3. Create and edit additional tests in the web-application
4. Use the test metadata to create the appropriate set of jobs to be submitted to the execution engine to the required N nodes
5. Execute each job, using the getters and setters to synchronize the execution
6. Collect the reports of each job in a single high-level report
7. Make available the individual reports and the summary report in the repository with proper links to the relevant objects

Preliminary design and implementation steps
1. Register manually the following basic multi-node test in the ETICS database setting the deploymentType field as required

    basicMN
        MN-Server (deploys tomcat)
        MN-Client (executes a simple wget query)

2. Adapt the web application to correctly display and submit this distributed test
3. Modify the web service to execute the following tasks:
    3.1. Generate two submission files
    3.2. Pass a common job GUID to both jobs (to be taken from en env var)
    3.3. Set the total node counter in the database, so that it can be decreased by the jobs
4. When 1, 2, and 3 works iterate again on the following more complex test:

    ARC test
        ARC A-Rex Server
        Torque
        Worker node
        ARC Client

Open Issues

Datamodel

  • Multinode Tests (MT) share the same datamodel of subsystems. However, do all fields apply to MT? Currently "vendor", "repository" and "vcsroot" are hidden in the WA. More? Less?
  • Nodes share the same datamodel of components. However, do all fields apply to Nodes? Currently only "name", "displayName" and "description" are used.

Authorizations

  • Currently the same authz approach of subsystems is used. i.e. who can create/edit/remove subsystems can do the same on MT

Plans, Dates and Status

Status

General status and current versions, tags, configuration.

Ongoing work, etc

Future improvements

Meeting 17.6.2009

General Logic

  • Tests (T) and Nodes (N) are at the level of the Components (C)
  • T and N have configurations and dependencies like any C (properties, locking etc?)
  • N in the sane T could run of different platforms but we do not describe that
  • For the moment all N of a T, run on the same platform
  • T has dependencies toward N
  • Dependencies between T and T? N and N make sense?
  • T and N are under Subsystems etc like any component
  • N can be also in External for external modules (tomcat, mySQL, etc).
  • Need to reuse a N specification in many T (example tomcat, mySQL, etc) with different properties.
  • Have a library of Ns in the project or external Ns

Complex Scenarios:

  • Possible to have two nodes identical in the same test? (2 mySQL) attach twice the same dependency, different properties
  • Deploy twice in different nodes the same component. 2 dependencies?
  • Dependencies are on specific configurations of Ns.
  • Can we have many nodes on multiple platforms? Not as it is now.

Web Services

  • Launch a job for each N depending on a T
  • Careful to make individual specific Test ID (TID).

Repository

repository-client

  • Create a new multi-node test submission to the repository
  • Accept a global-test-uuid to recognize multi-node test reports from the same test (as argument or in build-status.xml)
  • Accept the total numer of nodes taking part of the multi-node test (as argument or in build-status.xml)

repository-web-service

  • Create a new multi-node test method
  • store temporarily the submissions until the number of expected reports is matched or a timeout occurs
  • generate meta-report
  • store the submission in the proper area once t is considered final
  • send email to the user

repository-data-model

  • find a way to fit or extend the current data model for multi-node

repository-web-application

  • display the reports in the interface
Topic attachments
I Attachment History Action Size Date Who Comment
Microsoft Word filedoc co-sched.doc r1 manage 840.0 K 2009-04-27 - 09:52 PaoloFabriani  
Edit | Attach | Watch | Print version | History: r15 < r14 < r13 < r12 < r11 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r15 - 2009-10-21 - AlbertoAimar
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    ETICS All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright &© 2008-2023 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
or Ideas, requests, problems regarding TWiki? use Discourse or Send feedback