[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH RFC] automation: split logs into separate files
The aim of this patch is to make it easier to digest the output of the gitlab jobs, as the current is IMO too long and that makes it hard to spot what went wrong. So this patch does the following: - Rename build.log into run.log. - Split each build log into a logs folder, using the build{-kconfig}.log file. Note the default kconfig (either random or not) will use the name build.log. - The output from kconfig is also saved as kconfig{-kconfig}.log. - The build and configure output is no longer part of the default gitlab output. Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx> --- I find the output from the gitlab tests hard to consume, as it's thousands of lines long. With this change such output is split into several smaller files, IMO easier to consume, and the default output should make it also easier to identify exactly which step went wrong. --- automation/gitlab-ci/build.yaml | 3 ++- automation/scripts/build | 18 +++++++++++------- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/automation/gitlab-ci/build.yaml b/automation/gitlab-ci/build.yaml index 1e61d30c85..697fe7cc55 100644 --- a/automation/gitlab-ci/build.yaml +++ b/automation/gitlab-ci/build.yaml @@ -2,9 +2,10 @@ stage: build image: registry.gitlab.com/xen-project/xen/${CONTAINER} script: - - ./automation/scripts/build 2>&1 | tee build.log + - ./automation/scripts/build 2>&1 | tee run.log artifacts: paths: + - logs/ - binaries/ - xen-config - '*.log' diff --git a/automation/scripts/build b/automation/scripts/build index 0cd0f3971d..704b428f86 100755 --- a/automation/scripts/build +++ b/automation/scripts/build @@ -8,11 +8,14 @@ cc-ver() $CC -dumpversion | awk -F. '{ printf "0x%02x%02x%02x", $1, $2, $3 }' } +mkdir logs + # random config or default config if [[ "${RANDCONFIG}" == "y" ]]; then - make -C xen KCONFIG_ALLCONFIG=tools/kconfig/allrandom.config randconfig + make -C xen KCONFIG_ALLCONFIG=tools/kconfig/allrandom.config randconfig \ + > logs/kconfig.log 2>&1 else - make -C xen defconfig + make -C xen defconfig > logs/kconfig.log 2>&1 fi # build up our configure options @@ -38,9 +41,9 @@ if [[ "${CC}" == "gcc" && `cc-ver` -lt 0x040600 ]]; then cfgargs+=("--with-system-seabios=/bin/false") fi -./configure "${cfgargs[@]}" +./configure "${cfgargs[@]}" > logs/configure.log 2>&1 -make -j$(nproc) dist +make -j$(nproc) dist > logs/build.log 2>&1 # Extract artifacts to avoid getting rewritten by customised builds cp xen/.config xen-config @@ -58,8 +61,9 @@ esac cfg_dir="automation/configs/${arch}" for cfg in `ls ${cfg_dir}`; do echo "Building $cfg" - make -j$(nproc) -C xen clean + make -j$(nproc) -C xen clean > /dev/null 2>&1 rm -f xen/.config - make -C xen KBUILD_DEFCONFIG=../../../../${cfg_dir}/${cfg} XEN_CONFIG_EXPERT=y defconfig - make -j$(nproc) -C xen XEN_CONFIG_EXPERT=y + make -C xen KBUILD_DEFCONFIG=../../../../${cfg_dir}/${cfg} \ + XEN_CONFIG_EXPERT=y defconfig > logs/kconfig-${cfg}.log 2>&1 + make -j$(nproc) -C xen XEN_CONFIG_EXPERT=y > logs/build-${cfg}.log 2>&1 done -- 2.26.2
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |