package dump: Custom packaging for faultlog dump
Test Results:
Verified that custom_package function is working as expected.
Change-Id: I7fe40512732f0f5cc27265ab8cce209da5a939cd
Signed-off-by: Gopichand Paturi <gopichandpaturi@gmail.com>
diff --git a/dump/tools/bmcdump/scripts/package b/dump/tools/bmcdump/scripts/package
index df87315..7e85110 100644
--- a/dump/tools/bmcdump/scripts/package
+++ b/dump/tools/bmcdump/scripts/package
@@ -1,11 +1,21 @@
#!/bin/bash
+#CONSTANTS
+declare -rx HEADER_EXTENSION="$DREPORT_INCLUDE/gendumpheader"
+
# @brief Packaging the dump, applying the header
# and transferring to dump location.
function custom_package()
{
- tar -Jcf "$name_dir.bin" -C \
- "$(dirname "$name_dir")" "$(basename "$name_dir")"
+ FILE="/tmp/dumpheader_${dump_id}_${EPOCHTIME}"
+ echo "performing dump compression $name_dir"
+ if [ "$dump_type" = "$TYPE_FAULTDATA" ]; then
+ rm -rf $name_dir/dreport.log
+ rm -rf $name_dir/summary.log
+ tar -cf "$name_dir.bin" -C "$(dirname "$name_dir")" "$(basename "$name_dir")"
+ else
+ tar cf - -C "$(dirname "$name_dir")" "$(basename "$name_dir")" | zstd > "$name_dir.bin"
+ fi
# shellcheck disable=SC2181 # need output from `tar` in above if cond.
if [ $? -ne 0 ]; then
echo "$($TIME_STAMP)" "Could not create the compressed tar file"
@@ -16,10 +26,10 @@
echo "Adding Dump Header :"$HEADER_EXTENSION
("$HEADER_EXTENSION")
- cat "$name_dir.bin" | tee -a "/tmp/dumpheader_$EPOCHTIME" > /dev/null
+ cat "$name_dir.bin" | tee -a "$FILE" > /dev/null
#remove the temporary name specific directory
- rm -rf "$name_dir"
- mv "/tmp/dumpheader_$EPOCHTIME" "$name_dir"
+ rm -rf "$name_dir" "$name_dir.bin"
+ mv $FILE "$name_dir"
echo "$($TIME_STAMP)" "Report is available in $dump_dir"
if [ "$TMP_DIR" == "$dump_dir" ] || [ "$TMP_DIR/" == "$dump_dir" ]; then
@@ -30,12 +40,12 @@
cp "$name_dir" "$dump_dir"
if [ $? -ne 0 ]; then
echo "Failed to copy the $name_dir to $dump_dir"
- rm "$name_dir.bin"
+ rm "$name_dir"
return "$INTERNAL_FAILURE"
fi
#Remove the temporary copy of the file
- rm -rf "$name_dir.bin" "$name_dir"
+ rm -rf "$name_dir"
}
# Executing function