diff --git a/.github/scripts/upload_failure_logs.py b/.github/scripts/upload_failure_logs.py new file mode 100755 index 0000000..d1fc617 --- /dev/null +++ b/.github/scripts/upload_failure_logs.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +import tarfile +from pathlib import Path +from common import upload, OS_NAME, COMPILE_CONFIG, HOME + +ARCHIVE_NAME = Path(f"fail_log_{OS_NAME}_{COMPILE_CONFIG}.tar.gz") + + +files_to_archive = [] +files_to_archive += HOME.glob("BUILD_*") +files_to_archive += [HOME/"SOURCE", HOME/"LOGS", HOME/"TOOLCHAINS"] + +with tarfile.open(ARCHIVE_NAME, "w:xz") as tar: + for name in set(files_to_archive): + tar.add(str(name)) + +upload(ARCHIVE_NAME, "ci@tmp.kiwix.org:30022", "/data/tmp/ci") diff --git a/.github/scripts/upload_failure_logs.sh b/.github/scripts/upload_failure_logs.sh deleted file mode 100755 index 0714d37..0000000 --- a/.github/scripts/upload_failure_logs.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/usr/bin/env bash - -set -e - -cd $HOME - -ARCHIVE_NAME=fail_log_${OS_NAME}_${COMPILE_CONFIG}.tar.gz -tar -czf ${ARCHIVE_NAME} $HOME/BUILD_* $HOME/SOURCE $HOME/LOGS $HOME/TOOLCHAINS - -echo "Uploading archive $ARCHIVE_NAME" - -scp -c aes128-ctr -P 30022 -p -i ${SSH_KEY} \ - -o PasswordAuthentication=no \ - -o StrictHostKeyChecking=no \ - $ARCHIVE_NAME \ - ci@tmp.kiwix.org:/data/tmp/ci diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index bd61634..feac170 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -91,7 +91,7 @@ jobs: COMPILE_CONFIG: ${{matrix.config}} - name: Upload failure logs if: failure() - run: $HOME/kiwix-build/.github/scripts/upload_failure_logs.sh + run: $HOME/kiwix-build/.github/scripts/upload_failure_logs.py env: COMPILE_CONFIG: ${{matrix.config}} @@ -136,7 +136,7 @@ jobs: kiwix-build/.github/scripts/build_projects.py - name: Upload failure logs if: failure() - run: $HOME/kiwix-build/.github/scripts/upload_failure_logs.sh + run: $HOME/kiwix-build/.github/scripts/upload_failure_logs.py Macos: strategy: @@ -202,6 +202,6 @@ jobs: COMPILE_CONFIG: ${{matrix.config}} - name: Upload failure logs if: failure() - run: $GITHUB_WORKSPACE/.github/scripts/upload_failure_logs.sh + run: $GITHUB_WORKSPACE/.github/scripts/upload_failure_logs.py env: COMPILE_CONFIG: ${{matrix.config}}