From 72b2cf964f0d05d262f859d212b07348b3a7d251 Mon Sep 17 00:00:00 2001 From: Matthieu Gautier Date: Thu, 30 Nov 2023 11:32:38 +0100 Subject: [PATCH] Use python to update failure logs. --- .github/scripts/upload_failure_logs.py | 18 ++++++++++++++++++ .github/scripts/upload_failure_logs.sh | 16 ---------------- .github/workflows/ci.yml | 10 +++++----- 3 files changed, 23 insertions(+), 21 deletions(-) create mode 100755 .github/scripts/upload_failure_logs.py delete mode 100755 .github/scripts/upload_failure_logs.sh diff --git a/.github/scripts/upload_failure_logs.py b/.github/scripts/upload_failure_logs.py new file mode 100755 index 0000000..cf595c5 --- /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, PLATFORM_TARGET, HOME + +ARCHIVE_NAME = Path(f"fail_log_{OS_NAME}_{PLATFORM_TARGET}.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 c433baf..4c2eb56 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,6 +13,7 @@ jobs: env: OS_NAME: windows PLATFORM_TARGET: native_dyn + HOME: 'C:\\Users\\runneradmin' steps: - name: Checkout code uses: actions/checkout@v3 @@ -51,9 +52,8 @@ jobs: env: SSH_KEY: ${{ runner.temp }}/id_rsa - name: Upload failure logs - shell: bash if: failure() - run: $GITHUB_WORKSPACE/.github/scripts/upload_failure_logs.sh + run: python .github\\scripts\\upload_failure_logs.py Linux: strategy: @@ -144,7 +144,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}} @@ -190,7 +190,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: @@ -256,6 +256,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}}