Debian packages on GHA (#20033)
* Refactored Linix GHA pipeline * Move ONNX tests to Unit * Install tests together with openvino * Added checks for GNA usage in docs python snippets * Install openssl for working pip * Disabled onnx_dyn_shapes_expand_1_dyn_shape ONNX test * exclude dyn shapes from onnx * Migrated samples tests * Fixed ONNX tests * caches for PT tests dependencies * Build Contrib separately from main OpenVINO * More fixes * Added python install for samples stage * Installed manifests for ONNX FE tests * Try to avoid libgl1 dependency in tests * Clean-up * Fixed issue with manifests in ONNX tests * Try to build debian packages in GHA * Fixed debian packages build for multi-config generators
This commit is contained in:
1 parent
d6d6888d7a
commit
5616c26d19
6 files changed
+122
-38
No files matched your search
+86
-19
@@ -24,7 +24,7 @@ on:
|
||||
- master
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.ref || github.run_id }}-linux
|
||||
group: ${{ github.head_ref || github.run_id }}-linux
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
@@ -96,7 +96,6 @@ jobs:
|
||||
run: |
|
||||
# For Python API: build and wheel packaging
|
||||
python3 -m pip install -r ${OPENVINO_REPO}/src/bindings/python/wheel/requirements-dev.txt
|
||||
python3 -m pip install -r ${OPENVINO_REPO}/src/bindings/python/requirements.txt
|
||||
python3 -m pip install -r ${OPENVINO_REPO}/src/bindings/python/src/compatibility/openvino/requirements-dev.txt
|
||||
|
||||
# For running ONNX frontend unit tests
|
||||
@@ -130,14 +129,12 @@ jobs:
|
||||
-DENABLE_SYSTEM_TBB=ON \
|
||||
-DENABLE_SYSTEM_OPENCL=ON \
|
||||
-DENABLE_SYSTEM_PUGIXML=ON \
|
||||
-DBUILD_nvidia_plugin=OFF \
|
||||
-DCUSTOM_OPERATIONS="calculate_grid;complex_mul;fft;grid_sample;sparse_conv;sparse_conv_transpose" \
|
||||
-DOPENVINO_EXTRA_MODULES=${OPENVINO_CONTRIB_REPO}/modules \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=ON \
|
||||
-DCMAKE_BUILD_TYPE=${{ env.CMAKE_BUILD_TYPE }} \
|
||||
-DCPACK_GENERATOR=TGZ \
|
||||
-DCMAKE_COMPILE_WARNING_AS_ERROR=ON \
|
||||
-DCMAKE_CXX_COMPILER_LAUNCHER=${{ env.CMAKE_CXX_COMPILER_LAUNCHER }} \
|
||||
-DCMAKE_C_COMPILER_LAUNCHER=${{ env.CMAKE_C_COMPILER_LAUNCHER }} \
|
||||
-DCMAKE_MINIMUM_REQUIRED_VERSION=3.20 \
|
||||
-S ${OPENVINO_REPO} \
|
||||
-B ${BUILD_DIR}
|
||||
|
||||
@@ -147,19 +144,6 @@ jobs:
|
||||
- name: Cmake build - OpenVINO
|
||||
run: cmake --build ${BUILD_DIR} --parallel --config ${{ env.CMAKE_BUILD_TYPE }}
|
||||
|
||||
- name: Cmake & Build - OpenVINO Contrib
|
||||
if: ${{ 'false' }}
|
||||
run: |
|
||||
cmake \
|
||||
-G "${{ env.CMAKE_GENERATOR }}" \
|
||||
-DBUILD_nvidia_plugin=OFF \
|
||||
-DCUSTOM_OPERATIONS="calculate_grid;complex_mul;fft;grid_sample;sparse_conv;sparse_conv_transpose" \
|
||||
-DOpenVINODeveloperPackage_DIR=${BUILD_DIR} \
|
||||
-S ${OPENVINO_CONTRIB_REPO}/modules \
|
||||
-B ${OPENVINO_CONTRIB_BUILD_DIR}
|
||||
|
||||
cmake --build ${OPENVINO_CONTRIB_BUILD_DIR} --parallel --config ${{ env.CMAKE_BUILD_TYPE }}
|
||||
|
||||
- name: Show ccache stats
|
||||
run: ccache --show-stats
|
||||
|
||||
@@ -179,6 +163,30 @@ jobs:
|
||||
tar -czvf ${BUILD_DIR}/openvino_tests.tar.gz *
|
||||
popd
|
||||
|
||||
- name: Build Debian packages
|
||||
run: |
|
||||
/usr/bin/python3.8 -m pip install -U pip
|
||||
/usr/bin/python3.8 -m pip install -r ${OPENVINO_REPO}/src/bindings/python/wheel/requirements-dev.txt
|
||||
/usr/bin/python3.8 -m pip install -r ${OPENVINO_REPO}/src/bindings/python/src/compatibility/openvino/requirements-dev.txt
|
||||
cmake -UPYTHON* \
|
||||
-DCPACK_GENERATOR=DEB \
|
||||
-DENABLE_PYTHON_PACKAGING=ON \
|
||||
-DPYTHON_EXECUTABLE=/usr/bin/python3.8 \
|
||||
-DENABLE_TESTS=OFF \
|
||||
-S ${OPENVINO_REPO} \
|
||||
-B ${BUILD_DIR}
|
||||
cmake --build ${BUILD_DIR} --parallel --config ${{ env.CMAKE_BUILD_TYPE }} --target package
|
||||
|
||||
- name: Cmake & Build - OpenVINO Contrib
|
||||
run: |
|
||||
cmake \
|
||||
-DBUILD_nvidia_plugin=OFF \
|
||||
-DCUSTOM_OPERATIONS="calculate_grid;complex_mul;fft;grid_sample;sparse_conv;sparse_conv_transpose" \
|
||||
-DOPENVINO_EXTRA_MODULES=${OPENVINO_CONTRIB_REPO}/modules \
|
||||
-S ${OPENVINO_REPO} \
|
||||
-B ${BUILD_DIR}
|
||||
cmake --build ${BUILD_DIR} --parallel --config ${{ env.CMAKE_BUILD_TYPE }}
|
||||
|
||||
#
|
||||
# Upload build artifacts
|
||||
#
|
||||
@@ -191,6 +199,14 @@ jobs:
|
||||
path: ${{ env.BUILD_DIR }}/openvino_package.tar.gz
|
||||
if-no-files-found: 'error'
|
||||
|
||||
- name: Upload openvino debian packages
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: openvino_debian_packages
|
||||
path: ${{ env.BUILD_DIR }}/*.deb
|
||||
if-no-files-found: 'error'
|
||||
|
||||
- name: Upload openvino tests package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@v3
|
||||
@@ -199,6 +215,57 @@ jobs:
|
||||
path: ${{ env.BUILD_DIR }}/openvino_tests.tar.gz
|
||||
if-no-files-found: 'error'
|
||||
|
||||
Debian_Packages:
|
||||
needs: Build
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: ubuntu-20.04
|
||||
container:
|
||||
image: ubuntu:20.04
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
DEBIAN_PACKAGES_DIR: /__w/openvino/packages/
|
||||
|
||||
steps:
|
||||
- name: Create Directories
|
||||
run: mkdir -p ${DEBIAN_PACKAGES_DIR}
|
||||
|
||||
- name: Download OpenVINO debian packages
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: openvino_debian_packages
|
||||
path: ${{ env.DEBIAN_PACKAGES_DIR }}
|
||||
|
||||
- name: Install debian packages & check conflicts
|
||||
run: |
|
||||
apt-get update -y
|
||||
# Install debian packages from previous release
|
||||
apt-get install --no-install-recommends -y gnupg wget ca-certificates
|
||||
wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
|
||||
apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
|
||||
echo "deb https://apt.repos.intel.com/openvino/2023 ubuntu20 main" | tee /etc/apt/sources.list.d/intel-openvino-2023.list
|
||||
apt-get update -y
|
||||
apt-get install -y openvino
|
||||
# install our local one and make sure the conflicts are resolved
|
||||
apt-get install --no-install-recommends -y dpkg-dev
|
||||
dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz
|
||||
echo "deb [trusted=yes] file:${DEBIAN_PACKAGES_DIR} ./" | tee /etc/apt/sources.list.d/openvino-local.list
|
||||
apt-get update -y
|
||||
apt-get install openvino -y
|
||||
working-directory: ${{ env.DEBIAN_PACKAGES_DIR }}
|
||||
|
||||
- name: Test debian packages
|
||||
run: |
|
||||
/usr/share/openvino/samples/cpp/build_samples.sh
|
||||
/usr/share/openvino/samples/c/build_samples.sh
|
||||
~/openvino_cpp_samples_build/intel64/Release/hello_query_device
|
||||
python3 /usr/share/openvino/samples/python/hello_query_device/hello_query_device.py
|
||||
python3 -c 'from openvino import Core; print(Core().available_devices)'
|
||||
python3 -c 'from openvino.frontend import FrontEndManager; assert len(FrontEndManager().get_available_front_ends()) == 6'
|
||||
benchmark_app --help
|
||||
ovc --help
|
||||
|
||||
Samples:
|
||||
needs: Build
|
||||
defaults:
|
||||
|
||||
Reference in new issue
Block a user