From a0352f8228003324ce49d1de33648c4ae5ca9fa0 Mon Sep 17 00:00:00 2001 From: Daniel McKnight Date: Tue, 4 Jun 2024 08:42:51 -0700 Subject: [PATCH 1/8] Remove tests for Python 3.7 (deprecated) Add tests for Python 3.12 --- .github/workflows/setup_tests.yml | 2 +- .github/workflows/unit_tests.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/setup_tests.yml b/.github/workflows/setup_tests.yml index 957b12d25..cc07c7f3b 100644 --- a/.github/workflows/setup_tests.yml +++ b/.github/workflows/setup_tests.yml @@ -9,7 +9,7 @@ jobs: core_and_skills: strategy: matrix: - python-version: [ 3.8, 3.9, '3.10', '3.11' ] + python-version: [ 3.8, 3.9, '3.10', '3.11', '3.12' ] runs-on: ubuntu-latest timeout-minutes: 15 steps: diff --git a/.github/workflows/unit_tests.yml b/.github/workflows/unit_tests.yml index 7b8880e13..e5b14b337 100644 --- a/.github/workflows/unit_tests.yml +++ b/.github/workflows/unit_tests.yml @@ -17,7 +17,7 @@ jobs: util_tests: strategy: matrix: - python-version: [ 3.7, 3.8, 3.9, '3.10', '3.11' ] + python-version: [ 3.8, 3.9, '3.10', '3.11', '3.12' ] runs-on: ubuntu-latest timeout-minutes: 15 steps: From ebf4fa5d599e62321c5a5efd6a58b700511f535a Mon Sep 17 00:00:00 2001 From: Daniel McKnight Date: Tue, 4 Jun 2024 08:49:37 -0700 Subject: [PATCH 2/8] Update python versions in `unit_tests` --- .github/workflows/unit_tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/unit_tests.yml b/.github/workflows/unit_tests.yml index e5b14b337..6f87ca947 100644 --- a/.github/workflows/unit_tests.yml +++ b/.github/workflows/unit_tests.yml @@ -60,7 +60,7 @@ jobs: unit_tests: strategy: matrix: - python-version: [ 3.7, 3.8, 3.9, '3.10', '3.11' ] + python-version: [ 3.8, 3.9, '3.10', '3.11', '3.12' ] runs-on: ubuntu-latest timeout-minutes: 15 steps: From 5d05b4208b8638ff152dd81010b528fafde34cf3 Mon Sep 17 00:00:00 2001 From: Daniel McKnight Date: Tue, 4 Jun 2024 11:39:39 -0700 Subject: [PATCH 3/8] Troubleshoot GHA timeout by manually downloading base image files (with caching) --- .github/workflows/setup_tests.yml | 31 ++++++++++++++++++++++++++----- 1 file changed, 26 insertions(+), 5 deletions(-) diff --git a/.github/workflows/setup_tests.yml b/.github/workflows/setup_tests.yml index cc07c7f3b..2edebccf6 100644 --- a/.github/workflows/setup_tests.yml +++ b/.github/workflows/setup_tests.yml @@ -9,15 +9,17 @@ jobs: core_and_skills: strategy: matrix: - python-version: [ 3.8, 3.9, '3.10', '3.11', '3.12' ] + python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12' ] runs-on: ubuntu-latest timeout-minutes: 15 steps: - - uses: actions/checkout@v2 + - name: Checkout neon-core + uses: actions/checkout@v4 - name: Setup Python ${{ matrix.python-version }} - uses: actions/setup-python@v1 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} + cache: pip - name: Install System Dependencies run: | sudo apt update @@ -33,12 +35,31 @@ jobs: runs-on: ubuntu-latest timeout-minutes: 90 steps: - - uses: actions/checkout@v2 + - name: Checkout neon-core + uses: actions/checkout@v4 + + - name: Restore LFS cache + uses: actions/cache@v3 + id: lfs-cache + with: + path: /core/pi_image_3.img.xz + key: ${{ runner.os }}-lfs-${{ hashFiles('/core/pi_image_3.img.xz') }}-v1 + - name: Ensure LFS files are pulled + if: steps.lfs-cache.outputs.cache-hit != 'true' + run: wget https://2222.us/app/files/neon_images/test_images/pi_image_3.img.xz -O /core/pi_image_3.img.xz + - name: Save LFS Cache + if: steps.lfs-cache.outputs.cache-hit != 'true' + id: lfs-cache-save + uses: actions/cache/save@v3 + with: + path: /core/pi_image_3.img.xz + key: ${{ runner.os }}-lfs-${{ hashFiles('/core/pi_image_3.img.xz') }}-v1 + - name: Test chroot installation uses: pguyot/arm-runner-action@v2 with: optimize_image: false - base_image: https://2222.us/app/files/neon_images/test_images/pi_image_3.img.xz + base_image: file:///core/pi_image_3.img.xz cpu: cortex-a53 copy_repository_path: /core commands: | From 0b1b716c32d7e5abdf03c548d10df1855d6e4123 Mon Sep 17 00:00:00 2001 From: Daniel McKnight Date: Tue, 4 Jun 2024 11:43:12 -0700 Subject: [PATCH 4/8] Troubleshoot paths in Pi image tests --- .github/workflows/setup_tests.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/setup_tests.yml b/.github/workflows/setup_tests.yml index 2edebccf6..8cebe241b 100644 --- a/.github/workflows/setup_tests.yml +++ b/.github/workflows/setup_tests.yml @@ -42,24 +42,24 @@ jobs: uses: actions/cache@v3 id: lfs-cache with: - path: /core/pi_image_3.img.xz + path: ${{ GITHUB_WORKSPACE }}/pi_image_3.img.xz key: ${{ runner.os }}-lfs-${{ hashFiles('/core/pi_image_3.img.xz') }}-v1 - name: Ensure LFS files are pulled if: steps.lfs-cache.outputs.cache-hit != 'true' - run: wget https://2222.us/app/files/neon_images/test_images/pi_image_3.img.xz -O /core/pi_image_3.img.xz + run: wget https://2222.us/app/files/neon_images/test_images/pi_image_3.img.xz -O ${{ GITHUB_WORKSPACE }}/pi_image_3.img.xz - name: Save LFS Cache if: steps.lfs-cache.outputs.cache-hit != 'true' id: lfs-cache-save uses: actions/cache/save@v3 with: - path: /core/pi_image_3.img.xz - key: ${{ runner.os }}-lfs-${{ hashFiles('/core/pi_image_3.img.xz') }}-v1 + path: ${{ GITHUB_WORKSPACE }}/pi_image_3.img.xz + key: ${{ runner.os }}-lfs-${{ hashFiles('${{ GITHUB_WORKSPACE }}/pi_image_3.img.xz') }}-v1 - name: Test chroot installation uses: pguyot/arm-runner-action@v2 with: optimize_image: false - base_image: file:///core/pi_image_3.img.xz + base_image: file://${{ GITHUB_WORKSPACE }}/pi_image_3.img.xz cpu: cortex-a53 copy_repository_path: /core commands: | From c94a883465df477f6c5c071a66ba1fbd4fafe73f Mon Sep 17 00:00:00 2001 From: Daniel McKnight Date: Tue, 4 Jun 2024 11:46:37 -0700 Subject: [PATCH 5/8] Troubleshoot variable refs in Pi image tests --- .github/workflows/setup_tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/setup_tests.yml b/.github/workflows/setup_tests.yml index 8cebe241b..21352e91f 100644 --- a/.github/workflows/setup_tests.yml +++ b/.github/workflows/setup_tests.yml @@ -46,7 +46,7 @@ jobs: key: ${{ runner.os }}-lfs-${{ hashFiles('/core/pi_image_3.img.xz') }}-v1 - name: Ensure LFS files are pulled if: steps.lfs-cache.outputs.cache-hit != 'true' - run: wget https://2222.us/app/files/neon_images/test_images/pi_image_3.img.xz -O ${{ GITHUB_WORKSPACE }}/pi_image_3.img.xz + run: wget https://2222.us/app/files/neon_images/test_images/pi_image_3.img.xz -O ${{ github.workspace }}/pi_image_3.img.xz - name: Save LFS Cache if: steps.lfs-cache.outputs.cache-hit != 'true' id: lfs-cache-save From 5e5ff2a7e6e46eb92e59f5b064d5129910e8e3c9 Mon Sep 17 00:00:00 2001 From: Daniel McKnight Date: Tue, 4 Jun 2024 11:47:40 -0700 Subject: [PATCH 6/8] Troubleshoot variable refs in Pi image tests --- .github/workflows/setup_tests.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/setup_tests.yml b/.github/workflows/setup_tests.yml index 21352e91f..2d139b601 100644 --- a/.github/workflows/setup_tests.yml +++ b/.github/workflows/setup_tests.yml @@ -42,7 +42,7 @@ jobs: uses: actions/cache@v3 id: lfs-cache with: - path: ${{ GITHUB_WORKSPACE }}/pi_image_3.img.xz + path: ${{ github.workspace }}/pi_image_3.img.xz key: ${{ runner.os }}-lfs-${{ hashFiles('/core/pi_image_3.img.xz') }}-v1 - name: Ensure LFS files are pulled if: steps.lfs-cache.outputs.cache-hit != 'true' @@ -52,14 +52,14 @@ jobs: id: lfs-cache-save uses: actions/cache/save@v3 with: - path: ${{ GITHUB_WORKSPACE }}/pi_image_3.img.xz - key: ${{ runner.os }}-lfs-${{ hashFiles('${{ GITHUB_WORKSPACE }}/pi_image_3.img.xz') }}-v1 + path: ${{ github.workspace }}/pi_image_3.img.xz + key: ${{ runner.os }}-lfs-${{ hashFiles('${{ github.workspace }}/pi_image_3.img.xz') }}-v1 - name: Test chroot installation uses: pguyot/arm-runner-action@v2 with: optimize_image: false - base_image: file://${{ GITHUB_WORKSPACE }}/pi_image_3.img.xz + base_image: file://${{ github.workspace }}/pi_image_3.img.xz cpu: cortex-a53 copy_repository_path: /core commands: | From af92d9c465ba9f7b997ce0f55568afba418bc7d4 Mon Sep 17 00:00:00 2001 From: Daniel McKnight Date: Tue, 4 Jun 2024 12:43:41 -0700 Subject: [PATCH 7/8] Update to use cached image in 3.11 Pi image test --- .github/workflows/setup_tests.yml | 27 +++++++++++++++++++++------ 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/.github/workflows/setup_tests.yml b/.github/workflows/setup_tests.yml index 2d139b601..6cd651f50 100644 --- a/.github/workflows/setup_tests.yml +++ b/.github/workflows/setup_tests.yml @@ -37,13 +37,12 @@ jobs: steps: - name: Checkout neon-core uses: actions/checkout@v4 - - name: Restore LFS cache uses: actions/cache@v3 id: lfs-cache with: path: ${{ github.workspace }}/pi_image_3.img.xz - key: ${{ runner.os }}-lfs-${{ hashFiles('/core/pi_image_3.img.xz') }}-v1 + key: ${{ runner.os }}-lfs-pi_image_3.img.xz-v1 - name: Ensure LFS files are pulled if: steps.lfs-cache.outputs.cache-hit != 'true' run: wget https://2222.us/app/files/neon_images/test_images/pi_image_3.img.xz -O ${{ github.workspace }}/pi_image_3.img.xz @@ -53,8 +52,7 @@ jobs: uses: actions/cache/save@v3 with: path: ${{ github.workspace }}/pi_image_3.img.xz - key: ${{ runner.os }}-lfs-${{ hashFiles('${{ github.workspace }}/pi_image_3.img.xz') }}-v1 - + key: ${{ runner.os }}-lfs-pi_image_3.img.xz-v1 - name: Test chroot installation uses: pguyot/arm-runner-action@v2 with: @@ -71,12 +69,29 @@ jobs: runs-on: ubuntu-latest timeout-minutes: 90 steps: - - uses: actions/checkout@v2 + - name: Checkout neon-core + uses: actions/checkout@v4 + - name: Restore LFS cache + uses: actions/cache@v3 + id: lfs-cache + with: + path: ${{ github.workspace }}/pi_image_3.img.xz + key: ${{ runner.os }}-lfs-pi_image_3.img.xz-v1 + - name: Ensure LFS files are pulled + if: steps.lfs-cache.outputs.cache-hit != 'true' + run: wget https://2222.us/app/files/neon_images/test_images/pi_image_3.img.xz -O ${{ github.workspace }}/pi_image_3.img.xz + - name: Save LFS Cache + if: steps.lfs-cache.outputs.cache-hit != 'true' + id: lfs-cache-save + uses: actions/cache/save@v3 + with: + path: ${{ github.workspace }}/pi_image_3.img.xz + key: ${{ runner.os }}-lfs-pi_image_3.img.xz-v1 - name: Test chroot installation uses: pguyot/arm-runner-action@v2 with: optimize_image: false - base_image: https://2222.us/app/files/neon_images/test_images/pi_image_3.img.xz + base_image: file://${{ github.workspace }}/pi_image_3.img.xz cpu: cortex-a53 copy_repository_path: /core commands: | From a78784655a44faf76525fba12c6261a6cd3fee63 Mon Sep 17 00:00:00 2001 From: Daniel McKnight Date: Tue, 4 Jun 2024 12:50:37 -0700 Subject: [PATCH 8/8] Cleanup caching to remove `lfs` references in base image caching --- .github/workflows/setup_tests.yml | 36 +++++++++++++++---------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/.github/workflows/setup_tests.yml b/.github/workflows/setup_tests.yml index 6cd651f50..0117f0d74 100644 --- a/.github/workflows/setup_tests.yml +++ b/.github/workflows/setup_tests.yml @@ -37,22 +37,22 @@ jobs: steps: - name: Checkout neon-core uses: actions/checkout@v4 - - name: Restore LFS cache + - name: Restore base image cache uses: actions/cache@v3 - id: lfs-cache + id: image-cache with: path: ${{ github.workspace }}/pi_image_3.img.xz - key: ${{ runner.os }}-lfs-pi_image_3.img.xz-v1 - - name: Ensure LFS files are pulled - if: steps.lfs-cache.outputs.cache-hit != 'true' + key: ${{ runner.os }}-pi_image_3.img.xz-v1 + - name: Ensure base image files are pulled + if: steps.image-cache.outputs.cache-hit != 'true' run: wget https://2222.us/app/files/neon_images/test_images/pi_image_3.img.xz -O ${{ github.workspace }}/pi_image_3.img.xz - - name: Save LFS Cache - if: steps.lfs-cache.outputs.cache-hit != 'true' - id: lfs-cache-save + - name: Save base image Cache + if: steps.image-cache.outputs.cache-hit != 'true' + id: image-cache-save uses: actions/cache/save@v3 with: path: ${{ github.workspace }}/pi_image_3.img.xz - key: ${{ runner.os }}-lfs-pi_image_3.img.xz-v1 + key: ${{ runner.os }}-pi_image_3.img.xz-v1 - name: Test chroot installation uses: pguyot/arm-runner-action@v2 with: @@ -71,22 +71,22 @@ jobs: steps: - name: Checkout neon-core uses: actions/checkout@v4 - - name: Restore LFS cache + - name: Restore base image cache uses: actions/cache@v3 - id: lfs-cache + id: image-cache with: path: ${{ github.workspace }}/pi_image_3.img.xz - key: ${{ runner.os }}-lfs-pi_image_3.img.xz-v1 - - name: Ensure LFS files are pulled - if: steps.lfs-cache.outputs.cache-hit != 'true' + key: ${{ runner.os }}-pi_image_3.img.xz-v1 + - name: Ensure base image is pulled + if: steps.image-cache.outputs.cache-hit != 'true' run: wget https://2222.us/app/files/neon_images/test_images/pi_image_3.img.xz -O ${{ github.workspace }}/pi_image_3.img.xz - - name: Save LFS Cache - if: steps.lfs-cache.outputs.cache-hit != 'true' - id: lfs-cache-save + - name: Save base image Cache + if: steps.image-cache.outputs.cache-hit != 'true' + id: image-cache-save uses: actions/cache/save@v3 with: path: ${{ github.workspace }}/pi_image_3.img.xz - key: ${{ runner.os }}-lfs-pi_image_3.img.xz-v1 + key: ${{ runner.os }}-pi_image_3.img.xz-v1 - name: Test chroot installation uses: pguyot/arm-runner-action@v2 with: