mirror of
https://github.com/flatcar/scripts.git
synced 2026-04-02 04:01:19 +02:00
scavenge for logs
Signed-off-by: Krzesimir Nowak <knowak@microsoft.com>
This commit is contained in:
parent
16c6ba71f3
commit
ecaeb46687
@ -185,8 +185,13 @@ else
|
||||
./run_sdk_container -C "${import_image}" -n "${toolchains_container}" \
|
||||
sudo ./build_toolchains --seed_tarball="./${tarball}" || failed=x
|
||||
|
||||
if [[ -n ${logdir} ]] && sudo test -d __build__/images/catalyst/log/coreos-toolchains; then
|
||||
sudo cp -a __build__/images/catalyst/log/coreos-toolchains "${logdir}/coreos-toolchains"
|
||||
if [[ -n ${logdir} ]]; then
|
||||
if sudo test -d __build__/images/catalyst/log/coreos-toolchains; then
|
||||
sudo cp -a __build__/images/catalyst/log/coreos-toolchains "${logdir}/coreos-toolchains"
|
||||
fi
|
||||
if sudo test -d __build__/images/catalyst/tmp/coreos-toolchains; then
|
||||
scavenge_for_configure_logs --use-sudo __build__/images/catalyst/tmp/coreos-toolchains "${logdir}"
|
||||
fi
|
||||
fi
|
||||
if [[ -n ${failed} ]]; then exit 1; fi
|
||||
|
||||
|
||||
@ -96,7 +96,7 @@ function _packages_build_impl() {
|
||||
|
||||
# Copy the build logs to a directory accessible for us.
|
||||
./run_sdk_container -n "${packages_container}" -v "${vernum}" -C "${sdk_image}" \
|
||||
cp -a "/build/${arch}-usr/var/log/portage" "${logdir}" || :
|
||||
bash -c "source sdk_lib/sdk_container_common.sh; cp -a /build/${arch@Q}-usr/var/log/portage ${logdir@Q}; scavenge_for_configure_logs /build/${arch@Q}-usr/var/tmp/portage ${logdir@Q}" || :
|
||||
|
||||
if [[ -z ${failed} ]]; then
|
||||
# run_sdk_container updates the version file, use that version from here on
|
||||
|
||||
@ -211,30 +211,10 @@ function _sdk_bootstrap_impl() {
|
||||
if dir_contains_globs "${catalyst_log}" 'stage*'; then
|
||||
cp -a "${catalyst_log}/stage"* "${logdir}"
|
||||
fi
|
||||
mkdir -p "${logdir}/config-logs"
|
||||
# TODO: Add more interesting files (meson logs, cmake logs)
|
||||
local -a interesting_files=( config.log CMakeConfigureLog.yaml meson-log.txt ) find_flags=()
|
||||
for f in "${interesting_files[@]}"; do
|
||||
if [[ ${#find_flags[@]} -ne 0 ]]; then
|
||||
find_flags+=( '-o' )
|
||||
fi
|
||||
find_flags+=( '-name' "${f}" )
|
||||
done
|
||||
local catalyst_tmp='__build__/images/catalyst/tmp/flatcar-sdk'
|
||||
local -a logs
|
||||
local l d
|
||||
mapfile -t logs < <(find "${catalyst_tmp}" "${find_flags[@]}")
|
||||
for l in "${logs[@]}"; do
|
||||
d=${l#"${catalyst_tmp}"}
|
||||
d=${d#/}
|
||||
if [[ ${d} = */* ]]; then
|
||||
d=${d%/*}
|
||||
mkdir -p "${logdir}/config-logs/${d}"
|
||||
else
|
||||
d='.'
|
||||
fi
|
||||
cp -a "${l}" "${logdir}/config-logs/${d}"
|
||||
done
|
||||
(
|
||||
source sdk_lib/sdk_container_common.sh
|
||||
scavenge_for_configure_logs __build__/images/catalyst/tmp/flatcar-sdk "${logdir}"
|
||||
)
|
||||
if dir_contains_globs "${logdir}" '*'; then
|
||||
(
|
||||
cd "${logdir}"
|
||||
|
||||
@ -305,3 +305,40 @@ function gnupg_ssh_gcloud_mount_opts() {
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
function scavenge_for_configure_logs() {
|
||||
local -a sudo_cmd=()
|
||||
while [[ $# -gt 0 ]]; do
|
||||
case ${1} in
|
||||
--use-sudo) sudo_cmd=( sudo ); shift;;
|
||||
--) shift; break;;
|
||||
--*) echo "unknown flag for $0: $1" >&2; exit 1;;
|
||||
*) break;;
|
||||
esac
|
||||
done
|
||||
local dir=${1}; shift
|
||||
local logdir=${1}; shift
|
||||
|
||||
# TODO: Add more interesting files
|
||||
local -a interesting_files=( config.log CMakeConfigureLog.yaml meson-log.txt ) find_flags=()
|
||||
for f in "${interesting_files[@]}"; do
|
||||
if [[ ${#find_flags[@]} -ne 0 ]]; then
|
||||
find_flags+=( '-o' )
|
||||
fi
|
||||
find_flags+=( '-name' "${f}" )
|
||||
done
|
||||
local -a logs
|
||||
local l d
|
||||
mapfile -t logs < <("${sudo_cmd[@]}" find "${dir}" "${find_flags[@]}")
|
||||
for l in "${logs[@]}"; do
|
||||
d=${l#"${dir}"}
|
||||
d=${d#/}
|
||||
if [[ ${d} = */* ]]; then
|
||||
d=${d%/*}
|
||||
else
|
||||
d='.'
|
||||
fi
|
||||
"${sudo_cmd[@]}" mkdir -p "${logdir}/config-logs/${d}"
|
||||
"${sudo_cmd[@]}" cp -a "${l}" "${logdir}/config-logs/${d}"
|
||||
done
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user