Skip to content

Commit 64fe5ae

Browse files
committed
Merge branch 'master' into clamp
2 parents 1f3cd69 + fe9072d commit 64fe5ae

File tree

1,853 files changed

+75103
-33501
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,853 files changed

+75103
-33501
lines changed

.github/actions/common/artifact_utils.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,10 @@ def add_common_args(parser: argparse.ArgumentParser):
1818
default=os.getenv('ARTIFACTS_SHARE'))
1919
group = parser.add_mutually_exclusive_group(required=True)
2020
group.add_argument('-d', '--storage_dir', help='Subdirectory name for artifacts, same as product type',
21-
choices=[platform_key.value for platform_key in ProductType])
22-
group.add_argument('-p', '--platform', type=str,
21+
choices=[product_type.value for product_type in ProductType], type=str.lower)
22+
group.add_argument('-p', '--platform', type=str.lower,
2323
help='Platform for which to restore artifacts. Used if storage_dir is not set',
24-
choices=[product_type.value for product_type in PlatformKey])
24+
choices=[platform_key.value for platform_key in PlatformKey])
2525

2626

2727
def get_event_type(event_name: str = os.getenv('GITHUB_EVENT_NAME')) -> str:

.github/actions/common/constants.py

+6-4
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,12 @@ class EventType(Enum):
1414
'public_linux_ubuntu_22_04_x86_64_release',
1515
'public_linux_ubuntu_22_04_dpcpp_x86_64_release',
1616
'public_linux_ubuntu_24_04_x86_64_release',
17-
'public_windows_vs2019_Release',
18-
'public_windows_vs2019_Debug',
19-
'public_windows_vs2022_Release',
20-
'public_windows_vs2022_Debug',
17+
'public_windows_vs2019_release',
18+
'public_windows_vs2019_debug',
19+
'public_windows_vs2022_release',
20+
'public_windows_vs2022_debug',
2121
'public_manylinux2014_x86_64_release',
22+
'public_macos_x86_64_release',
2223
)
2324
ProductType = Enum('ProductType', {t.upper(): t for t in productTypes})
2425

@@ -44,4 +45,5 @@ class EventType(Enum):
4445
PlatformKey.UBUNTU22_X86_64: ProductType.PUBLIC_LINUX_UBUNTU_22_04_X86_64_RELEASE,
4546
PlatformKey.UBUNTU24_X86_64: ProductType.PUBLIC_LINUX_UBUNTU_24_04_X86_64_RELEASE,
4647
PlatformKey.WINDOWS_X86_64: ProductType.PUBLIC_WINDOWS_VS2022_RELEASE,
48+
PlatformKey.MACOS_12_6_X86_64: ProductType.PUBLIC_MACOS_X86_64_RELEASE,
4749
}

.github/actions/store_artifacts/store_artifacts.py

+43-2
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
from __future__ import annotations
55

66
import argparse
7+
import hashlib
78
import logging
89
import os
910
import sys
@@ -62,6 +63,33 @@ def rotate_dir(directory: Path) -> bool:
6263
return True
6364

6465

66+
def generate_sha256sum(file_path: str | Path) -> str:
67+
"""
68+
Generates the SHA-256 checksum for the given file.
69+
70+
:param file_path: Path to the file
71+
:return: SHA-256 checksum as a hexadecimal string
72+
"""
73+
sha256 = hashlib.sha256()
74+
with open(file_path, 'rb') as file:
75+
for chunk in iter(lambda: file.read(4096), b''):
76+
sha256.update(chunk)
77+
return sha256.hexdigest()
78+
79+
80+
def store_checksums(artifact_path: Path) -> None:
81+
"""
82+
Generates SHA-256 checksums for a given artifact and stores them in separate files.
83+
84+
:param artifact_path: Path to either a single artifact file or the directory with files to generate checksums for
85+
"""
86+
files = [path for path in artifact_path.rglob('*') if path.is_file] if artifact_path.is_dir() else [artifact_path]
87+
for file in files:
88+
hashsum_filepath = file.with_suffix('.sha256')
89+
with open(hashsum_filepath, 'w') as hashsum_file:
90+
hashsum_file.write(generate_sha256sum(file))
91+
92+
6593
def main():
6694
action_utils.init_logger()
6795
logger = logging.getLogger(__name__)
@@ -79,6 +107,14 @@ def main():
79107
error_found = False
80108
for artifact in args.artifacts.split():
81109
artifact_path = Path(artifact)
110+
111+
logger.debug(f"Calculating checksum for {artifact_path}")
112+
try:
113+
store_checksums(artifact_path)
114+
except Exception as e:
115+
logger.error(f'Failed to calculate checksum for {artifact}: {e}')
116+
error_found = True
117+
82118
logger.debug(f"Copying {artifact_path} to {storage / artifact_path.name}")
83119
try:
84120
with preserve_stats_context():
@@ -87,6 +123,9 @@ def main():
87123
else:
88124
storage.mkdir(parents=True, exist_ok=True)
89125
shutil.copy2(artifact_path, storage / artifact_path.name)
126+
if artifact_path.with_suffix('.sha256').exists():
127+
shutil.copy2(artifact_path.with_suffix('.sha256'),
128+
storage / artifact_path.with_suffix('.sha256').name)
90129
except Exception as e:
91130
logger.error(f'Failed to copy {artifact}: {e}')
92131
error_found = True
@@ -95,10 +134,12 @@ def main():
95134
if github_server: # If running from GHA context
96135
# TODO: write an exact job link, but it's not trivial to get
97136
workflow_link = f"{github_server}/{os.getenv('GITHUB_REPOSITORY')}/actions/runs/{os.getenv('GITHUB_RUN_ID')}"
98-
with open(storage / 'workflow_link.txt', 'w') as file:
137+
workflow_link_file = storage / 'workflow_link.txt'
138+
with open(workflow_link_file, 'w') as file:
99139
file.write(workflow_link)
140+
store_checksums(workflow_link_file)
100141

101-
if not error_found:
142+
if not error_found and os.getenv('GITHUB_REPOSITORY') == 'openvinotoolkit/openvino':
102143
latest_artifacts_for_branch = artifact_utils.get_latest_artifacts_link(storage_dir, args.storage_root,
103144
args.branch_name, args.event_name)
104145
# Overwrite path to "latest" built artifacts only if a given commit is the head of a given branch

.github/dockerfiles/docker_tag

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
pr-28725
1+
pr-28972

.github/dockerfiles/ov_test/ubuntu_22_04_x64/Dockerfile

+7
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,13 @@ RUN apt-get update && \
3232
libhdf5-dev \
3333
# For TF Models tests
3434
wget \
35+
# libGL for PyTorch Models tests
36+
ffmpeg \
37+
libsm6 \
38+
libxext6 \
39+
libgl1 \
40+
libgl1-mesa-glx \
41+
libglib2.0-0 \
3542
&& \
3643
rm -rf /var/lib/apt/lists/*
3744

.github/workflows/build_doc.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ jobs:
3030
packages: graphviz texlive liblua5.2-0 libclang1-9 libclang-cpp9
3131
version: 3.0
3232

33-
- uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0
33+
- uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4.0
3434
id: cp310
3535
with:
3636
python-version: '3.10'
@@ -64,7 +64,7 @@ jobs:
6464
6565
- name: Cache documentation
6666
id: cache_sphinx_docs
67-
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
67+
uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4.2.2
6868
with:
6969
path: build/docs/_build/.doctrees
7070
key: sphinx-docs-cache

.github/workflows/cleanup_caches.yml

+29-2
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,33 @@ jobs:
3535
echo "Cache info: "
3636
du -h -d2 ${PIP_CACHE_PATH}
3737
38+
Cleanup_HF_Cache:
39+
name: Cleanup HuggingFace cache
40+
runs-on: aks-linux-4-cores-16gb
41+
if: ${{ github.repository_owner == 'openvinotoolkit' }}
42+
container:
43+
image: openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04
44+
volumes:
45+
- /mount:/mount
46+
env:
47+
HF_CACHE_PATH: /mount/caches/huggingface
48+
49+
steps:
50+
- name: Checkout cache action
51+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
52+
timeout-minutes: 15
53+
with:
54+
sparse-checkout: .github/actions/cache
55+
56+
- name: Cleanup HF cache
57+
uses: ./.github/actions/cache/cleanup
58+
with:
59+
cache-size: 1700
60+
max-cache-size: 2000
61+
cache-path: ${{ env.HF_CACHE_PATH }}
62+
recursive: true
63+
key: '.'
64+
3865
Cleanup_ccache_lin:
3966
name: Cleanup Linux ccache
4067
runs-on: aks-linux-2-cores-8gb
@@ -47,7 +74,7 @@ jobs:
4774
CCACHE_PATH: /mount/caches/ccache
4875

4976
steps:
50-
- name: Checkout cach action
77+
- name: Checkout cache action
5178
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
5279
timeout-minutes: 15
5380
with:
@@ -70,7 +97,7 @@ jobs:
7097
CCACHE_PATH: C:\\mount\\caches\\ccache
7198

7299
steps:
73-
- name: Checkout cach action
100+
- name: Checkout cache action
74101
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
75102
timeout-minutes: 15
76103
with:

.github/workflows/code_style.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name: Code Style
2-
on: [pull_request]
2+
on: [pull_request, merge_group]
33

44
concurrency:
55
group: ${{ github.workflow }}-${{ github.ref }}

.github/workflows/coverage.yml

+3-4
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,14 @@ jobs:
2020

2121
steps:
2222
- name: Setup python
23-
uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0
23+
uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4.0
2424
with:
2525
python-version: '3.10.10'
2626
architecture: 'x64'
2727

2828

2929
- name: Setup ccache
30-
uses: hendrikmuhs/ccache-action@53911442209d5c18de8a31615e0923161e435875 # v1.2.16
30+
uses: hendrikmuhs/ccache-action@a1209f81afb8c005c13b4296c32e363431bffea5 # v1.2.17
3131
with:
3232
max-size: 50G
3333

@@ -63,7 +63,6 @@ jobs:
6363
-DCMAKE_VERBOSE_MAKEFILE=ON
6464
-DENABLE_PYTHON=ON
6565
-DENABLE_ONEDNN_FOR_GPU=ON
66-
-DBUILD_SHARED_LIBS=ON
6766
-DENABLE_TESTS=ON
6867
-DENABLE_OV_ONNX_FRONTEND=ON
6968
-DENABLE_FASTER_BUILD=ON
@@ -130,6 +129,6 @@ jobs:
130129
lcov --capture --directory ${{ github.workspace }}/. --output-file coverage.info
131130
genhtml coverage.info --output-directory coverage-report
132131
- name: Collect coverage
133-
uses: codecov/codecov-action@13ce06bfc6bbe3ecf90edbbf1bc32fe5978ca1d3 # v5.3.1
132+
uses: codecov/codecov-action@0565863a31f2c772f9f0395002a31e3f06189574 # v5.4.0
134133
with:
135134
verbose: true

.github/workflows/dev_cpu_linux_snippets_libxsmm.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -179,15 +179,15 @@ jobs:
179179
path: ${{ env.SCCACHE_ERROR_LOG }}
180180
if-no-files-found: 'ignore'
181181

182-
- name: Upload openvino package
182+
- name: Upload OpenVINO package
183183
if: ${{ always() }}
184184
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
185185
with:
186186
name: openvino_package
187187
path: ${{ env.BUILD_DIR }}/openvino_package.tar.gz
188188
if-no-files-found: 'error'
189189

190-
- name: Upload openvino tests package
190+
- name: Upload OpenVINO tests package
191191
if: ${{ always() }}
192192
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
193193
with:

.github/workflows/job_build_linux.yml

+11-12
Original file line numberDiff line numberDiff line change
@@ -190,11 +190,10 @@ jobs:
190190

191191
- name: Cmake install - OpenVINO
192192
run: |
193-
cmake --install . --config ${{ env.CMAKE_BUILD_TYPE }} --prefix ${INSTALL_DIR}
194-
cmake --install . --config ${{ env.CMAKE_BUILD_TYPE }} --prefix ${INSTALL_WHEELS_DIR} --component python_wheels
195-
cmake --install . --config ${{ env.CMAKE_BUILD_TYPE }} --prefix ${INSTALL_TEST_DIR} --component tests
196-
cmake --install . --config ${{ env.CMAKE_BUILD_TYPE }} --prefix ${DEVELOPER_PACKAGE_DIR} --component developer_package
197-
working-directory: ${{ env.BUILD_DIR }}
193+
cmake --install ${BUILD_DIR} --config ${{ env.CMAKE_BUILD_TYPE }} --prefix ${INSTALL_DIR}
194+
cmake --install ${BUILD_DIR} --config ${{ env.CMAKE_BUILD_TYPE }} --prefix ${INSTALL_WHEELS_DIR} --component python_wheels
195+
cmake --install ${BUILD_DIR} --config ${{ env.CMAKE_BUILD_TYPE }} --prefix ${INSTALL_TEST_DIR} --component tests
196+
cmake --install ${BUILD_DIR} --config ${{ env.CMAKE_BUILD_TYPE }} --prefix ${DEVELOPER_PACKAGE_DIR} --component developer_package
198197
199198
- name: Pack openvino_package
200199
run: tar -cvf - * | pigz > ${BUILD_DIR}/openvino_package.tar.gz
@@ -276,55 +275,55 @@ jobs:
276275
path: ${{ env.SCCACHE_ERROR_LOG }}
277276
if-no-files-found: 'ignore'
278277

279-
- name: Upload openvino package
278+
- name: Upload OpenVINO package
280279
if: ${{ always() }}
281280
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
282281
with:
283282
name: openvino_package
284283
path: ${{ env.BUILD_DIR }}/openvino_package.tar.gz
285284
if-no-files-found: 'error'
286285

287-
- name: Upload openvino wheels
286+
- name: Upload OpenVINO wheels
288287
if: ${{ inputs.os != 'debian_10' && inputs.arch != 'arm' }}
289288
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
290289
with:
291290
name: openvino_wheels
292291
path: ${{ env.INSTALL_WHEELS_DIR }}/wheels/*.whl
293292
if-no-files-found: 'error'
294293

295-
- name: Upload openvino js package
294+
- name: Upload OpenVINO js package
296295
if: ${{ fromJSON(inputs.affected-components).JS_API && inputs.build-js }}
297296
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
298297
with:
299298
name: openvino_js_package
300299
path: ${{ env.BUILD_DIR }}/openvino_js_package.tar.gz
301300
if-no-files-found: 'error'
302301

303-
- name: Upload openvino developer package
302+
- name: Upload OpenVINO developer package
304303
if: ${{ always() }}
305304
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
306305
with:
307306
name: openvino_developer_package
308307
path: ${{ env.BUILD_DIR }}/openvino_developer_package.tar.gz
309308
if-no-files-found: 'error'
310309

311-
- name: Upload openvino RPM packages
310+
- name: Upload OpenVINO RPM packages
312311
if: ${{ inputs.build-rpm-packages }}
313312
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
314313
with:
315314
name: openvino_rpm_packages
316315
path: ${{ env.BUILD_DIR }}/*.rpm
317316
if-no-files-found: 'error'
318317

319-
- name: Upload openvino debian packages
318+
- name: Upload OpenVINO debian packages
320319
if: ${{ inputs.build-debian-packages }}
321320
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
322321
with:
323322
name: openvino_debian_packages
324323
path: ${{ env.BUILD_DIR }}/*.deb
325324
if-no-files-found: 'error'
326325

327-
- name: Upload openvino tests package
326+
- name: Upload OpenVINO tests package
328327
if: ${{ always() }}
329328
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
330329
with:

0 commit comments

Comments
 (0)