Testing for update EMI 2.0.1
- 1 Deadlines
- 2 Delivered in EMI-2
- 3 Test plan
- 4 Test report
- 5 Test recording procedures
- 6 Nagios plugins
- 7 Deployment test procedure
- 8 Unit test coverage
- 9 Code analysis
- 10 Organization of testing
- 11 Priorities of testing
- 12 Notes
- 13 Notes for the ARC Core components
- 14 Notes for the ARC Computing Element
- 15 Notes for the ARC Client components
- 16 Notes for the ARC Information System components
- 17 Notes for the ARC GridFTP server
- 18 Test results and details
Delivered in EMI-2
Integration testing in EMI:
Test recording procedures
In relation to test results recording I would like to ask anyone who will participate in testing to record his/her results using form from http://arc-emi.grid.upjs.sk/testing/testResult.php . For regression tests we are asked to use some unique IDs, so please use the bug number as this unique ID in the test name field e.g. like 'Bug no. 1783 - arcstat asks for passphrase even if proxy exists'. If you have recorded your regression test then do not forget to update the bugzilla record. Since EMI is tracking information if some resolved bug had a regression test, it was agreed that after the test is recorded the attachment with name 'regression_test' including link pointing to test result recorded (link is generated after the test result is saved) shall be added to a particular bugzilla record. For other types of tests (like functionality, performance, scalability, ...) following form from http://arc-emi.grid.upjs.sk/testing/testResult.php shall be enough.
Deployment test procedure
Description of deployment test:
- Clean Installation
The deployment test for clean installation shall be performed on a machine with freshly installed OS (no extra dependencies required by any of ARC components shall be already installed)
- Configure the yum/apt with Etics repository (https://twiki.cern.ch/twiki/bin/view/EMI/EMI-2#ETICS_project_configurations) as a main source of packages and record the repository configuration details (will be needed for test report)
- Install particular ARC component and record the command used for installation together with the list of packages that were installed by this command.
- Get the out-of-box configuration file (http://svn.nordugrid.org/trac/nordugrid/browser/doc/trunk/examples or http://svn.nordugrid.org/trac/nordugrid/browser/arc1/trunk/src/tests/echo/echo_service.xml.example.in or install nordugrid-arc-doc package and use the config files from usr/share/doc/nordugrid-arc-doc/examples) available for particular ARC component (for ARC Clients no configuration is needed), edit it if necessary and try to start the ARC service
- Make basic verification of ARC service
- ARC CE
- Make basic verification of ARC service
submit arctest -J 1 -c <clustername> , arctest -J 2 -c <clustername>, arctest -J 3 -c <clustername>
the ARC CE deployment is declared as successful if all three jobs finished succesfully.
- ARC Information System
- EGIIS - register at least one ARC CE (installed using production version of ARC packages) with the EGIIS and issue following command against this EGIIS service:
- ARC Information System
ldapsearch -h <egiishostname> -p 2135 -x -b 'mds-vo-name=<EGIIS_name>,o=grid' -s base giisregistrationstatus
The test is successful if you get the list of ARC CEs registered with some additional cluster information printed
stop all ARC CEs registered to the EGIIS and issue the ldapsearch command from above
The test is successful if the printed output does not contain any of the ARC CE clusters
The EGIIS deployment is declared as successful if both EGIIS tests are successful
- ARIS - against the ARC CE started in step 3 issue the following ldapsearch command:
ldapsearch -h <clustername> -p 2135 -x -b 'mds-vo-name=local,o=grid' The ARIS deployment is declared as successful when you get cluster information printed after the ldapsearch command is run
- GridFTP - upload a file to GridFTP server started in step 3 using arccp command, list the content of the GridFTP server using arcls command, download file from GridFTP server using arccp command and remove the uploded file using arcrm command. The arc* commands used for this test should be installed using production version of ARC packages
- The GridFTP deployment is declared as successful when all above listed operations finish successfully
- ARC Core - For ARC Core component the Echo service shall be used with at least two different set ups. With TLS and without TLS layer. The verification shall be done using arcecho command.
- The ARC Core deployment is declared as successful when echo responses are obtained from both Echo services.
- ARC Clients - To declare the ARC Clients deployment as successful at least following commands shall be run using the default configuration (no changes to client.conf):
arcproxy, arcproxy -I, arcsub -c <arc-emi_cluster>, arcstat -a , arcget -k -a , arcclean -a - The services used for ARC Clients verification may be taken from ARC-EMI testbeds
- Upgrade installation
The deployment test for Upgrade Installation shall be done identically to Clean Installation with a difference that the upgrade installation of particular ARC component is done on a machine that already has the ARC component installed using latest production version of ARC packages and the commands for step 2 are upgrade commands and not install commands.
The verification is done the same way as for Clean Installation
Unit test coverage
- Will be provided by Anders
Organization of testing
The main difference of current testing is using of a new tool to store test report. Each tester is coauthor of test report. The status of testing is monitored via online interface and relevant part of final test reports are available on one click.
The successful results are not repeated if a new RC of 2.0.1 is issued.
To start testing a RC update from NorduGrid repository is taken.
ETICS EMI-2 repos:
At the start no ETICS packages are available. 2.0.1 RC1 is available in Nordugrid repo.
Availability of testers
Communication between testers, testers and developers will take place using various channels.
Wiki - It serves for sharing basic and important information, for example list and availability of testers, important dates and detailed test plan.
Database of test reports - All test reports must be submitted using online form which is compliant with EMI testing policies.
Form to submit test report: http://arc-emi.grid.upjs.sk/testing/testResult.php Interface to query performed tests: http://arc-emi.grid.upjs.sk/testing/searchResults.php
Priorities of testing
DO NOT FORGET TO UPDATE THE BUG REPORT ONCE YOU HAVE VERFIED THE BUG. SEE THIS INFO
Deep testing of CE
The section are place where detailed information about test plan and notes should be collected. These parts of text are not copied in the final report.
Notes for the ARC Core components
Tesk in EMI:
Notes for the ARC Computing Element
Task in EMI: https://savannah.cern.ch/task/?33572
hardware rc0.grid.upjs.sk and rc1.grid.upjs.sk
processor : 0 vendor_id : AuthenticAMD cpu family : 15 model : 12 model name : AMD Athlon(tm) 64 Processor 3000+ stepping : 0 cpu MHz : 2000.107 cache size : 512 KB fpu : yes fpu_exception : yes cpuid level : 1 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov bogomips : 4000.21 TLB size : 1024 4K pages clflush size : 64 cache_alignment : 64 address sizes : 40 bits physical, 48 bits virtual power management: ts fid vid ttp
MemTotal: 895036 kB
LSB Version: :core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:printing-4.0-noarch Distributor ID: ScientificSL Description: Scientific Linux SL release 5.7 (Boron) Release: 5.7 Codename: Boron
[common] x509_user_key="/etc/grid-security/hostkey.pem" x509_user_cert="/etc/grid-security/hostcert.pem" x509_cert_dir="/etc/grid-security/certificates" gridmap="/etc/grid-security/grid-mapfile" lrms="fork" globus_tcp_port_range="9000,11000"
[vo] id="vo_1" vo="ARC_Community" source="http://www.nordugrid.org/community.dn" source="http://vls.grid.upjs.sk/comunity.dn" source="http://vls.grid.upjs.sk/demo-dn-list.dn" source="http://www.knowarc.eu/knowarc.dn" source="vomss://arthur.hep.lu.se:8443/voms/knowarc.eu?/knowarc.eu" source="vomss://emitestbed07.cnaf.infn.it:8443/voms/testers.eu-emi.eu?/testers.eu-emi. mapped_unixid="gridtest" require_issuerdn="no" [grid-manager] user="root" controldir="/tmp/jobstatus" sessiondir="/tmp/grid" debug="5" logfile="/tmp/grid-manager.log" pidfile="/tmp/grid-manager.pid" mail="email@example.com" joblog="/tmp/gm-jobs.log" arex_mount_point="https://rc1.grid.upjs.sk:50000/arex" enable_emies_interface="yes" default_queue="fork fork"
# gridftp server config [gridftpd] user="root" debug="3" logfile="/tmp/gridftpd.log" pidfile="/tmp/gridftpd.pid" port="2811" allowunknown="no"
# job submission interface via gridftp [gridftpd/jobs] path="/jobs" plugin="jobplugin.so" allownew="yes" # openldap server config [infosys] user="root" overwrite_config="yes" port="2135" debug="1" slapd_loglevel="0" registrationlog="/tmp/inforegistration.log" providerlog="/tmp/infoprovider.log" provider_loglevel="2" # infosys view of the computing cluster (service) [cluster] cluster_alias="MINIMAL Computing Element-rc1" comment="This is a minimal out-of-box CE setup" homogeneity="True" architecture="adotf" nodeaccess="inbound" nodeaccess="outbound" # infosys view of the queue behind the computing service, # every CE needs at least one queue [queue/fork] name="fork" fork_job_limit="cpunumber" homogeneity="True" scheduling_policy="FIFO" comment="This queue is nothing more than a fork host" nodecpu="adotf" architecture="adotf" #cluster registration block [infosys/cluster/registration/clustertoARC-EMI] targethostname="arc-emi.grid.upjs.sk" targetport="2135" targetsuffix="mds-vo-name=ARC-EMI,o=grid" regperiod="120"
Notes for the ARC Client components
Task in EMI:https://savannah.cern.ch/task/?33573
Notes for the ARC Information System components
Task in EMI https://savannah.cern.ch/task/?33574
ldapsearch -x -H "ldap://rc0.grid.upjs.sk:2135" -b "mds-vo-name=local,o=grid"
Notes for the ARC GridFTP server
Tesk in EMI: https://savannah.cern.ch/task/?33576
[common] x509_user_key="/etc/grid-security/hostkey.pem" x509_user_cert="/etc/grid-security/hostcert.pem" x509_cert_dir="/etc/grid-security/certificates" gridmap="/etc/grid-security/grid-mapfile" globus_tcp_port_range="9000,11000"
#gridftp server config [gridftpd] user="root" debug="3" logfile="/tmp/gridftpd.log" logsize="100000 2" pidfile="/tmp/gridftpd.pid" port="2811" allowunknown="no" pluginpath="/usr/lib64/arc/" #config of the "exported" directory [gridftpd/unixacl] plugin="fileplugin.so" path="/unixacl" mount="/se/unixacl" dir="/ nouser read cd dirlist delete create *:* 664:664 mkdir *:* 775:775"
Standard compliance/conformance tests
Test results and details
test results and details of tests are stored in DB:
Static test results recording http://arc-emi.grid.upjs.sk/testing/testResult.php ( Search static test results http://arc-emi.grid.upjs.sk/testing/searchResults.php )