Skip to content

Commit

Permalink
Switch to v4 of artifact actions (#8342)
Browse files Browse the repository at this point in the history
v3 is due to stop working on 2024-11-30:

<https://github.blog/changelog/2024-04-16-deprecation-notice-v3-of-the-artifact-actions/>.

Note that `artifact-upload@v4` no longer allows multiple jobs of the
same workflow to upload an artifact with the same name, thus I had to
rename several of the artifacts. In the case of coverage results,
re-merge them at the end to avoid clutter on the workflow summary page.
I didn't bother with merging other artifacts, because they're only
produced in case of failure, so I'm not expecting them to create much
clutter.

Delete the schema upload step entirely, because I don't think it works
(it's inside the wrong job), and it doesn't seem that useful anyway.
  • Loading branch information
SpecLad authored Sep 2, 2024
1 parent cb6c50f commit 4aa2a4e
Show file tree
Hide file tree
Showing 4 changed files with 50 additions and 57 deletions.
35 changes: 14 additions & 21 deletions .github/workflows/full.yml
Original file line number Diff line number Diff line change
Expand Up @@ -75,19 +75,19 @@ jobs:
cp -r cvat-sdk/* /tmp/cvat_sdk/
- name: Upload CVAT server artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: cvat_server
path: /tmp/cvat_server/image.tar

- name: Upload CVAT UI artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: cvat_ui
path: /tmp/cvat_ui/image.tar

- name: Upload CVAT SDK artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: cvat_sdk
path: /tmp/cvat_sdk/
Expand All @@ -105,19 +105,19 @@ jobs:
python-version: '3.8'

- name: Download CVAT server image
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: cvat_server
path: /tmp/cvat_server/

- name: Download CVAT UI images
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: cvat_ui
path: /tmp/cvat_ui/

- name: Download CVAT SDK package
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: cvat_sdk
path: /tmp/cvat_sdk/
Expand Down Expand Up @@ -150,13 +150,6 @@ jobs:
docker run --rm cvat/server:${CVAT_VERSION} bash \
-c 'python manage.py makemigrations --check'
- name: Upload expected schema as an artifact
if: failure() && steps.verify_schema.conclusion == 'failure'
uses: actions/upload-artifact@v3.1.2
with:
name: expected_schema
path: cvat/schema-expected.yml

- name: Generate SDK
run: |
pip3 install -r cvat-sdk/gen/requirements.txt
Expand Down Expand Up @@ -186,7 +179,7 @@ jobs:
- name: Uploading "cvat" container logs as an artifact
if: failure() && steps.run_tests.conclusion == 'failure'
uses: actions/upload-artifact@v3.1.2
uses: actions/upload-artifact@v4
with:
name: rest_api_container_logs
path: "${{ github.workspace }}/rest_api_testing"
Expand All @@ -200,7 +193,7 @@ jobs:
ref: ${{ inputs.ref }}

- name: Download CVAT server image
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: cvat_server
path: /tmp/cvat_server/
Expand Down Expand Up @@ -245,7 +238,7 @@ jobs:
- name: Uploading "cvat" container logs as an artifact
if: failure()
uses: actions/upload-artifact@v3.1.1
uses: actions/upload-artifact@v4
with:
name: unit_tests_container_logs
path: "${{ github.workspace }}/unit_testing"
Expand All @@ -270,13 +263,13 @@ jobs:
node-version: '16.x'

- name: Download CVAT server image
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: cvat_server
path: /tmp/cvat_server/

- name: Download CVAT UI image
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: cvat_ui
path: /tmp/cvat_ui/
Expand Down Expand Up @@ -345,14 +338,14 @@ jobs:
- name: Uploading "cvat" container logs as an artifact
if: failure()
uses: actions/upload-artifact@v3.1.1
uses: actions/upload-artifact@v4
with:
name: e2e_container_logs
name: e2e_container_logs_${{ matrix.specs }}
path: ${{ github.workspace }}/tests/cvat_${{ matrix.specs }}.log

- name: Uploading cypress screenshots as an artifact
if: failure()
uses: actions/upload-artifact@v3.1.1
uses: actions/upload-artifact@v4
with:
name: cypress_screenshots_${{ matrix.specs }}
path: ${{ github.workspace }}/tests/cypress/screenshots
2 changes: 1 addition & 1 deletion .github/workflows/helm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ jobs:
- name: Uploading "cvat" container logs as an artifact
if: failure()
uses: actions/upload-artifact@v3.1.1
uses: actions/upload-artifact@v4
with:
name: rest_api_container_logs
path: "${{ github.workspace }}/rest_api_testing"
60 changes: 30 additions & 30 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -113,19 +113,19 @@ jobs:
-c 'python manage.py makemigrations --check'
- name: Upload CVAT server artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: cvat_server
path: /tmp/cvat_server/image.tar

- name: Upload CVAT UI artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: cvat_ui
path: /tmp/cvat_ui/image.tar

- name: Upload CVAT SDK artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: cvat_sdk
path: /tmp/cvat_sdk/
Expand All @@ -141,13 +141,13 @@ jobs:
python-version: '3.8'

- name: Download CVAT server image
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: cvat_server
path: /tmp/cvat_server/

- name: Download CVAT UI images
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: cvat_ui
path: /tmp/cvat_ui/
Expand All @@ -160,13 +160,6 @@ jobs:
docker tag cvat/ui:latest cvat/ui:${CVAT_VERSION}
docker image ls -a
- name: Upload expected schema as an artifact
if: failure() && steps.verify_schema.conclusion == 'failure'
uses: actions/upload-artifact@v3.1.2
with:
name: expected_schema
path: cvat/schema-expected.yml

- name: Generate SDK
run: |
pip3 install -r cvat-sdk/gen/requirements.txt
Expand All @@ -188,9 +181,9 @@ jobs:
ONE_RUNNING_JOB_IN_QUEUE_PER_USER="true" pytest tests/python/rest_api/test_queues.py --cov --cov-report=json
- name: Uploading code coverage results as an artifact
uses: actions/upload-artifact@v3.1.1
uses: actions/upload-artifact@v4
with:
name: coverage_results
name: coverage_results_rest_api
path: |
coverage*.json
Expand All @@ -207,7 +200,7 @@ jobs:
- name: Uploading "cvat" container logs as an artifact
if: failure() && steps.run_tests.conclusion == 'failure'
uses: actions/upload-artifact@v3.1.2
uses: actions/upload-artifact@v4
with:
name: rest_api_container_logs
path: "${{ github.workspace }}/rest_api_testing"
Expand All @@ -219,7 +212,7 @@ jobs:
- uses: actions/checkout@v4

- name: Download CVAT server image
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: cvat_server
path: /tmp/cvat_server/
Expand Down Expand Up @@ -254,9 +247,9 @@ jobs:
-c 'DISABLE_HUSKY=1 yarn --frozen-lockfile && yarn workspace cvat-core run test && mv cvat-core/reports/coverage/coverage-final.json ${CONTAINER_COVERAGE_DATA_DIR}'
- name: Uploading code coverage results as an artifact
uses: actions/upload-artifact@v3.1.1
uses: actions/upload-artifact@v4
with:
name: coverage_results
name: coverage_results_unit_tests
path: |
${{ github.workspace }}/coverage-final.json
${{ github.workspace }}/unit_tests_coverage.json
Expand All @@ -272,7 +265,7 @@ jobs:
- name: Uploading "cvat" container logs as an artifact
if: failure()
uses: actions/upload-artifact@v3.1.1
uses: actions/upload-artifact@v4
with:
name: unit_tests_container_logs
path: "${{ github.workspace }}/unit_testing"
Expand All @@ -295,13 +288,13 @@ jobs:
node-version: '18.x'

- name: Download CVAT server image
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: cvat_server
path: /tmp/cvat_server/

- name: Download CVAT UI image
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: cvat_ui
path: /tmp/cvat_ui/
Expand Down Expand Up @@ -363,9 +356,9 @@ jobs:
mv coverage/coverage-final.json coverage/${{ matrix.specs }}_coverage.json
- name: Uploading code coverage results as an artifact
uses: actions/upload-artifact@v3.1.1
uses: actions/upload-artifact@v4
with:
name: coverage_results
name: coverage_results_e2e_${{ matrix.specs }}
path: |
tests/coverage/${{ matrix.specs }}_coverage.json
Expand All @@ -378,21 +371,21 @@ jobs:
- name: Uploading "cvat" container logs as an artifact
if: failure()
uses: actions/upload-artifact@v3.1.1
uses: actions/upload-artifact@v4
with:
name: e2e_container_logs
name: e2e_container_logs_${{ matrix.specs }}
path: ${{ github.workspace }}/tests/cvat_${{ matrix.specs }}.log

- name: Uploading cypress screenshots as an artifact
if: failure()
uses: actions/upload-artifact@v3.1.1
uses: actions/upload-artifact@v4
with:
name: cypress_screenshots_${{ matrix.specs }}
path: ${{ github.workspace }}/tests/cypress/screenshots

- name: Uploading cypress videos as an artifact
if: failure()
uses: actions/upload-artifact@v3.1.1
uses: actions/upload-artifact@v4
with:
name: cypress_videos_${{ matrix.specs }}
path: ${{ github.workspace }}/tests/cypress/videos
Expand All @@ -405,13 +398,13 @@ jobs:
- uses: actions/checkout@v4

- name: Download CVAT server images
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: cvat_server
path: /tmp/cvat_server/

- name: Download CVAT UI images
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: cvat_ui
path: /tmp/cvat_ui/
Expand Down Expand Up @@ -444,8 +437,15 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Merge coverage artifacts
uses: actions/upload-artifact/merge@v4
with:
name: coverage_results
pattern: coverage_results_*
delete-merged: true

- name: Downloading coverage results
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: coverage_results

Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/schedule.yml
Original file line number Diff line number Diff line change
Expand Up @@ -308,21 +308,21 @@ jobs:
- name: Uploading cypress screenshots as an artifact
if: failure()
uses: actions/upload-artifact@v3.1.1
uses: actions/upload-artifact@v4
with:
name: cypress_screenshots
name: cypress_screenshots_${{ matrix.specs }}
path: ${{ github.workspace }}/tests/cypress/screenshots

- name: Uploading cypress videos as an artifact
if: failure()
uses: actions/upload-artifact@v3.1.1
uses: actions/upload-artifact@v4
with:
name: cypress_videos_${{ matrix.specs }}
path: ${{ github.workspace }}/tests/cypress/videos

- name: Uploading "cvat" container logs as an artifact
if: failure()
uses: actions/upload-artifact@v3.1.1
uses: actions/upload-artifact@v4
with:
name: cvat_container_logs
name: cvat_container_logs_${{ matrix.specs }}
path: ${{ github.workspace }}/tests/cvat.log

0 comments on commit 4aa2a4e

Please sign in to comment.