[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH for-4.15] automation: allow doing hypervisor only builds


  • To: <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Roger Pau Monne <roger.pau@xxxxxxxxxx>
  • Date: Wed, 3 Mar 2021 15:33:16 +0100
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Q5gijShhHPd5cTg9a+dSKZE64FiyKP6Lk5iwnZ8l7pM=; b=Bf2hAIx1ox08J8paDWMPAW7so4Bxb8eFNqqomfiVxI7p/Sblbdz0rZmdlhJqcPZmkKFGR5BpVSrrmWZk3bybHBlhZLBLwUUJQU/doW6eJ32wVsb6cicJOmmR4uJb0awG4rp6MuGkCpiiFazllLw/vS3yxi8a9YvKfIdHHYyP73z+G5U6icaFKwY+FHHinmBrwFcrnWAM7j99G5Ai9LoHU/IgXN+dwmirXPsucVrLezWEOYAGTdfhYbgr0FDbU5OOONOERPhXnAoCJ4MMDVMfM730zX7i4ZBtk9JfMYp9bDx49aPqRW3T63xEwxoRn3aabFGNEy6PrFVHWfEhG057ow==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=n+eyvvvqoBhNROXe6B5c1fKN0AlIx52kbEan1JE/agVXt8hhzx4O2lPGgw/6cHiiUwyH1u3SoTcFFlgZ6W/GC4VEkZzGG2gKO70hzqQ2tQn6s7mH8Qi8sWYCNiWAbrNgKeKz5oMKsaVcXNUdfIE9GfM6ep69dChbNSKrczyFvLQyDIBUZXXLNHKUrd+8Omb5L6WeWw+zzRMRivuvtKesakNVQaLdptjELaN1n7VTcfyT73q1uBspFEDkJGgxNQUuigMnghy0i5rRxnyetnY8qE7yNiWZEfdWkDQdvQXdYf4/HDdcdCMBUaoJVoJRJxQuPBHhM/pZYiKia203jxScgQ==
  • Authentication-results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
  • Cc: Roger Pau Monne <roger.pau@xxxxxxxxxx>, Doug Goldstein <cardoe@xxxxxxxxxx>, Ian Jackson <iwj@xxxxxxxxxxxxxx>
  • Delivery-date: Wed, 03 Mar 2021 14:34:10 +0000
  • Ironport-sdr: 1egYPNoWOup/IkFR7UcOwAzErzjbMN9rhZqC0y1khIvA3V/k285mUkjYZz5VaDsyZN+CJ4bot6 k5JBW3RQjkT6WpwvkhbaEzBz9FNmdxyM13NXcF7fSzMpdPZfez6D8Aym6eGg/S+2V8szCWF8A8 BSYgs6VKF4ghL0K5CZMmhcr+1Q+hWuyZ3EVPN5Z2yAhWudcpd+dlTzJuVwJ5SxCK2B18JddfP+ PeXW+5v/KfeqifvJTXxuI1eCcbm2js7cIpKiBFMMIRrqmb69848h77c9GIWrmVjJRIqcFmQLdj TI8=
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

For things like randconfig there's no need to do a full Xen build, a
hypervisor build only will be much faster and will achieve the same
level of testing, as randconfig only changes the hypervisor build
options.

Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
---
Cc: Ian Jackson <iwj@xxxxxxxxxxxxxx>
I think it might be good to get this in ASAP in order to reduce the
load of the gitlab CI loop.

Release wise the worse that could happen is that gitlab testing is
broken by this, but I've already done a run myself:

https://gitlab.com/xen-project/people/royger/xen/-/pipelines/264757821
---
 automation/scripts/build | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/automation/scripts/build b/automation/scripts/build
index 87e44bb940..1b752edfe6 100755
--- a/automation/scripts/build
+++ b/automation/scripts/build
@@ -11,6 +11,7 @@ cc-ver()
 # random config or default config
 if [[ "${RANDCONFIG}" == "y" ]]; then
     make -j$(nproc) -C xen KCONFIG_ALLCONFIG=tools/kconfig/allrandom.config 
randconfig
+    hypervisor_only="y"
 else
     make -j$(nproc) -C xen defconfig
 fi
@@ -45,16 +46,27 @@ if [[ "${CC}" == "gcc" && `cc-ver` -lt 0x040600 ]]; then
     cfgargs+=("--with-system-seabios=/bin/false")
 fi
 
-./configure "${cfgargs[@]}"
-
-make -j$(nproc) dist
+if [[ "${hypervisor_only}" == "y" ]]; then
+    make -j$(nproc) xen
+else
+    ./configure "${cfgargs[@]}"
+    make -j$(nproc) dist
+fi
 
 # Extract artifacts to avoid getting rewritten by customised builds
 cp xen/.config xen-config
 mkdir binaries
 if [[ "${XEN_TARGET_ARCH}" != "x86_32" ]]; then
     cp xen/xen binaries/xen
-    cp -r dist binaries/
+    if [[ "${hypervisor_only}" != "y" ]]; then
+        cp -r dist binaries/
+    fi
+fi
+
+if [[ "${hypervisor_only}" == "y" ]]; then
+    # If we are build testing a specific Kconfig exit now, there's no point in
+    # testing all the possible configs.
+    exit 0
 fi
 
 # Build all the configs we care about
-- 
2.30.1




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.