#!/bin/sh # This file is copied in {lava-master/lava-slave}/scripts if [ $# -le 1 ];then echo "Build any LAVA compoments from source with specific version tag" echo "Usage: $0 LAVAcompoment LAVA-git-tag LAVA-pkg-git-tag" exit 1 fi # common build deps DEBIAN_FRONTEND=noninteractive apt-get -y install python3-sphinx git devscripts || exit $? case $1 in lava-server) # package dependencies DEBIAN_FRONTEND=noninteractive apt-get -y install \ python-mock \ apache2 \ debootstrap \ ntfs-3g \ debhelper \ debootstrap \ libguestfs-tools \ build-essential \ docbook-xsl \ xsltproc \ gunicorn3 \ ntp \ nodejs \ node-uglify \ libjs-excanvas \ libjs-jquery-cookie \ libjs-jquery-watermark \ libjs-jquery-flot \ libjs-jquery-ui \ python3-django-restricted-resource \ python3-django-auth-ldap \ python3-django-tables2 \ python3-django \ python3-guestfs \ python3-netifaces \ python3-markdown \ python3-nose \ python3-pexpect \ python3-psycopg2 \ python3-requests \ python3-simplejson \ python3-yaml \ python3-zmq \ python3-sphinx-bootstrap-theme \ pep8 \ python-pep8 \ python3-voluptuous \ python3-dateutil \ python3-voluptuous \ systemd-sysv \ tftpd-hpa \ lxc \ sudo \ telnet \ bridge-utils || exit $? DEBIAN_FRONTEND=noninteractive apt-get -y install lava-tool lavapdu-client lava-coordinator || exit $? ;; lava-dispatcher) # build dependencies DEBIAN_FRONTEND=noninteractive apt-get -y install python3-setuptools || exit $? # package dependencies DEBIAN_FRONTEND=noninteractive apt-get -y install \ python3-serial \ python3-configobj \ python3-pyudev \ python3-setproctitle \ python3-guestfs \ sudo \ telnet \ systemd-sysv \ python3-netifaces \ python3-nose \ python3-pexpect \ python3-requests \ python3-yaml \ python3-zmq || exit $? ;; *) echo "Unknow compoments $1" exit 1 ;; esac if [ ! -e /root/lava-server ];then git clone https://github.com/Linaro/lava-server.git /root/lava-server || exit $? fi cd /root/lava-server git checkout $2 || exit $? if [ ! -e /root/$1 ];then git clone https://github.com/Linaro/$1.git /root/$1 || exit $? fi cd /root/$1 git checkout $2 || exit $? git config --global user.name "Docker Build" git config --global user.email "info@kernelci.org" # By default, debian-dev-build.sh use always the last tag as version sed -i "s,VERSION=.*,VERSION=$3," /root/lava-server/share/debian-dev-build.sh echo "cd \${DIR} && dpkg -i *.deb" >> /root/lava-server/share/debian-dev-build.sh cd /root/$1 /root/lava-server/share/debian-dev-build.sh -p $1 -b $3 exit $?