Bump js-yaml from 3.14.1 to 3.14.2 in /.github/actions/find_wheel #2963
This file contains hidden or 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: macOS (13, Python 3.11) | |
| on: | |
| workflow_dispatch: | |
| pull_request: | |
| merge_group: | |
| push: | |
| branches: | |
| - master | |
| - 'releases/**' | |
| concurrency: | |
| # github.ref is not unique in post-commit | |
| group: ${{ github.event_name == 'push' && github.run_id || github.ref }}-mac | |
| cancel-in-progress: true | |
| env: | |
| PYTHON_VERSION: '3.11' | |
| MACOSX_DEPLOYMENT_TARGET: '11.0' | |
| TARGET_BRANCH: ${{ github.base_ref || github.event.merge_group.base_ref || github.ref }} | |
| CMAKE_CXX_COMPILER_LAUNCHER: ccache | |
| CMAKE_C_COMPILER_LAUNCHER: ccache | |
| CCACHE_MAXSIZE: 100Mi | |
| BASE_PRODUCT_TYPE: public_darwin | |
| permissions: read-all | |
| jobs: | |
| openvino_download: | |
| name: Download prebuilt OpenVINO | |
| outputs: | |
| status: ${{ steps.openvino_download.outcome }} | |
| ov_wheel_source: ${{ steps.openvino_download.outputs.ov_wheel_source }} | |
| ov_version: ${{ steps.openvino_download.outputs.ov_version }} | |
| timeout-minutes: 10 | |
| defaults: | |
| run: | |
| shell: bash | |
| runs-on: aks-linux-medium | |
| container: | |
| image: 'openvinogithubactions.azurecr.io/openvino_provider:0.1.0' | |
| volumes: | |
| - /mount:/mount | |
| - ${{ github.workspace }}:${{ github.workspace }} | |
| steps: | |
| - uses: openvinotoolkit/openvino/.github/actions/openvino_provider@master | |
| id: openvino_download | |
| with: | |
| platform: 'macos_12_6' | |
| commit_packages_to_provide: 'wheels,developer_package.tar.gz' | |
| revision: latest_available_commit | |
| openvino_tokenizers_cpack: | |
| name: OpenVINO tokenizers cpack (BUILD_TYPE=${{ matrix.build_type }}) | |
| strategy: | |
| matrix: | |
| build_type: [Release] # TODO: Add Debug build when OV provider is ready or use OV package | |
| needs: [ openvino_download ] | |
| timeout-minutes: 45 | |
| defaults: | |
| run: | |
| shell: bash | |
| runs-on: macos-13 | |
| env: | |
| CMAKE_GENERATOR: 'Ninja' | |
| OPENVINO_REPO: ${{ github.workspace }}/openvino | |
| INSTALL_DIR: ${{ github.workspace }}/openvino/install | |
| OV_TOKENIZERS_INSTALL_DIR: ${{ github.workspace }}/openvino_tokenizers/install | |
| OPENVINO_TOKENIZERS_REPO: ${{ github.workspace }}/openvino_tokenizers | |
| BUILD_DIR: ${{ github.workspace }}/openvino_tokenizers/build | |
| CCACHE_DIR: ${{ github.workspace }}/ccache | |
| MANIFEST_PATH: ${{ github.workspace }}/manifest.yml | |
| steps: | |
| - name: Clone Openvino tokenizers | |
| uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 | |
| with: | |
| path: ${{ env.OPENVINO_TOKENIZERS_REPO }} | |
| - name: Generate product manifest | |
| id: create_manifest | |
| uses: openvinotoolkit/openvino/.github/actions/create_manifest@master | |
| with: | |
| repos: ${{ env.OPENVINO_TOKENIZERS_REPO }} | |
| product_type: ${{ env.BASE_PRODUCT_TYPE }}_${{ matrix.build_type }} | |
| target_arch: 'x86_64' | |
| build_type: ${{ matrix.build_type }} | |
| save_to: ${{ env.MANIFEST_PATH }} | |
| - name: Download OpenVINO package | |
| uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0 | |
| with: | |
| name: ${{ needs.openvino_download.outputs.ov_artifact_name }} | |
| path: ${{ env.INSTALL_DIR }} | |
| merge-multiple: true | |
| # | |
| # Build | |
| # | |
| - name: Install build dependencies | |
| run: brew install coreutils ccache | |
| - name: Setup ccache | |
| id: ccache-restore | |
| uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0 | |
| with: | |
| key: ${{ runner.os }}-${{ runner.arch }}-ccache-${{ env.TARGET_BRANCH }}-cpack-${{ github.sha }} | |
| restore-keys: | | |
| ${{ runner.os }}-${{ runner.arch }}-ccache-${{ env.TARGET_BRANCH }}-cpack | |
| path: ${{ env.CCACHE_DIR }} | |
| - name: Clean ccache stats | |
| run: ccache --zero-stats --show-config | |
| - name: CMake configure - tokenizers | |
| run: | | |
| source ${INSTALL_DIR}/setupvars.sh | |
| cmake -DOpenVINODeveloperPackage_DIR=${{ env.INSTALL_DIR }}/developer_package/cmake \ | |
| -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \ | |
| -S ${{ env.OPENVINO_TOKENIZERS_REPO }} \ | |
| -B ${{ env.BUILD_DIR }} | |
| - name: Cmake build - tokenizers | |
| run: cmake --build ${{ env.BUILD_DIR }} --parallel --config ${{ matrix.build_type }} --verbose | |
| - name: Show ccache stats | |
| run: ccache --show-stats | |
| - name: Cmake install - tokenizers | |
| run: cmake --install ${{ env.BUILD_DIR }} --config=${{ matrix.build_type }} --prefix=${{ env.OV_TOKENIZERS_INSTALL_DIR }}/ov_tokenizers | |
| - name: Pack Artifacts | |
| run: tar -czvf ${{ env.BUILD_DIR }}/ov_tokenizers.tar.gz * | |
| working-directory: ${{ env.OV_TOKENIZERS_INSTALL_DIR }} | |
| # | |
| # Upload build artifacts | |
| # | |
| - name: Save ccache | |
| if: always() && steps.ccache-restore.outputs.cache-hit != 'true' | |
| uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0 | |
| with: | |
| key: ${{ steps.ccache-restore.outputs.cache-primary-key }} | |
| path: ${{ env.CCACHE_DIR }} | |
| - name: Upload openvino tokenizers package | |
| if: always() | |
| uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0 | |
| with: | |
| name: openvino_tokenizers_cpack_${{ matrix.build_type }} | |
| path: ${{ env.BUILD_DIR }}/*.tar.gz | |
| if-no-files-found: 'error' | |
| - name: Upload manifest | |
| if: always() | |
| uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0 | |
| with: | |
| name: manifest_${{ matrix.build_type }} | |
| path: ${{ env.MANIFEST_PATH }} | |
| if-no-files-found: 'error' | |
| openvino_tokenizers_wheel: | |
| name: OpenVINO tokenizers extension | |
| needs: [ openvino_download ] | |
| timeout-minutes: 25 | |
| defaults: | |
| run: | |
| shell: bash | |
| runs-on: macos-13 | |
| env: | |
| OPENVINO_REPO: ${{ github.workspace }}/openvino | |
| INSTALL_DIR: ${{ github.workspace }}/openvino/install | |
| OPENVINO_TOKENIZERS_REPO: ${{ github.workspace }}/openvino_tokenizers | |
| BUILD_DIR: ${{ github.workspace }}/openvino_tokenizers/build | |
| CCACHE_DIR: ${{ github.workspace }}/ccache | |
| MANIFEST_PATH: ${{ github.workspace }}/manifest.yml | |
| steps: | |
| - name: Clone Openvino tokenizers | |
| uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 | |
| with: | |
| path: ${{ env.OPENVINO_TOKENIZERS_REPO }} | |
| - name: Clone Openvino | |
| uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 | |
| with: | |
| repository: 'openvinotoolkit/openvino' | |
| path: ${{ env.OPENVINO_REPO }} | |
| ref: ${{ env.TARGET_BRANCH }} | |
| sparse-checkout: | | |
| install_build_dependencies.sh | |
| - name: Setup Python ${{ env.PYTHON_VERSION }} | |
| uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0 | |
| with: | |
| python-version: ${{ env.PYTHON_VERSION }} | |
| cache: 'pip' | |
| - name: Set CI environment | |
| id: create_manifest | |
| uses: openvinotoolkit/openvino/.github/actions/create_manifest@master | |
| with: | |
| repos: ${{ env.OPENVINO_TOKENIZERS_REPO }} | |
| product_type: ${{ env.BASE_PRODUCT_TYPE }}_release | |
| target_arch: 'x86_64' | |
| build_type: Release | |
| save_to: ${{ env.MANIFEST_PATH }} | |
| - name: Download OpenVINO package | |
| uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0 | |
| with: | |
| name: ${{ needs.openvino_download.outputs.ov_artifact_name }} | |
| path: ${{ env.INSTALL_DIR }} | |
| merge-multiple: true | |
| # | |
| # Dependencies | |
| # | |
| - name: Install build dependencies | |
| run: brew install coreutils ccache | |
| - name: Setup ccache | |
| id: ccache-restore | |
| uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0 | |
| with: | |
| key: ${{ runner.os }}-${{ runner.arch }}-ccache-${{ env.TARGET_BRANCH }}-wheel-${{ github.sha }} | |
| restore-keys: | | |
| ${{ runner.os }}-${{ runner.arch }}-ccache-${{ env.TARGET_BRANCH }}-wheel | |
| path: ${{ env.CCACHE_DIR }} | |
| # | |
| # Build | |
| # | |
| - name: Clean ccache stats | |
| run: ccache --zero-stats --show-config | |
| - name: Build tokenizers wheel | |
| run: | | |
| python3 -m pip wheel -v \ | |
| --no-deps --wheel-dir ${BUILD_DIR} \ | |
| --config-settings='override=wheel.build_tag="${{ github.run_number }}"' \ | |
| --config-settings=override=cross.arch="macosx_10_12_x86_64" \ | |
| ${{ needs.openvino_download.outputs.ov_wheel_source }} \ | |
| ${OPENVINO_TOKENIZERS_REPO} | |
| working-directory: ${{ env.INSTALL_DIR }} | |
| env: | |
| OpenVINODeveloperPackage_DIR: ${{ env.INSTALL_DIR }}/developer_package/cmake | |
| - name: Show ccache stats | |
| run: ccache --show-stats | |
| # | |
| # Upload build artifacts | |
| # | |
| - name: Save ccache | |
| if: always() && steps.ccache-restore.outputs.cache-hit != 'true' && github.event_name == 'push' | |
| uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0 | |
| with: | |
| key: ${{ steps.ccache-restore.outputs.cache-primary-key }} | |
| path: ${{ env.CCACHE_DIR }} | |
| - name: Upload openvino tokenizers wheel | |
| if: ${{ always() }} | |
| uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0 | |
| with: | |
| name: openvino_tokenizers_wheel | |
| path: ${{ env.BUILD_DIR }}/*.whl | |
| if-no-files-found: 'error' | |
| openvino_tokenizers_tests: | |
| name: OpenVINO tokenizers tests | |
| needs: [ openvino_download, openvino_tokenizers_wheel] | |
| timeout-minutes: 50 | |
| defaults: | |
| run: | |
| shell: bash | |
| runs-on: macos-13 | |
| env: | |
| INSTALL_DIR: ${{ github.workspace }}/openvino/install | |
| steps: | |
| - name: Clone Openvino tokenizers sources and tests | |
| uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 | |
| - name: Setup Python ${{ env.PYTHON_VERSION }} | |
| uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0 | |
| with: | |
| python-version: ${{ env.PYTHON_VERSION }} | |
| cache: 'pip' | |
| - name: Download tokenizers package | |
| uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0 | |
| with: | |
| name: openvino_tokenizers_wheel | |
| path: ${{ env.INSTALL_DIR }}/ov_tokenizers | |
| - name: Download OpenVINO package | |
| uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0 | |
| with: | |
| name: ${{ needs.openvino_download.outputs.ov_artifact_name }} | |
| path: ${{ env.INSTALL_DIR }} | |
| merge-multiple: true | |
| - name: Configure poetry | |
| uses: ./.github/actions/install_poetry | |
| - name: Find OpenVINO wheel | |
| uses: ./.github/actions/find_wheel | |
| id: ov_wheel | |
| with: | |
| wheels_dir: '${{ env.INSTALL_DIR }}/wheels' | |
| package_name: 'openvino' | |
| - name: Install OpenVINO wheel | |
| run: poetry add ${{ steps.ov_wheel.outputs.wheel_path }} | |
| - name: Find Tokenizers wheel | |
| uses: ./.github/actions/find_wheel | |
| id: tokenizers_wheel | |
| with: | |
| wheels_dir: '${{ env.INSTALL_DIR }}/ov_tokenizers' | |
| package_name: 'openvino_tokenizers' | |
| - name: Install OpenVINO tokenizers wheel | |
| run: poetry run pip install --no-deps ${{ steps.tokenizers_wheel.outputs.wheel_path }} | |
| - name: Install Test dependencies | |
| run: poetry install --extras=transformers --with dev,benchmark | |
| - name: Tokenizers regression tests (using openvino python wheel) | |
| run: poetry run pytest tests/tokenizers_test.py | |
| Overall_Status: | |
| name: ci/gha_overall_status_macos | |
| needs: [openvino_download, openvino_tokenizers_cpack, openvino_tokenizers_wheel, openvino_tokenizers_tests] | |
| if: ${{ always() }} | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Check status of all jobs | |
| if: >- | |
| ${{ | |
| contains(needs.*.result, 'failure') || | |
| contains(needs.*.result, 'cancelled') | |
| }} | |
| run: exit 1 |