LSB 3.1 SI Test Procedure

Procedure to Install and Test LSB SI

This document describes the steps to follow when testing the LSB SI with the various LSB runtime environment test suites. The first section of the instructions detail the steps necessary to install and configure the SI on a test system. The next several sections give procedures for executing each of the test suites within the SI. The last section provides the steps to take after running the test suites to return the test system to its original state.

NOTE: The steps below assume the SI is to be installed in the /usr/src/si directory and that the architecture being tested is IA32. For other install locations and architectures appropriate modifications to the steps are necessary.

Installing and Configuring the LSB SI

  1. If not already running as root, use either su to become root or use sudo to run the rest of these commands as root.
  2. If it does not already exist, create the directory where the SI will be installed
         mkdir /usr/src/si
  3. Change to the /usr/src/si directory
         cd /usr/src/si
  4. Download the lsbsi core, graphics, and test tar balls
         wget ftp://ftp.freestandards.org/pub/lsb/impl/released-3.1.0/binary/ia32/lsbsi-core-ia32-3.1.0.tar.bz2
         wget ftp://ftp.freestandards.org/pub/lsb/impl/released-3.1.0/binary/ia32/lsbsi-graphics-ia32-3.1.0.tar.bz2
         wget ftp://ftp.freestandards.org/pub/lsb/impl/released-3.1.0/binary/ia32/lsbsi-test-ia32-3.1.0.tar.bz2
         wget ftp://ftp.freestandards.org/pub/lsb/impl/released-3.1.0/binary/ia32/lsbsi-desktop-ia32-3.1.0.tar.bz2
  5. Extract the LSB SI core files
         tar jxvf lsbsi-core-ia32-3.1.0.tar.bz2
  6. Change to the lsbsi-core-ia32 directory
         cd lsbsi-core-ia32
  7. Extract the LSB SI graphics files
         tar jxvf ../lsbsi-graphics-ia32-3.1.0.tar.bz2
  8. Extract the LSB SI test files
         tar jxvf ../lsbsi-test-ia32-3.1.0.tar.bz2
  9. Extract the LSB SI desktop files
         tar jxvf ../lsbsi-desktop-ia32-3.1.0.tar.bz2
  10. Edit /etc/fstab from LSB SI to add entry for devpts
         vi /usr/src/si/lsbsi-core-ia32/etc/fstab
    
         Add following line after "proc" line:
    
         devpts     /dev/pts devpts     mode=0620,gid=9 0 0
  11. Edit /etc/hosts from LSB SI to add entry for the system where the LSB SI is running. For example, if the host system is build0-ia32.linuxbase.org with an IP addr of 192.25.206.21 the following line should be added to the bottom of /etc/hosts.
         vi /usr/src/si/lsbsi-core-ia32/etc/hosts
    
         Add following line to the bottom of the file:
    
         192.25.206.21   build0-ia32.linuxbase.org
  12. Change to the LSB SI tmp directory
         cd /usr/src/si/lsbsi-core-ia32/tmp
  13. Copy the test rpms to the LSB SI tmp directory
         wget ftp://ftp.freestandards.org/pub/lsb/test_suites/released-3.1.0/binary/runtime/lsb-runtime-test-3.1.0-6.i486.rpm
         wget ftp://ftp.freestandards.org/pub/lsb/test_suites/released-3.1.0/binary/runtime/lsb-test-desktop-3.1.0-10.i486.rpm
         wget ftp://ftp.freestandards.org/pub/lsb/test_suites/released-3.1.0/binary/runtime/lsb-test-vsw4-3.1.0-2.i486.rpm
         wget ftp://ftp.freestandards.org/pub/lsb/test_suites/released-3.1.0/binary/runtime/lsb-tet3-lite-3.7-4.lsb3.i486.rpm
         wget ftp://ftp.freestandards.org/pub/lsb/test_suites/released-3.1.0/binary/runtime/qmtest_libstdcpp-3.4.3-5.i486.rpm
         wget ftp://ftp.freestandards.org/pub/lsb/test_suites/released-3.1.0/binary/runtime/qm-2.2-3.i486.rpm
         wget ftp://ftp.freestandards.org/pub/lsb/test_suites/released-3.1.0/binary/runtime/lsb-libchk-3.1.1-1.i486.rpm
         wget ftp://ftp.freestandards.org/pub/lsb/test_suites/released-3.1.0/binary/runtime/lsb-cmdchk-3.1.1-1.i486.rpm
  14. Copy the lsb-python package to the LSB SI tmp directory
         wget ftp://ftp.freestandards.org/pub/lsb/app-battery/released-3.1.0/ia32/lsb-python-2.4.3-3.lsb3.i486.rpm
  15. Copy the X11 misc, 75dpi, and 100dpi directories to the LSB SI tmp directory
         cp -r /usr/X11R6/lib/X11/fonts/{misc,75dpi,100dpi} .
  16. Stop syslogd running on the system
         kill -9 <pid>     (<pid> is process id of syslogd)
  17. Change to the /usr/src/si directory
         cd /usr/src/si
  18. Change root to the LSB SI
         chroot /usr/src/si/lsbsi-core-ia32
  19. Mount proc and devpts
         mount /proc
         mount /dev/pts
  20. Start the LSB SI version of syslogd
         /sbin/syslogd -m 0
  21. Start the LSB SI inet daemon
         /usr/sbin/inetd
  22. Install the lsb-tet3-lite rpm
         rpm -ivh /tmp/lsb-tet3-lite-3.7-4.lsb3.i486.rpm
  23. Run ldconfig to add X11 libs to library search path
         /sbin/ldconfig
  24. Edit /etc/login.defs from the LSB SI to add X11 to SUPATH
         cp /etc/login.defs /etc/login.defs.SAV
         sed '/^ENV_SUPATH/s#ENV_.*#&:/usr/X11R6/bin#' < /etc/login.defs.SAV > /etc/login.defs
  25. Configure the locales needed by some of the test suites
         for i in it_IT en_US de_DE en_HK de_DE@euro es_MX fr_FR en_PH fr_FR@euro
         do
         localedef -i $i -f ISO-8859-1 $i
         done

Executing the Runtime Test Suite in the SI

  1. Install the runtime test rpm
         rpm -ivh /tmp/lsb-runtime-test-3.1.0-6.i486.rpm
  2. Change the password for root, vsx0, vsx1, and vsx2 to "lsbsi123"
         echo "root:lsbsi123" | /usr/sbin/chpasswd
         echo "vsx0:lsbsi123" | /usr/sbin/chpasswd
         echo "vsx1:lsbsi123" | /usr/sbin/chpasswd
         echo "vsx2:lsbsi123" | /usr/sbin/chpasswd

    NOTE: The remaining steps for executing the runtime tests should be done in a separate terminal window to allow the chroot window to remain open.

  3. Telnet to the chroot environment on the system and login as the vsx0 user.

         telnet localhost
  4. Start the runtime tests in the LSB SI. Use the answers given below.
         run_tests
         Person running tests (Automated)? YOUR NAME
         Organisation (NONE)? LSB
         Test System (Automated)? SI for IA32 run on RHEL4 System
         Block special filename (/dev/sda)? /dev/sda
         Does the implementation provide bash as /bin/sh..? [y] y
         Does the implementation provide a C shell..? [y] n
         Enter the name of Kernel (typically vmlinuz)..? [vmlinuz] vmlinuz
         Does the implementation allow users to create devices using MAKEDEV..? [n] y
         Does the implementation support the file command? [y] y
         Does the implementation support process accounting..? [n] n
         Does the implementation support NIS..? [n] n
          Enter name of the user for PAM tests [vsx0] : vsx0
          Enter password of the user for PAM tests : lsbsi123
          You will next be prompted for two passwords for the pam test user
          accounts. Please choose a robust password for your platform.
          For example a combination of digits and upper and lower case letters.
          Enter password of the test user vsx1 : lsbsi123
          Enter password of the test user vsx2 : lsbsi123
         Installing locales for the i18n test suite ... enter the root password:
         Password: lsbsi123
         Create LTP_1.utf8 locale...Install /etc/pam.d/lsbpam_conf ..? [y] y
  5. Take the default answer for any other questions and enter the root passwd (lsbsi123) when prompted.

The runtime tests will take several hours to complete (approx 4 to 8 hours). If more than 8 hours have elapsed and the tests are still not complete it indicates the currently running test has hung for some reason. In this situation enter control C on the window where the tests are running to terminate the hung test and the runtime tests should then continue.

Executing the lsb-libchk Test Suite in the SI

  1. Install the lsb-libchk rpm
         rpm -ivh /tmp/lsb-libchk-3.1.1-1.i486.rpm

    NOTE: The remaining steps for executing lsblibchk should be done in a separate terminal window to allow the chroot window to remain open.

  2. Telnet to the chroot environment on the system and login as the root user.
         telnet localhost
  3. Start lsblibchk in the LSB SI.
         /opt/lsb/bin/lsblibchk -M LSB_Toolkit_Qt

Executing the lsb-cmdchk Test Suite in the SI

  1. Install the lsb-cmdchk rpm
         rpm -ivh /tmp/lsb-cmdchk-3.1.1-1.i486.rpm

    NOTE: The remaining steps for executing lsbcmdchk should be done in a separate terminal window to allow the chroot window to remain open.

  2. Telnet to the chroot environment on the system and login as the root user.
         telnet localhost
  3. Start lsbcmdchk in the LSB SI.
         /opt/lsb/bin/lsbcmdchk

Executing the lsb-c++ Test Suite in the SI

  1. Install the lsb-python rpm package
         rpm -ivh /tmp/lsb-python-2.4.3-3.lsb3.i486.rpm
  2. Install the qm rpm package
         rpm -ivh /tmp/qm-2.2-3.i486.rpm
  3. Install the qmtest_libstdc++ rpm package
         rpm -ivh /tmp/qmtest_libstdc++-3.4.3-5.lsb3.i486.rpm

    NOTE: The remaining steps for executing the c++ tests should be done in a separate terminal window to allow the chroot window to remain open.

  4. Telnet to the chroot environment on the system and login as the root user.
         telnet localhost
  5. Start the c++ test suite in the LSB SI. Use the answers given below.
         /opt/lsb/test/share/qmtest_libstdcpp_3.4.3/run_tests
         Where do you want to create the test database (/root/qmtest_libstdcpp_3.43)? <ENTER>
         What is the GNU triplet for your operating system (i486-unknown-linux-gnu)? <ENTER>
         Name of person running tests (Automated)? YOUR NAME
         Organisation (NONE)? LSB
         Test System (Automated)? SI for IA32 run on RHEL4 System

The C++ test suite will take approximately twenty to thirty minutes to complete.

Executing the lsb-vsw4 Test Suite in the SI

  1. Install the lsb-test-vsw4 rpm
         rpm -ivh /tmp/lsb-test-vsw4-3.1.0-2.i486.rpm
  2. Change the password for root to "lsbsi123"
         echo "root:lsbsi123" | /usr/sbin/chpasswd
  3. Create X11 fonts directory and copy misc, 75dpi, and 100dpi fonts there
         mkdir /usr/X11R6/lib/X11/fonts
         mv /tmp/{misc,75dpi,100dpi} /usr/X11R6/lib/X11/fonts

    NOTE: The remaining steps for executing the vsw4 tests should be done in a separate terminal window to allow the chroot window to remain open.

  4. Telnet to the chroot environment on the system and login as the root user.
         telnet localhost
  5. Add X11 binary directory to search path
         export PATH=$PATH:/usr/X11R6/bin
  6. Start vsw4 tests in the LSB SI. Use the answers given below.
         cd /opt/lsb/test/vsw4
         ./run_vsw4.sh
         Name of person running tests (Not_defined)? YOUR NAME
         Organisation (Not_defined)? LSB
         Test System (Not_defined)? SI for IA32 run on RHEL 4 System
         Hostname of client for X tests (some.xhost)? localhost
         DISPLAY of the Xvfb (ie., :1) (:1.0)? :5.0
         XT_FONTPATH (/opt/lsb/test/vsw4/xtest/fonts/,/usr/X11R6/lib/X11/fonts/misc/)? <ENTER>
         XT_FONTPATH_GOOD (/usr/X11R6/lib/X11/fonts/100dpi/,/usr/X11R6/lib/X11/fonts/75dpi/)? <ENTER>

The vsw4 tests will take approximately thirty minutes to complete.

Executing the lsb-desktop-test Test Suite in the SI

  1. Install the lsb-test-desktop rpm
         rpm -ivh /tmp/lsb-test-desktop-3.1.0-10.i486.rpm
  2. Change the password for root to "lsbsi123"
         echo "root:lsbsi123" | /usr/sbin/chpasswd
  3. Create X11 fonts directory and copy misc, 75dpi, and 100dpi fonts there
         mkdir /usr/X11R6/lib/X11/fonts
         mv /tmp/{misc,75dpi,100dpi} /usr/X11R6/lib/X11/fonts
  4. Generate the gdk-pixbuf.loaders file
         /usr/bin/gdk-pixbuf-query-loaders > /etc/gtk-2.0/gdk-pixbuf.loaders
  5. NOTE: The remaining steps for executing the desktop tests should be done in a separate terminal window to allow the chroot window to remain open.

  6. Telnet to the chroot environment on the system and login as the root user.
         telnet localhost
  7. Add X11 and appbat binary directories to search path
         export PATH=$PATH:/usr/X11R6/bin:/opt/lsb/appbat/bin
  8. Start desktop tests in the LSB SI. Use the answers given below.
         cd /opt/lsb/test/desktop
         ./run_tests -m qt4
         Name of person running tests (Not_defined)? YOUR NAME
         Organisation (Not_defined)? LSB
         Test System (Not_defined)? SI for IA32 run on RHEL 4 System
         Hostname of client for X tests (some.xhost)? localhost
         DISPLAY of the Xvfb (ie., :1) (:1.0)? :5.0
         X11 font path (/usr/X11R6/lib/X11/fonts/misc)? <ENTER>

The desktop tests will take approximately thirty minutes to complete.

Cleaning up After Running Tests in the SI

  1. Exit the telnet session for vsx0 or root.
  2. At the root prompt within the chroot environment kill the syslogd and inetd processes.
         kill -9 <pid>     (<pid> is process id of inetd)
         kill -9 <pid>     (<pid> is process id of syslogd)
  3. Before exiting the chroot environment, unmount /proc and /dev/pts.
         umount /dev/pts
         umount /proc
  4. Once outside of the chroot environment restart the host system syslogd.
         /sbin/syslogd -m 0