update-s2s #147
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: update-s2s | |
on: | |
workflow_dispatch: | |
inputs: | |
ivy-branch: | |
description: 'Branch of Ivy to use' | |
default: 'main' | |
required: true | |
# schedule: | |
# - cron: "0 1 * * *" | |
permissions: | |
actions: read | |
contents: write | |
jobs: | |
update-kornia: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
file : [ test_color, test_contrib, test_enhance, test_feature1, test_feature2, test_feature3, test_feature4, test_feature5, | |
test_filters, test_image, test_io, test_losses, test_metrics, test_morphology, test_nerf, test_sensors, | |
test_tracking, test_utils, test_x, geometry/test_bbox, geometry/test_boxes, geometry/test_calibration, | |
geometry/test_camera, geometry/test_conversions, geometry/test_depth, geometry/test_epipolar, geometry/test_homography, | |
geometry/test_liegroup, geometry/test_linalg, geometry/test_line, geometry/test_quaternion, geometry/test_ransac, | |
geometry/test_solvers, geometry/test_subpix, geometry/test_transform, geometry/test_vector, | |
augmentation/test_augmentation1, augmentation/test_augmentation2, augmentation/test_augmentation3, | |
augmentation/test_augmentation4, augmentation/test_auto, augmentation/test_container ] | |
compile : [ F ] | |
target : ["tensorflow", "jax", "numpy" ] | |
steps: | |
- name: Checkout ivy-integration-tests | |
uses: actions/checkout@v4 | |
with: | |
path: ivy-integration-tests | |
- name: Checkout 🛎️Ivy | |
uses: actions/checkout@v4 | |
with: | |
repository: ivy-llc/ivy | |
token: ${{ secrets.DEV_BOT_GENERAL_PAT }} | |
path: ivy | |
persist-credentials: true | |
ref: ${{ inputs.ivy-branch }} | |
- name: Get Job URL | |
uses: Tiryoh/gha-jobid-action@v0 | |
id: jobs | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
job_name: ${{ github.job }} (${{ matrix.file }}, ${{ matrix.compile }}) | |
per_page: 64 | |
- name: Run Tests | |
id: tests | |
run: | | |
if [ "${{ steps.jobs.outputs.html_url }}" = "null" ]; then | |
docker run --rm -v "$(pwd)":/ivy -v "$(pwd)"/.hypothesis:/.hypothesis ivyllc/ivy:latest ivy-integration-tests/update_s2s.sh kornia ${{ matrix.file }} testing-nightly ${{ matrix.compile }} ${{ matrix.target }} https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} ${{ secrets.IVY_API_KEY }} | |
else | |
docker run --rm -v "$(pwd)":/ivy -v "$(pwd)"/.hypothesis:/.hypothesis ivyllc/ivy:latest ivy-integration-tests/update_s2s.sh kornia ${{ matrix.file }} testing-nightly ${{ matrix.compile }} ${{ matrix.target }} ${{ steps.jobs.outputs.html_url }} ${{ secrets.IVY_API_KEY }} | |
fi | |
- name: Prepare Artifact Name | |
id: prepare | |
shell: bash | |
run: | | |
safe_file_name=$(echo "${{ matrix.file }}" | sed 's/\//-/g') | |
echo "::set-output name=safe_file_name::$safe_file_name" | |
- name: Upload Test Results | |
if: always() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: test-results-transformers-${{ steps.prepare.outputs.safe_file_name }}-${{ matrix.compile }}-${{ matrix.target }} | |
path: | | |
ivy-integration-tests/test_results.txt | |
ivy-integration-tests/test_logs.txt | |
update-transformers: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
file : [ test_vision ] | |
compile : [ T, F ] | |
target : ["tensorflow", "jax" ] | |
steps: | |
- name: Checkout ivy-integration-tests | |
uses: actions/checkout@v4 | |
with: | |
path: ivy-integration-tests | |
- name: Checkout 🛎️Ivy | |
uses: actions/checkout@v4 | |
with: | |
repository: ivy-llc/ivy | |
token: ${{ secrets.DEV_BOT_GENERAL_PAT }} | |
path: ivy | |
persist-credentials: true | |
ref: ${{ inputs.ivy-branch }} | |
- name: Get Job URL | |
uses: Tiryoh/gha-jobid-action@v0 | |
id: jobs | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
job_name: ${{ github.job }} (${{ matrix.file }}, ${{ matrix.compile }}) | |
per_page: 64 | |
- name: Run Tests | |
id: tests | |
run: | | |
if [ "${{ steps.jobs.outputs.html_url }}" = "null" ]; then | |
docker run --rm -v "$(pwd)":/ivy -v "$(pwd)"/.hypothesis:/.hypothesis ivyllc/ivy:latest ivy-integration-tests/update_s2s.sh transformers ${{ matrix.file }} testing-nightly ${{ matrix.compile }} ${{ matrix.target }} https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} ${{ secrets.IVY_API_KEY }} | |
else | |
docker run --rm -v "$(pwd)":/ivy -v "$(pwd)"/.hypothesis:/.hypothesis ivyllc/ivy:latest ivy-integration-tests/update_s2s.sh transformers ${{ matrix.file }} testing-nightly ${{ matrix.compile }} ${{ matrix.target }} ${{ steps.jobs.outputs.html_url }} ${{ secrets.IVY_API_KEY }} | |
fi | |
- name: Prepare Artifact Name | |
id: prepare | |
shell: bash | |
run: | | |
safe_file_name=$(echo "${{ matrix.file }}" | sed 's/\//-/g') | |
echo "::set-output name=safe_file_name::$safe_file_name" | |
- name: Upload Test Results | |
if: always() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: test-results-transformers-${{ steps.prepare.outputs.safe_file_name }}-${{ matrix.compile }}-${{ matrix.target }} | |
path: | | |
ivy-integration-tests/test_results.txt | |
ivy-integration-tests/test_logs.txt | |
update-dashboard: | |
runs-on: ubuntu-latest | |
needs: | |
- update-kornia | |
- update-transformers | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
- name: Download Test Results | |
uses: actions/download-artifact@v3 | |
with: | |
path: ./artifacts | |
- name: Set up Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: "3.10" | |
# - name: Update Native Compilation Dashboard | |
# env: | |
# GITHUB_TOKEN: ${{ secrets.DEV_BOT_GENERAL_PAT }} | |
# run: | | |
# python update_s2s_dashboard.py --backend-compile | |
# git config --global user.email "[email protected]" | |
# git config --global user.name "ivy-dev-bot" | |
# git add NATIVE_COMPILATION_DASHBOARD.md | |
# git commit -m "Auto-update native compilation integration tests dashboard" | |
# git push | |
- name: Update Dashboard | |
env: | |
GITHUB_TOKEN: ${{ secrets.DEV_BOT_GENERAL_PAT }} | |
run: | | |
python update_s2s_dashboard.py | |
git config --global user.email "[email protected]" | |
git config --global user.name "ivy-dev-bot" | |
git add DASHBOARD.md | |
git commit -m "Auto-update integration tests dashboard" | |
git push | |
- name: Update Failing Tests | |
env: | |
GITHUB_TOKEN: ${{ secrets.DEV_BOT_GENERAL_PAT }} | |
run: | | |
python find_all_failing_tests.py | |
git config --global user.email "[email protected]" | |
git config --global user.name "ivy-dev-bot" | |
git add FAILING_TESTS.txt | |
git add TEST_LOGS.txt | |
git commit -m "Auto-update failing tests" | |
git push |