« Previous -
Version 24/54
(diff) -
Next » -
Current version
Mark Donohoe, 01/06/2012 06:24 am
Package Install Testing¶
Package install testing will use virtual machines along with vm templates and snapshots to accomplish the testing in a quick an timely manner. Snapshots will allow the restore of the system to it's pre-installed state. This will enable quick turnaround for testing.
Below is the list of VM systems that will be used to test 2.0 package testing:
- fed15-32
- fed15-64
- u10-043-32
- u10-043-64
- rhel6-132
- rhel6-164
- u1104-32
- u1104-64
- ubun111032
- ubun111064
- squeze64
VM Creation¶
- Use the vm client software to create each vm. For each vm, load the following additional software:
- Jenkins
- php (including posix features)
- java2-runtime (sun version)
- others per distro (see below)
- After each vm is installed, it is converted into a template so that recovery is faster.
- Convert the template into a VM, see the page Converting a VM template to an Install VM.
- After the vm is working and on the network, take a snapshot of it using the vm client software.
After the template is saved, convert the template to a new vm, follow the steps below, then power off the vm. Take a snapshot of the new, powered off vm, for example, the rhel6-132.ostt vm was snapshotted as fhel6.1-32, with description of "rhel6-132.ostt ready for install test". In the description always use the real full name.
Setting up a slave node in Jenkins¶
Debian
- install java2-runtime (sun version)
- install deamon
- download and install jenkins
sudo apt-get install openjdk-6-jre openjdk-6-jre-headless daemon
sudo apt-get -f install, and answer yes
sudo apt-get install openjdk-6-jre openjdk-6-jre-headless daemon sudo apt-get -f install, and answer yes
Stop Jenkins and reset jenkins user password to jenkins.
need to set up ssh authorized key from fonightly.
RedHat/Fedora/CentOS based systems¶
- download jenkins and get the rpm version we want:
wget http://mirrors.jenkins-ci.org/redhat-stable-rc/jenkins-1.424.2.SNAPSHOT-1.1.noarch.rpm
- install it:
rpm -ivh jenkins-1.424.2.SNAPSHOT-1.1.noarch.rpm
- change jenkins to have a login: vipw /etc/passwd, change /bin/false to /bin/bash
- change jenkins user password to 'jenkins'.
- put jekins in sudo file (/etc/sudoers)
jenkins ALL=NOPASSWD: ALL
- remove jenkins.repo in /etc/yum.repos.d/, if this is not done, the yum update will fail because we don't have the repo key. Plus we don't want the latest and greatest jenkins.
- For redhat systems, go to the linux coe page and create a retrofit program and run it on the system to enable the repos needed.
- set a proxy for yum in yum.conf:
proxy=http://lart.usa.hp.com:3128
- if not in any repos configured, get the php-process from centos:
32 bit: http://mirror.centos.org/centos/6/os/i386/Packages/php-process-5.3.3-3.el6_1.3.i686.rpm
64 bit: http://mirror.centos.org/centos/6/os/x86_64/Packages/php-process-5.3.3-3.el6_1.3.x86_64.rpm
This is needed as it has posix routines we need for php. This may complain about not having a RSA/SHA1 signature key. - for 1.4.1 p7zip-plugins was also needed.
32 bit: ftp://rpmfind.net/linux/fedora/linux/development/rawhide/i386/os/Packages/p7zip-plugins-9.20.1-2.fc16.i686.rpm
64 bit: ftp://ftp.pbone.net/mirror/download.fedora.redhat.com/pub/fedora/epel/6/x86_64/p7zip-plugins-9.20.1-2.el6.x86_64.rpm - install php: yum install php
- install posix support for php:
yum install php-process or rpm -ivh correct-rpm file for system
- On Fedora, postgresql, posgresql-server both must be installed, then as root or postgres
service postgresql initdb
If this is not done, postgres will not start or stop.- If you can't talk to apache or postgres over the network: Add this to /etc/sysconfig/iptables:
-A INPUT -p tcp -m tcp --sport 80 -j ACCEPT -A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT -A INPUT -p tcp --dport 5432 -j ACCEPT
- If you can't talk to apache or postgres over the network: Add this to /etc/sysconfig/iptables:
The above will enable apache and postgres
now as jenkins sudo
/etc/init.d/postgresql startworks.