3 export WORKSPACE=${WORKSPACE:-$CURDIR}
5 export CONFIG_PHP=func/config.php.buildbot
6 export SELENIUM_RC_HOST=${SELENIUM_RC_HOST:-`hostname -i`}
7 export SELENIUM_RC_DIR=$WORKSPACE/reports
12 . tests/config/default
13 if [ -f tests/config/`hostname` ] ; then . tests/config/`hostname`; fi
18 export HOST=cdx40.$DNSDOMAIN
21 export LXCTEMPLATE=$LXCCOSTEMPLATE
32 #sh $WORKSPACE/$CDXVERS/codendi_tools/ci_build.sh $HOST $CDXIP $CDXVERS
36 echo "Destroying vm $HOST"
37 (cd tests/scripts ; sh ./stop_vm.sh $HOST || true)
39 (cd tests/scripts ; ./start_vm.sh $HOST)
41 [ ! -d $WORKSPACE/build ] || rm -fr $WORKSPACE/build
42 [ ! -d $WORKSPACE/reports ] || rm -fr $WORKSPACE/reports
43 mkdir -p $WORKSPACE/build/packages $WORKSPACE/build/config $WORKSPACE/reports/coverage
45 cat > $WORKSPACE/build/config/phpunit <<-EOF
46 HUDSON_URL=$HUDSON_URL
50 scp -r tests root@$HOST:/root
51 scp -r $WORKSPACE/build/config root@$HOST:/root
52 (cd 3rd-party/selenium ; make getselenium)
53 scp 3rd-party/selenium/binary/selenium-server-current/selenium-server.jar root@$HOST:/root
56 cp src/rpm-specific/epel-short.repo $WORKSPACE/build/packages/epel.repo
57 if [ ! -z "$EPEL_REPO" ] ; then
58 sed -i "s#http://download.fedoraproject.org/pub/epel#${EPEL_REPO}#" $WORKSPACE/build/packages/epel.repo
60 scp $WORKSPACE/build/packages/epel.repo root@$HOST:/etc/yum.repos.d/
63 cp src/rpm-specific/dag-rpmforge.repo $WORKSPACE/build/packages/dag-rpmforge.repo
64 if [ ! -z "$DAG_RPMFORGE_REPO" ] ; then
65 sed -i "s#http://apt.sw.be/redhat#${DAG_RPMFORGE_REPO}#" $WORKSPACE/build/packages/dag-rpmforge.repo
66 # disable dag by default
67 sed -i "s#enabled = 1#enabled = 0#" $WORKSPACE/build/packages/dag-rpmforge.repo
69 scp $WORKSPACE/build/packages/dag-rpmforge.repo root@$HOST:/etc/yum.repos.d/
72 CDXPACKAGES="mod_ssl vsftpd perl-DBI perl-DBD-MySQL gd sendmail telnet bind bind-chroot caching-nameserver ntp perl-suidperl python-devel rcs sendmail-cf perl-URI perl-HTML-Tagset perl-Digest-SHA1 perl-Digest-HMAC perl-Socket6 perl-HTML-Parser perl-libwww-perl php-ldap php-mysql mysql-server mysql MySQL-python php-mbstring php-gd php-soap perl-DateManip sysstat gd-devel freetype-devel libpng-devel libjpeg-devel dump dejavu-lgc-fonts compat-libstdc++-33 policycoreutils selinux-policy selinux-policy-targeted zip unzip enscript xinetd mod_auth_mysql nscd"
73 BUILDDEPS="libtool krb5-devel pam-devel byacc flex httpd-devel docbook-style-xsl doxygen gettext neon-devel openssl-devel sqlite-devel swig"
78 # See http://wiki.centos.org/PackageManagement/Yum/Priorities
80 ssh root@$HOST mkdir -p /usr/share/codendi/src
81 ssh root@$HOST yum install -y rsync make rpm-build yum-priorities
82 # Needed to build package, not working yet
83 #rsync -rlptD $CDXVERS/rpm/ root@$HOST:/usr/src/redhat/
84 #ssh root@$HOST yum install -y $BUILDDEPS $MISSINGCVS $MISSINGHIL $MISSINGMUNIN
85 #ssh root@$HOST "cd /usr/src/redhat ; make"
87 (cd $WORKSPACE/$CDXVERS ; tar cvzf $WORKSPACE/CDROM/Codendi/codendi.tgz cli codendi_tools documentation downloads plugins rpm site-content src)
89 rsync -rlptD $WORKSPACE/CDROM/ root@$HOST:/root/
90 # Next is done in codendi.tgz
91 #rsync -a $CDXVERS/src/ root@$HOST:/usr/share/codendi/src/
93 scp $WORKSPACE/$CDXVERS/codendi_tools/codendi_install.sh root@$HOST:
94 scp $WORKSPACE/$CDXVERS/codendi_tools/localconf root@$HOST:
95 ssh root@$HOST chmod +x codendi_install.sh
96 ssh root@$HOST yum install -y $CDXPACKAGES
99 ssh root@$HOST perl -pi -e 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
101 ssh root@$HOST /root/codendi_install.sh
102 ssh root@$HOST /usr/share/codendi/src/utils/generate_ssl_certificate.sh <<-FIN
118 ssh root@$HOST yum --enablerepo=epel -y install mediawiki115
122 echo "Run phpunit test on $HOST"
123 ssh -X root@$HOST "tests/scripts/phpunit.sh CDXCentos52Tests.php" || retcode=$?
125 if [ "x$SELENIUM_RC_DIR" != "x" ]
127 rsync -av root@$HOST:/var/log/ $SELENIUM_RC_DIR/
129 cp $WORKSPACE/reports/phpunit-selenium.xml $WORKSPACE/reports/phpunit-selenium.xml.org
130 xalan -in $WORKSPACE/reports/phpunit-selenium.xml.org -xsl fix_phpunit.xslt -out $WORKSPACE/reports/phpunit-selenium.xml
135 echo "Keeping vm $HOST alive"
137 (cd tests/scripts ; sh ./stop_vm.sh $HOST)