-
Notifications
You must be signed in to change notification settings - Fork 185
Enable 'make build' testing in CI + add small fixed to opencv.cmake, rdkafka.cmake and build documentation #518
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
* Fix fedora docker build * more fixes
Introduces a new GitHub Actions workflow to build DL Streamer from sources using 'make build' on Ubuntu 22.04 and 24.04. Integrates this workflow into the main PR workflow for automated source builds and validation.
Replaces manual environment variable exports for OpenVINO and DL Streamer with sourcing setupvars.sh and direct export commands. Moves DL Streamer environment setup to the verification step for improved clarity and reliability.
Replaced hardcoded $HOME/dlstreamer paths with ${{ env.DLS_REL_PATH }} in environment variable exports for GST_PLUGIN_PATH, LD_LIBRARY_PATH, PATH, and PKG_CONFIG_PATH to improve portability and maintainability in the DL Streamer build workflow.
Expanded the verification commands to check for additional DL Streamer plugins (gvawatermark3d, gvapython, gvamotiondetect, gvafpscounter) and removed redundant error messages. Also removed sourcing of the OpenVINO environment.
Changed the GitHub Actions workflow to run on a self-hosted runner instead of using the matrix OS. Also simplified environment variable setup by removing build and dependency-specific paths from GST_PLUGIN_PATH, LD_LIBRARY_PATH, PATH, and PKG_CONFIG_PATH.
Refactored opencv.cmake to use consistent naming, added DOWNLOAD_EXTRACT_TIMESTAMP for reproducibility, and set install command for OpenCV. Updated rdkafka.cmake to include DOWNLOAD_EXTRACT_TIMESTAMP. Modified advanced installation guide to add 'curl' to required packages for improved compatibility.
Eliminated a repeated occurrence of libopencv-dev in the compilation dependencies list to avoid redundancy and potential confusion.
This update adds steps to install and source OpenVINO GenAI in the DL Streamer build workflow. It also improves package installation by including curl and reorders Python dependency installation to be active by default. Minor cleanup and echo statements were added for clarity.
This reverts commit 422976903282784ffbe5c47c6ea7bf8a81912cd5.
Updated CMakeLists.txt to require the OpenCV calib3d module in addition to core and imgproc. This enables usage of calibration and 3D functionality in the elements target.
Updated the workflow to use the OS specified in the matrix for the build job runner instead of 'self-hosted'. This allows for more flexible and dynamic selection of runner environments.
| PREFIX ${CMAKE_BINARY_DIR}/opencv_contrib | ||
| URL https://github.com/opencv/opencv_contrib/archive/${DESIRED_VERSION}.zip | ||
| URL_MD5 2eecff53ebd74f6291108247d365cb61 | ||
| DOWNLOAD_EXTRACT_TIMESTAMP TRUE |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Eliminates warnigns
| ExternalProject_Add( | ||
| opencv-contrib | ||
| PREFIX ${CMAKE_BINARY_DIR}/opencv-contrib | ||
| opencv_contrib |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Only naming convention alignment
| strategy: | ||
| fail-fast: false | ||
| matrix: | ||
| include: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why do we need 2 similar variables? i think we can only use "os"?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One is used for runs-on, the second for printing in logs etc.
Technically, there can be only one.
| ./DLS_install_prerequisites.sh | ||
| - name: Install build dependencies | ||
| run: | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Optional: maybe it's good idea to make a script similar to DLS_install_prerequisites.sh, for example DLS_install_build_dependecies.sh
* Fixes for yamllint,hadolint and license headers. * Add fixed for yamllint * Add fixes for yamllint and trigger hadolint * Remove triggering for hadolint * Add fixes for yamllint
Updated installation commands in CI workflow and documentation to use wget instead of curl for extracting OpenVINO GenAI archives. Also removed unnecessary curl package from apt install steps and added explicit sourcing of OpenVINO environments in the workflow.
Updated the GitHub Actions workflow to use only the 'os' key in the build matrix, removing the redundant 'ubuntu_version'. Adjusted all references accordingly. Also removed 'curl' from the list of build dependencies in the advanced installation guide for both Ubuntu 22.04 and 24.04.
Updated CMakeLists.txt to require the OpenCV calib3d module in addition to core and imgproc. This ensures that features relying on calib3d are properly supported during the build.
* Fix fedora docker build * more fixes
Introduces a new GitHub Actions workflow to build DL Streamer from sources using 'make build' on Ubuntu 22.04 and 24.04. Integrates this workflow into the main PR workflow for automated source builds and validation.
Replaces manual environment variable exports for OpenVINO and DL Streamer with sourcing setupvars.sh and direct export commands. Moves DL Streamer environment setup to the verification step for improved clarity and reliability.
Replaced hardcoded $HOME/dlstreamer paths with ${{ env.DLS_REL_PATH }} in environment variable exports for GST_PLUGIN_PATH, LD_LIBRARY_PATH, PATH, and PKG_CONFIG_PATH to improve portability and maintainability in the DL Streamer build workflow.
Expanded the verification commands to check for additional DL Streamer plugins (gvawatermark3d, gvapython, gvamotiondetect, gvafpscounter) and removed redundant error messages. Also removed sourcing of the OpenVINO environment.
Changed the GitHub Actions workflow to run on a self-hosted runner instead of using the matrix OS. Also simplified environment variable setup by removing build and dependency-specific paths from GST_PLUGIN_PATH, LD_LIBRARY_PATH, PATH, and PKG_CONFIG_PATH.
Refactored opencv.cmake to use consistent naming, added DOWNLOAD_EXTRACT_TIMESTAMP for reproducibility, and set install command for OpenCV. Updated rdkafka.cmake to include DOWNLOAD_EXTRACT_TIMESTAMP. Modified advanced installation guide to add 'curl' to required packages for improved compatibility.
Eliminated a repeated occurrence of libopencv-dev in the compilation dependencies list to avoid redundancy and potential confusion.
This update adds steps to install and source OpenVINO GenAI in the DL Streamer build workflow. It also improves package installation by including curl and reorders Python dependency installation to be active by default. Minor cleanup and echo statements were added for clarity.
This reverts commit 422976903282784ffbe5c47c6ea7bf8a81912cd5.
Updated CMakeLists.txt to require the OpenCV calib3d module in addition to core and imgproc. This enables usage of calibration and 3D functionality in the elements target.
Updated the workflow to use the OS specified in the matrix for the build job runner instead of 'self-hosted'. This allows for more flexible and dynamic selection of runner environments.
The workflow now installs OpenVINO GenAI differently for Ubuntu 22.04 and 24.04, using the appropriate package and setup steps for each version. This improves compatibility and ensures correct environment setup based on the build matrix.
Updated installation commands in CI workflow and documentation to use wget instead of curl for extracting OpenVINO GenAI archives. Also removed unnecessary curl package from apt install steps and added explicit sourcing of OpenVINO environments in the workflow.
Updated the GitHub Actions workflow to use only the 'os' key in the build matrix, removing the redundant 'ubuntu_version'. Adjusted all references accordingly. Also removed 'curl' from the list of build dependencies in the advanced installation guide for both Ubuntu 22.04 and 24.04.
Updated CMakeLists.txt to require the OpenCV calib3d module in addition to core and imgproc. This ensures that features relying on calib3d are properly supported during the build.
…n-edge-platform/dlstreamer into dmichalo_AddMakeBuildTesting
Refactored multiple GitHub Actions workflows for improved readability and maintainability, including indentation, grouping, and step ordering. Simplified and updated the yamllint action to remove dependency on a config file, streamline result analysis, and clarify summary output. Minor whitespace and formatting adjustments were made in shellcheck and license-namespace-checker actions. Added .travis.yml and removed .yamllint config file. Updated documentation workflow for clarity and added minor improvements to documentation build summary logic. No functional changes to core build or test logic.
Cleaned up unnecessary trailing whitespace in the shellcheck GitHub Action YAML file to improve code style and maintain consistency.
Description
Please include a summary of the changes and the related issue. List any dependencies that are required for this change.
Fixes # (issue)
Any Newly Introduced Dependencies
Please describe any newly introduced 3rd party dependencies in this change. List their name, license information and how they are used in the project.
How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration
Checklist: