Device configuration deployment script
[lttng-ci.git] / scripts / system-tests / check-build-needs.sh
CommitLineData
b3d73c46
FD
1#!/bin/bash -xeu
2# Copyright (C) 2016 - Francis Deslauriers <francis.deslauriers@efficios.com>
3#
4# This program is free software: you can redistribute it and/or modify
5# it under the terms of the GNU General Public License as published by
6# the Free Software Foundation, either version 3 of the License, or
7# (at your option) any later version.
8#
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12# GNU General Public License for more details.
13#
14# You should have received a copy of the GNU General Public License
15# along with this program. If not, see <http://www.gnu.org/licenses/>.
16
17mkdir -p "$DEPLOYDIR"
18
19NEED_MODULES_BUILD=0
20NEED_KERNEL_BUILD=0
21
22set +e
23$SSH_COMMAND "$STORAGE_USER@$STORAGE_HOST" ls "$STORAGE_KERNEL_IMAGE"
24if [ $? -ne 0 ]; then
25 NEED_KERNEL_BUILD=1
26 # We need to build the lttng modules if the kernel has changed.
27 NEED_MODULES_BUILD=1
28fi
29
30$SSH_COMMAND "$STORAGE_USER@$STORAGE_HOST" ls "$STORAGE_LTTNG_MODULES"
31if [ $? -ne 0 ]; then
32 NEED_MODULES_BUILD=1
33fi
34set -e
35
36# We need to fetch the kernel source and lttng-modules to build either the
37# kernel or modules
38if [ $NEED_MODULES_BUILD -eq 1 ] || [ $NEED_KERNEL_BUILD -eq 1 ] ; then
39
b33f21f4 40 cp src/lttng-ci/lava/kernel/vanilla/x86_64_server.config "$LINUX_PATH/.config"
b3d73c46 41 make --directory="$LINUX_PATH" olddefconfig
dc9700c9
FD
42
43 if [ $BUILD_DEVICE = 'kvm' ] ; then
44 make --directory="$LINUX_PATH" kvmconfig
45 fi
46
b3d73c46
FD
47 make --directory="$LINUX_PATH" modules_prepare
48fi
49
50#We create files to specify what needs to be built for the subsequent build steps
51if [ $NEED_MODULES_BUILD -eq 0 ] ; then
52 touch modules-built.txt
53fi
54if [ $NEED_KERNEL_BUILD -eq 0 ] ; then
55 touch kernel-built.txt
56fi
This page took 0.025245 seconds and 4 git commands to generate.