From 28244cabf4cc6759aec1701426ff4bae9bdf2c95 Mon Sep 17 00:00:00 2001 From: Pavel Negrobov Date: Mon, 18 Dec 2023 12:31:12 +0300 Subject: [PATCH] =?UTF-8?q?INF-834:=20=D0=A1=D0=BE=D0=B7=D0=B4=D0=B0=D1=82?= =?UTF-8?q?=D1=8C=20=D1=82=D0=B5=D1=81=D1=82=20=D0=B4=D0=BB=D1=8F=20=D0=BF?= =?UTF-8?q?=D1=80=D0=BE=D0=B2=D0=B5=D1=80=D0=BA=D0=B8=20=D0=B1=D0=B8=D0=BB?= =?UTF-8?q?=D0=B4=D0=B0=20osinfo-db?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- rpm_tests/p_osinfo-db/01-msvsphere-present.sh | 2 ++ ...{02-check-image.sh => 02-image-os_name.sh} | 2 ++ .../p_osinfo-db/03-check-image-sha256.sh | 31 +++++++++++++++++-- .../p_osinfo-db/files/msvsphereiso_local.txt | 5 +++ 4 files changed, 37 insertions(+), 3 deletions(-) rename rpm_tests/p_osinfo-db/{02-check-image.sh => 02-image-os_name.sh} (90%) create mode 100644 rpm_tests/p_osinfo-db/files/msvsphereiso_local.txt diff --git a/rpm_tests/p_osinfo-db/01-msvsphere-present.sh b/rpm_tests/p_osinfo-db/01-msvsphere-present.sh index 08978d0..e815bc0 100755 --- a/rpm_tests/p_osinfo-db/01-msvsphere-present.sh +++ b/rpm_tests/p_osinfo-db/01-msvsphere-present.sh @@ -1,6 +1,8 @@ #!/bin/bash -x echo "Тест наличия MSVSphere ОС в БД osinfo" +echo "=====================================" +echo "" source ../../library/sh_lib.sh diff --git a/rpm_tests/p_osinfo-db/02-check-image.sh b/rpm_tests/p_osinfo-db/02-image-os_name.sh similarity index 90% rename from rpm_tests/p_osinfo-db/02-check-image.sh rename to rpm_tests/p_osinfo-db/02-image-os_name.sh index 06c3b8a..d4e1095 100755 --- a/rpm_tests/p_osinfo-db/02-check-image.sh +++ b/rpm_tests/p_osinfo-db/02-image-os_name.sh @@ -1,6 +1,8 @@ #!/bin/bash echo "Тест получения названия MSVSphere ОС из ISO образа" +echo "==================================================" +echo "" source ../../library/sh_lib.sh diff --git a/rpm_tests/p_osinfo-db/03-check-image-sha256.sh b/rpm_tests/p_osinfo-db/03-check-image-sha256.sh index 888e6c7..2dd361a 100755 --- a/rpm_tests/p_osinfo-db/03-check-image-sha256.sh +++ b/rpm_tests/p_osinfo-db/03-check-image-sha256.sh @@ -1,6 +1,8 @@ #!/bin/bash -echo "Тест получения названия MSVSphere ОС из ISO образа" +echo "Тест проверки целостности ISO образов MSVSphere ОС" +echo "==================================================" +echo "" source ../../library/sh_lib.sh @@ -8,9 +10,32 @@ check=0 ISO_IMAGES_URLS_FILE='files/msvsphereiso_url.txt' while read LINE; do - CHECKSUM_URL="$LINE.CHECKSUM" + ISO_FILENAME=`basename $LINE` + ISO_URL_PATH="${LINE%/*}" + LOCAL_FILE="/home/pavel/MSVSphere-images/$ISO_FILENAME" + CHECKSUM_URL="$ISO_URL_PATH/$ISO_FILENAME.CHECKSUM" + echo "ISO URL: $LINE" + echo "Local file path: $LOCAL_FILE" + echo "Checksum File: $CHECKSUM_URL" + + # Get SHA256 hash value: + # curl -s https://rsync.inferitos.ru/msvsphere/9.3/isos/x86_64/MSVSphere-9.3-x86_64-arm.iso.CHECKSUM | /bin/grep SHA256 | /bin/grep -v Hash: | /bin/awk -F '=' '{gsub(/ /, "", $2); print $2}' + SHA256_HASH_FROM_FILE="$(curl -s https://rsync.inferitos.ru/msvsphere/9.3/isos/x86_64/MSVSphere-9.3-x86_64-arm.iso.CHECKSUM | /bin/grep SHA256 | /bin/grep -v Hash: | /bin/awk -F '=' '{gsub(/ /, "", $2); print $2}')" # curl -LJs -r 0-1048576 -o img.iso $LINE - echo "File: $LINE; Checksum: $CHECKSUM_URL" + # sha256sum /home/pavel/MSVSphere-images/MSVSphere-9.3-x86_64-arm.iso | /bin/awk -F ' ' '{ print $1 }' + SHA256_OUTPUT="$(sha256sum $LOCAL_FILE)" + SHA256HASH="$(echo "$SHA256_OUTPUT" | /bin/awk -F ' ' '{ print $1 }')" + + # Test and print results + echo "Calculated file SHA256 hash: $SHA256HASH" + echo "SHA256 hash from CHECKSUM file: $SHA256_HASH_FROM_FILE" + if [ "$SHA256HASH" == "$SHA256_HASH_FROM_FILE" ]; then + echo 'SHA256 hash OK' + else + echo 'ERROR: SHA256 hash mismatch!!!' + let check+=1 + fi + echo "--------------------------" done < $ISO_IMAGES_URLS_FILE check_test_status ${check} "$0" diff --git a/rpm_tests/p_osinfo-db/files/msvsphereiso_local.txt b/rpm_tests/p_osinfo-db/files/msvsphereiso_local.txt new file mode 100644 index 0000000..86ca90e --- /dev/null +++ b/rpm_tests/p_osinfo-db/files/msvsphereiso_local.txt @@ -0,0 +1,5 @@ +/home/pavel/MSVSphere-images/MSVSphere-9.3-x86_64-dvd.iso +/home/pavel/MSVSphere-images/MSVSphere-9.3-x86_64-netinstall.iso +/home/pavel/MSVSphere-images/MSVSphere-9.3-x86_64-minimal.iso +/home/pavel/MSVSphere-images/MSVSphere-9.3-x86_64-server.iso +/home/pavel/MSVSphere-images/MSVSphere-9.3-x86_64-arm.iso