Package Install Testing
Version 25 (Mark Donohoe, 01/07/2012 02:25 am)
| 1 | 1 | Mark Donohoe | h1. Package Install Testing |
|---|---|---|---|
| 2 | 1 | Mark Donohoe | |
| 3 | 24 | Mark Donohoe | 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. |
| 4 | 24 | Mark Donohoe | |
| 5 | 1 | Mark Donohoe | Below is the list of VM systems that will be used to test 2.0 package testing: |
| 6 | 1 | Mark Donohoe | |
| 7 | 9 | Mark Donohoe | # fed15-32 |
| 8 | 9 | Mark Donohoe | # fed15-64 |
| 9 | 2 | Mark Donohoe | # u10-043-32 |
| 10 | 2 | Mark Donohoe | # u10-043-64 |
| 11 | 1 | Mark Donohoe | # rhel6-132 |
| 12 | 24 | Mark Donohoe | # rhel6-164 |
| 13 | 1 | Mark Donohoe | # u1104-32 |
| 14 | 1 | Mark Donohoe | # u1104-64 |
| 15 | 18 | Mark Donohoe | # ubun111032 |
| 16 | 1 | Mark Donohoe | # ubun111064 |
| 17 | 1 | Mark Donohoe | # squeze64 |
| 18 | 10 | Mark Donohoe | |
| 19 | 24 | Mark Donohoe | h2. VM Creation |
| 20 | 1 | Mark Donohoe | |
| 21 | 24 | Mark Donohoe | # Use the vm client software to create each vm. For each vm, load the following additional software: |
| 22 | 1 | Mark Donohoe | |
| 23 | 24 | Mark Donohoe | * Jenkins |
| 24 | 24 | Mark Donohoe | * php (including posix features) |
| 25 | 24 | Mark Donohoe | * java2-runtime (sun version) |
| 26 | 24 | Mark Donohoe | * others per distro (see below) |
| 27 | 24 | Mark Donohoe | |
| 28 | 24 | Mark Donohoe | # After each vm is installed, it is converted into a template so that recovery is faster. |
| 29 | 24 | Mark Donohoe | |
| 30 | 24 | Mark Donohoe | # Convert the template into a VM, see the page [[Converting a VM template to an Install VM]]. |
| 31 | 24 | Mark Donohoe | |
| 32 | 24 | Mark Donohoe | # After the vm is working and on the network, take a snapshot of it using the vm client software. |
| 33 | 24 | Mark Donohoe | |
| 34 | 4 | Mark Donohoe | 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. |
| 35 | 4 | Mark Donohoe | |
| 36 | 6 | Mark Donohoe | h2. Setting up a slave node in Jenkins |
| 37 | 4 | Mark Donohoe | |
| 38 | 4 | Mark Donohoe | h3. Debian |
| 39 | 4 | Mark Donohoe | * install java2-runtime (sun version) |
| 40 | 5 | Mark Donohoe | * install deamon |
| 41 | 5 | Mark Donohoe | * download and install jenkins |
| 42 | 1 | Mark Donohoe | <pre> |
| 43 | 5 | Mark Donohoe | sudo apt-get install openjdk-6-jre openjdk-6-jre-headless daemon |
| 44 | 6 | Mark Donohoe | </pre> |
| 45 | 15 | Mark Donohoe | |
| 46 | 24 | Mark Donohoe | Stop Jenkins and reset jenkins user password to _jenkins_. |
| 47 | 14 | Mark Donohoe | need to set up ssh authorized key from fonightly. |
| 48 | 20 | Mark Donohoe | |
| 49 | 11 | Mark Donohoe | h3. RedHat/Fedora/CentOS based systems |
| 50 | 1 | Mark Donohoe | |
| 51 | 1 | Mark Donohoe | * download jenkins and get the rpm version we want: |
| 52 | 1 | Mark Donohoe | <pre>wget http://mirrors.jenkins-ci.org/redhat-stable-rc/jenkins-1.424.2.SNAPSHOT-1.1.noarch.rpm</pre> |
| 53 | 1 | Mark Donohoe | |
| 54 | 1 | Mark Donohoe | * install it: <pre>rpm -ivh jenkins-1.424.2.SNAPSHOT-1.1.noarch.rpm</pre> |
| 55 | 1 | Mark Donohoe | * change jenkins to have a login: vipw /etc/passwd, change /bin/false to /bin/bash |
| 56 | 1 | Mark Donohoe | * change jenkins user password to 'jenkins'. |
| 57 | 1 | Mark Donohoe | * put jekins in sudo file (/etc/sudoers) <pre>jenkins ALL=NOPASSWD: ALL</pre> |
| 58 | 1 | Mark Donohoe | * 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. |
| 59 | 1 | Mark Donohoe | * 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. |
| 60 | 24 | Mark Donohoe | * set a proxy for yum in yum.conf:<pre>proxy=http://lart.usa.hp.com:3128</pre> |
| 61 | 24 | Mark Donohoe | * if not in any repos configured, get the php-process from centos: |
| 62 | 24 | Mark Donohoe | 32 bit: http://mirror.centos.org/centos/6/os/i386/Packages/php-process-5.3.3-3.el6_1.3.i686.rpm |
| 63 | 24 | Mark Donohoe | 64 bit: http://mirror.centos.org/centos/6/os/x86_64/Packages/php-process-5.3.3-3.el6_1.3.x86_64.rpm |
| 64 | 24 | Mark Donohoe | This is needed as it has posix routines we need for php. This may complain about not having a RSA/SHA1 signature key. |
| 65 | 24 | Mark Donohoe | * for 1.4.1 p7zip-plugins was also needed. |
| 66 | 24 | Mark Donohoe | 32 bit: ftp://rpmfind.net/linux/fedora/linux/development/rawhide/i386/os/Packages/p7zip-plugins-9.20.1-2.fc16.i686.rpm |
| 67 | 24 | Mark Donohoe | 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 |
| 68 | 14 | Mark Donohoe | * install php: yum install php |
| 69 | 24 | Mark Donohoe | * install posix support for php: <pre>yum install php-process or rpm -ivh correct-rpm file for system</pre> |
| 70 | 1 | Mark Donohoe | |
| 71 | 16 | Mark Donohoe | |
| 72 | 1 | Mark Donohoe | * On Fedora, postgresql, posgresql-server both must be installed, then as root or postgres <pre>service postgresql initdb</pre> If this is not done, postgres will not start or stop. |
| 73 | 16 | Mark Donohoe | |
| 74 | 8 | Mark Donohoe | * If you can't talk to apache or postgres over the network: Add this to /etc/sysconfig/iptables: <pre>-A INPUT -p tcp -m tcp --sport 80 -j ACCEPT |
| 75 | 8 | Mark Donohoe | -A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT |
| 76 | 8 | Mark Donohoe | -A INPUT -p tcp --dport 5432 -j ACCEPT</pre> |
| 77 | 8 | Mark Donohoe | |
| 78 | 7 | Mark Donohoe | The above will enable apache and postgres |
| 79 | 7 | Mark Donohoe | |
| 80 | 1 | Mark Donohoe | now as jenkins sudo <pre>/etc/init.d/postgresql start</pre> works. |