Compare commits
1 Commits
master
...
dependabot
| Author | SHA1 | Date |
|---|---|---|
|
|
e9440df130 |
|
|
@ -1,3 +0,0 @@
|
|||
*
|
||||
!install_build_dependencies.sh
|
||||
!scripts/install_dependencies/install_openvino_dependencies.sh
|
||||
|
|
@ -72,7 +72,7 @@ body:
|
|||
- type: textarea
|
||||
id: build_script
|
||||
attributes:
|
||||
label: Build script or step-by-step to reproduce
|
||||
label: Build scrip or step-by-step to reproduce
|
||||
description: How can we reproduce your issue?
|
||||
placeholder: Please provide detailed instructions on how to reproduce the issue
|
||||
validations:
|
||||
|
|
|
|||
|
|
@ -33258,7 +33258,7 @@ async function save() {
|
|||
|
||||
// remote cache directory may not be created yet
|
||||
if (!(await checkFileExists(cacheRemotePath))) {
|
||||
await fs.mkdir(cacheRemotePath, { recursive: true });
|
||||
await fs.mkdir(cacheRemotePath);
|
||||
}
|
||||
|
||||
core.info('Copying cache...');
|
||||
|
|
|
|||
|
|
@ -33258,7 +33258,7 @@ async function save() {
|
|||
|
||||
// remote cache directory may not be created yet
|
||||
if (!(await checkFileExists(cacheRemotePath))) {
|
||||
await fs.mkdir(cacheRemotePath, { recursive: true });
|
||||
await fs.mkdir(cacheRemotePath);
|
||||
}
|
||||
|
||||
core.info('Copying cache...');
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ async function save() {
|
|||
|
||||
// remote cache directory may not be created yet
|
||||
if (!(await checkFileExists(cacheRemotePath))) {
|
||||
await fs.mkdir(cacheRemotePath, { recursive: true });
|
||||
await fs.mkdir(cacheRemotePath);
|
||||
}
|
||||
|
||||
core.info('Copying cache...');
|
||||
|
|
|
|||
|
|
@ -1,72 +0,0 @@
|
|||
name: 'Handle Docker images'
|
||||
description: 'Builds, tags and pushes a given Docker image when needed'
|
||||
inputs:
|
||||
images:
|
||||
description: 'Image names (registry name + namespace + base name)'
|
||||
required: true
|
||||
registry:
|
||||
description: 'Docker registry'
|
||||
required: true
|
||||
dockerfiles_root_dir:
|
||||
description: 'Path to dockerfiles root dir relative to repository root'
|
||||
required: true
|
||||
push:
|
||||
description: 'Push built images to registry'
|
||||
required: false
|
||||
default: 'true'
|
||||
changed_components:
|
||||
description: 'Components changed by a pull request'
|
||||
required: true
|
||||
|
||||
outputs:
|
||||
images:
|
||||
description: "Images to use in workflow"
|
||||
value: ${{ steps.handle_images.outputs.images }}
|
||||
|
||||
runs:
|
||||
using: 'composite'
|
||||
steps:
|
||||
- name: Checkout head
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Checkout base
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
ref: ${{ github.base_ref || github.event.merge_group.base_ref }}
|
||||
sparse-checkout: ${{ inputs.dockerfiles_root_dir }}/docker_tag
|
||||
path: base
|
||||
|
||||
- name: Install Python dependencies
|
||||
uses: py-actions/py-dependency-install@v4
|
||||
with:
|
||||
path: "${{ github.action_path }}/requirements.txt"
|
||||
update-setuptools: "false"
|
||||
update-wheel: "false"
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
id: buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: Handle docker images
|
||||
id: handle_images
|
||||
shell: bash
|
||||
run: |
|
||||
images=$(echo "${{ inputs.images }}" | tr '\n' ',' | sed 's/,*$//')
|
||||
pr="${{ github.event.pull_request.number }}"
|
||||
|
||||
python3 .github/actions/handle_docker/get_images_to_build.py \
|
||||
-d "${{ inputs.dockerfiles_root_dir }}" \
|
||||
-r "${{ inputs.registry }}" \
|
||||
--images "$images" \
|
||||
--head_tag_file "${{ inputs.dockerfiles_root_dir }}/docker_tag" \
|
||||
--base_tag_file "base/${{ inputs.dockerfiles_root_dir }}/docker_tag" \
|
||||
--docker_env_changed "${{ fromJSON(inputs.changed_components).docker_env }}" \
|
||||
--dockerfiles_changed "${{ fromJSON(inputs.changed_components).dockerfiles }}" \
|
||||
--docker_builder "${{ steps.buildx.outputs.name}}" \
|
||||
--repo "${{ github.repository }}" \
|
||||
--ref_name "${{ github.ref_name }}" \
|
||||
$([[ -n $pr ]] && echo "--pr $pr" || echo '-s ${{ github.sha }}') \
|
||||
$([[ -n "${{ inputs.push }}" ]] && echo "--push" || echo '')
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ github.token }}
|
||||
|
||||
|
|
@ -1,129 +0,0 @@
|
|||
# Copyright (C) 2024 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import argparse
|
||||
import json
|
||||
import re
|
||||
import sys
|
||||
|
||||
from distutils.util import strtobool
|
||||
from helpers import *
|
||||
from images_api import *
|
||||
|
||||
|
||||
def parse_args():
|
||||
parser = argparse.ArgumentParser(description='Returns list of Docker images to build for a given workflow')
|
||||
parser.add_argument('-i', '--images', required=True, help='Comma-separated docker images')
|
||||
parser.add_argument('-d', '--dockerfiles_root', required=True, help='Path to dockerfiles')
|
||||
parser.add_argument('-r', '--registry', required=True, help='Docker registry name')
|
||||
parser.add_argument('-s', '--commit', required=False, help='Commit SHA. If not set, --pr is used')
|
||||
parser.add_argument('-b', '--docker_builder', required=False, help='Docker buildx builder name')
|
||||
parser.add_argument('--pr', type=int, required=False, help='PR number, if event is pull_request')
|
||||
parser.add_argument('--head_tag_file', default='.github/dockerfiles/docker_tag', help='Head docker tag file path')
|
||||
parser.add_argument('--base_tag_file', default=None, required=False, help='Base docker tag file path')
|
||||
parser.add_argument('--ref_name', required=False, default='', help='GitHub ref name')
|
||||
parser.add_argument('--repo', default='openvinotoolkit/openvino', help='GitHub repository')
|
||||
parser.add_argument('--docker_env_changed', type=lambda x: bool(strtobool(x)), default=True,
|
||||
help='Whether PR changes docker env')
|
||||
parser.add_argument('--dockerfiles_changed', type=lambda x: bool(strtobool(x)), default=True,
|
||||
help='Whether PR changes dockerfiles')
|
||||
parser.add_argument('--action_path', default='.github/actions/handle_docker', help='Path to this GitHub action')
|
||||
parser.add_argument('--push', action='store_true', required=False, help='Whether to push images to registry')
|
||||
parser.add_argument('--dry_run', action='store_true', required=False, help='Dry run')
|
||||
args = parser.parse_args()
|
||||
return args
|
||||
|
||||
|
||||
def main():
|
||||
init_logger()
|
||||
logger = logging.getLogger(__name__)
|
||||
args = parse_args()
|
||||
for arg, value in sorted(vars(args).items()):
|
||||
logger.info(f"Argument {arg}: {value}")
|
||||
|
||||
head_tag = Path(args.head_tag_file).read_text().strip()
|
||||
|
||||
base_tag_exists = args.base_tag_file and Path(args.base_tag_file).exists()
|
||||
base_tag = Path(args.base_tag_file).read_text().strip() if base_tag_exists else None
|
||||
|
||||
all_dockerfiles = Path(args.dockerfiles_root).rglob('**/*/Dockerfile')
|
||||
|
||||
images = ImagesHandler(args.dry_run)
|
||||
for image in all_dockerfiles:
|
||||
images.add_from_dockerfile(image, args.dockerfiles_root, args.registry, head_tag, base_tag)
|
||||
|
||||
requested_images = set(args.images.split(','))
|
||||
skip_workflow = False
|
||||
missing_only = False
|
||||
|
||||
merge_queue_target_branch = next(iter(re.findall(f'^gh-readonly-queue/(.*)/', args.ref_name)), None)
|
||||
|
||||
if args.pr:
|
||||
environment_affected = args.docker_env_changed or args.dockerfiles_changed
|
||||
if environment_affected:
|
||||
expected_tag = f'pr-{args.pr}'
|
||||
|
||||
if head_tag != expected_tag:
|
||||
logger.error(f"Please update docker tag in {args.head_tag_file} to {expected_tag}")
|
||||
sys.exit(1)
|
||||
|
||||
elif merge_queue_target_branch:
|
||||
environment_affected = head_tag != base_tag
|
||||
if environment_affected:
|
||||
logger.info(f"Environment is affected by PR(s) in merge group")
|
||||
else:
|
||||
environment_affected = False
|
||||
|
||||
if environment_affected:
|
||||
changeset = get_changeset(args.repo, args.pr, merge_queue_target_branch, args.commit)
|
||||
changed_dockerfiles = [p for p in changeset if p.startswith(args.dockerfiles_root) and p.endswith('Dockerfile')]
|
||||
|
||||
if args.docker_env_changed:
|
||||
logger.info(f"Common docker environment is modified, will build all requested images")
|
||||
changed_images = requested_images
|
||||
else:
|
||||
logger.info(f"Common docker environment is not modified, will build only changed and missing images")
|
||||
changed_images = set([name_from_dockerfile(d, args.dockerfiles_root) for d in changed_dockerfiles])
|
||||
|
||||
unchanged_images = requested_images - changed_images
|
||||
unchanged_with_no_base = images.get_missing(unchanged_images, base=True)
|
||||
|
||||
if unchanged_with_no_base:
|
||||
logger.info("The following images were unchanged, but will be built anyway since the base for them "
|
||||
f"is missing in registry: {unchanged_with_no_base}")
|
||||
|
||||
images_to_tag = unchanged_images.difference(unchanged_with_no_base)
|
||||
images_to_build = requested_images.intersection(changed_images).union(unchanged_with_no_base)
|
||||
|
||||
only_dockerfiles_changed = len(changeset) == len(changed_dockerfiles)
|
||||
if only_dockerfiles_changed and not images_to_build:
|
||||
skip_workflow = True
|
||||
else:
|
||||
logger.info(f"Environment is not affected, will build only missing images, if any")
|
||||
images_to_build = requested_images
|
||||
images_to_tag = []
|
||||
missing_only = True
|
||||
|
||||
if not images_to_build:
|
||||
logger.info(f"No images to build, will return the list of pre-built images with a new tag")
|
||||
|
||||
built_images = images.build(images_to_build, missing_only, args.push, args.docker_builder)
|
||||
if not built_images:
|
||||
logger.info(f"No images were built, a new tag will be applied to a pre-built base image if needed")
|
||||
|
||||
# When a custom builder is used, it allows to push the image automatically once built. Otherwise, pushing manually
|
||||
if args.push and not args.docker_builder:
|
||||
images.push(images_to_build, missing_only)
|
||||
|
||||
if environment_affected and base_tag:
|
||||
images.tag(images_to_tag)
|
||||
|
||||
images_output = images_to_output(images.get(requested_images))
|
||||
set_github_output("images", json.dumps(images_output))
|
||||
|
||||
if skip_workflow:
|
||||
logger.info(f"Docker image changes are irrelevant for current workflow, workflow may be skipped")
|
||||
set_github_output("skip_workflow", str(skip_workflow))
|
||||
|
||||
|
||||
main()
|
||||
|
|
@ -1,75 +0,0 @@
|
|||
# Copyright (C) 2024 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import logging
|
||||
import os
|
||||
import subprocess
|
||||
from ghapi.all import GhApi
|
||||
from pathlib import Path
|
||||
|
||||
|
||||
def init_logger():
|
||||
logging.basicConfig(level=logging.INFO,
|
||||
format='%(asctime)s %(name)-15s %(levelname)-8s %(message)s',
|
||||
datefmt='%m-%d-%Y %H:%M:%S')
|
||||
|
||||
|
||||
def set_github_output(name: str, value: str, github_output_var_name: str = 'GITHUB_OUTPUT'):
|
||||
"""Sets output variable for a GitHub Action"""
|
||||
logger = logging.getLogger(__name__)
|
||||
# In an environment variable "GITHUB_OUTPUT" GHA stores path to a file to write outputs to
|
||||
with open(os.environ.get(github_output_var_name), 'a+') as file:
|
||||
logger.info(f"Add {name}={value} to {github_output_var_name}")
|
||||
print(f'{name}={value}', file=file)
|
||||
|
||||
|
||||
def images_to_output(images: list):
|
||||
images_output = {}
|
||||
for image in images:
|
||||
image_name, os_name = image.name.split('/', 1)
|
||||
if image_name not in images_output:
|
||||
images_output[image_name] = {}
|
||||
|
||||
images_output[image_name][os_name] = image.ref()
|
||||
|
||||
return images_output
|
||||
|
||||
|
||||
def get_changeset(repo: str, pr: str, target_branch: str, commit_sha: str):
|
||||
"""Returns changeset either from PR or commit"""
|
||||
owner, repository = repo.split('/')
|
||||
gh_api = GhApi(owner=owner, repo=repository, token=os.getenv("GITHUB_TOKEN"))
|
||||
if pr:
|
||||
changed_files = gh_api.pulls.list_files(pr)
|
||||
elif target_branch:
|
||||
target_branch_head_commit = gh_api.repos.get_branch(target_branch).commit.sha
|
||||
changed_files = gh_api.repos.compare_commits(f'{target_branch_head_commit}...{commit_sha}').get('files', [])
|
||||
else:
|
||||
raise ValueError(f'Either "pr" or "target_branch" parameter must be non-empty')
|
||||
return set([f.filename for f in changed_files])
|
||||
|
||||
|
||||
def run(cmd: str, dry_run: bool = False, fail_on_error: bool = True):
|
||||
logger = logging.getLogger('run')
|
||||
logger.info(cmd)
|
||||
|
||||
if dry_run:
|
||||
return 0, ''
|
||||
|
||||
with subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, text=True) as proc:
|
||||
for line in proc.stdout:
|
||||
logger.info(line.strip())
|
||||
|
||||
proc.communicate()
|
||||
if proc.returncode != 0:
|
||||
msg = f"Command '{cmd}' returned non-zero exit status {proc.returncode}"
|
||||
if fail_on_error:
|
||||
raise RuntimeError(msg)
|
||||
|
||||
logger.warning(msg)
|
||||
return proc.returncode
|
||||
|
||||
|
||||
def name_from_dockerfile(dockerfile: str | Path, dockerfiles_root: str | Path) -> str:
|
||||
image_name = str(Path(dockerfile).relative_to(dockerfiles_root).parent.as_posix())
|
||||
return image_name
|
||||
|
|
@ -1,137 +0,0 @@
|
|||
# Copyright (C) 2024 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import logging
|
||||
import os
|
||||
import subprocess
|
||||
from pathlib import Path
|
||||
from typing import Iterable
|
||||
|
||||
from helpers import run, name_from_dockerfile
|
||||
|
||||
|
||||
class Image:
|
||||
def __init__(self, name: str, dockerfile: Path, registry: str):
|
||||
self.logger = logging.getLogger(self.__class__.__name__)
|
||||
self.name = name
|
||||
self.dockerfile = dockerfile
|
||||
self.registry = registry
|
||||
self.tag = 'latest'
|
||||
self.base_tag = None
|
||||
|
||||
def __str__(self):
|
||||
return self.name
|
||||
|
||||
def __eq__(self, img):
|
||||
return img.name == self.name if img else False
|
||||
|
||||
def with_tag(self, tag: str):
|
||||
self.tag = tag
|
||||
return self
|
||||
|
||||
def with_base_tag(self, tag: str):
|
||||
self.base_tag = tag
|
||||
return self
|
||||
|
||||
def ref(self):
|
||||
return f"{self.registry}/{self.name}:{self.tag}"
|
||||
|
||||
def base_ref(self):
|
||||
if not self.base_tag:
|
||||
return None
|
||||
return f"{self.registry}/{self.name}:{self.base_tag}"
|
||||
|
||||
def push(self, dry: bool = False):
|
||||
cmd = f"docker push {self.ref()} "
|
||||
run(cmd, dry)
|
||||
|
||||
def build(self, dry: bool = False, push: bool = True, docker_builder: str = None, import_cache: bool = True,
|
||||
export_cache: bool = True):
|
||||
cache_cmd = ""
|
||||
if import_cache:
|
||||
cache_cmd += f"--cache-from type=registry,ref={self.ref()}-cache "
|
||||
if self.base_tag:
|
||||
cache_cmd += f"--cache-from type=registry,ref={self.base_ref()}-cache "
|
||||
|
||||
if export_cache:
|
||||
cache_cmd += f"--cache-to type=registry,ref={self.ref()}-cache,mode=max "
|
||||
|
||||
build_cmd = f"docker buildx build --builder={docker_builder}" if docker_builder else "docker build"
|
||||
push_cmd = f"--push" if push else ""
|
||||
|
||||
cmd = f"{build_cmd} " \
|
||||
f"--file {self.dockerfile} " \
|
||||
f"--tag {self.ref()} " \
|
||||
f"{cache_cmd} " \
|
||||
f"{push_cmd} " \
|
||||
"."
|
||||
|
||||
run(cmd, dry)
|
||||
|
||||
def tag_base(self, dry: bool = False):
|
||||
if not self.base_tag:
|
||||
raise AttributeError("Tag for base image is not specified")
|
||||
|
||||
cmd = f"docker buildx imagetools create -t {self.ref()} {self.base_ref()}"
|
||||
|
||||
run(cmd, dry)
|
||||
|
||||
def is_missing(self, dry: bool = False, base: bool = False) -> bool:
|
||||
image = self.base_ref() if base else self.ref()
|
||||
if base and not image:
|
||||
self.logger.warning(f"Base ref for image {self.ref()} is missing")
|
||||
return True
|
||||
|
||||
cmd = f"docker manifest inspect {image}"
|
||||
is_missing = False
|
||||
|
||||
self.logger.info(cmd)
|
||||
if not dry:
|
||||
try:
|
||||
subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True, text=True)
|
||||
except subprocess.CalledProcessError:
|
||||
self.logger.warning(f"{image} is missing in registry")
|
||||
is_missing = True
|
||||
|
||||
return is_missing
|
||||
|
||||
|
||||
# Making it a class, so it's a little easier to switch to a tree structure for building inherited images if we want
|
||||
class ImagesHandler:
|
||||
def __init__(self, dry_run: bool = False):
|
||||
self.logger = logging.getLogger(self.__class__.__name__)
|
||||
self.images = dict()
|
||||
self.dry_run = dry_run
|
||||
|
||||
def add_from_dockerfile(self, dockerfile: str | Path, dockerfiles_root: str | Path, registry: str, tag: str,
|
||||
base_tag: str = None):
|
||||
image_name = name_from_dockerfile(dockerfile, dockerfiles_root)
|
||||
image = Image(image_name, Path(dockerfile), registry).with_tag(tag).with_base_tag(base_tag)
|
||||
self.add(image)
|
||||
|
||||
def add(self, image: Image):
|
||||
self.images[image.name] = image
|
||||
|
||||
def get(self, image_names: Iterable = None) -> list:
|
||||
images = [self.images[name] for name in image_names] if image_names is not None else self.images.values()
|
||||
return images
|
||||
|
||||
def get_missing(self, image_names: Iterable = None, base: bool = False) -> list:
|
||||
missing_images = [image.name for image in self.get(image_names) if image.is_missing(self.dry_run, base)]
|
||||
return missing_images
|
||||
|
||||
def build(self, image_names: Iterable = None, missing_only: bool = False, push: bool = True, builder: str = None,
|
||||
import_cache: bool = True, export_cache: bool = True):
|
||||
to_build = self.get(self.get_missing(image_names)) if missing_only else self.get(image_names)
|
||||
for image in to_build:
|
||||
image.build(self.dry_run, push, builder, import_cache, export_cache)
|
||||
return to_build
|
||||
|
||||
def push(self, image_names: Iterable = None, missing_only: bool = False):
|
||||
to_push = self.get(self.get_missing(image_names)) if missing_only else self.get(image_names)
|
||||
for image in to_push:
|
||||
image.push(self.dry_run)
|
||||
|
||||
def tag(self, image_names: Iterable = None):
|
||||
for image in self.get(image_names):
|
||||
image.tag_base(self.dry_run)
|
||||
|
|
@ -1 +0,0 @@
|
|||
ghapi~=1.0.5
|
||||
|
|
@ -23,19 +23,7 @@ runs:
|
|||
using: 'composite'
|
||||
steps:
|
||||
|
||||
- name: Check if Python is already installed (Linux)
|
||||
if: ${{ runner.os == 'Linux' }}
|
||||
shell: bash
|
||||
id: check_python
|
||||
run: |
|
||||
PYTHON_INSTALLED=$(python${{ inputs.version }} -V) || true
|
||||
if [[ $PYTHON_INSTALLED ]]; then
|
||||
echo "installed=true" >> $GITHUB_OUTPUT
|
||||
else
|
||||
echo "installed=false" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
|
||||
- if: ${{ runner.os == 'Linux' && inputs.self-hosted-runner == 'true' && steps.check_python.outputs.installed == 'false' }}
|
||||
- if: ${{ runner.os == 'Linux' && inputs.self-hosted-runner == 'true' }}
|
||||
name: Install 'actions/setup-python@v4' dependencies
|
||||
shell: bash
|
||||
run: apt-get update && apt-get install -y ca-certificates software-properties-common gpg-agent tzdata
|
||||
|
|
@ -43,18 +31,18 @@ runs:
|
|||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
TZ: "Europe/London" # to prevent tzdata from waiting user input
|
||||
|
||||
- if: ${{ runner.os == 'Linux' && runner.arch == 'ARM64' && steps.check_python.outputs.installed == 'false' }}
|
||||
- if: ${{ runner.os == 'Linux' && runner.arch == 'ARM64' }}
|
||||
name: Setup sudo and python3
|
||||
shell: bash
|
||||
run: apt-get update && apt-get install -y sudo python3 # Needed for the deadsnakes action
|
||||
|
||||
- if: ${{ runner.os == 'Linux' && runner.arch == 'ARM64' && steps.check_python.outputs.installed == 'false' }}
|
||||
- if: ${{ runner.os == 'Linux' && runner.arch == 'ARM64' }}
|
||||
name: Setup Python ${{ inputs.version }}
|
||||
uses: akashchi/deadsnakes-action@92417281055a5878a0450f240a5b95883eb2d7e2
|
||||
with:
|
||||
python-version: ${{ inputs.version }}
|
||||
|
||||
- if: ${{ runner.os == 'macOS' || runner.os == 'Windows' || (runner.os == 'Linux' && runner.arch != 'ARM64' && steps.check_python.outputs.installed == 'false' ) }}
|
||||
- if: ${{ runner.os == 'macOS' || runner.os == 'Windows' || (runner.os == 'Linux' && runner.arch != 'ARM64') }}
|
||||
name: Setup Python ${{ inputs.version }}
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
|
|
|
|||
|
|
@ -51,9 +51,6 @@ outputs:
|
|||
affected_components:
|
||||
description: "Affected components to run validation for and their validation scope"
|
||||
value: ${{ steps.smart_ci.outputs.affected_components }}
|
||||
changed_components:
|
||||
description: "Actually changed components (for push events everything is marked as changed)"
|
||||
value: ${{ steps.smart_ci.outputs.changed_components }}
|
||||
skip_workflow:
|
||||
description: "Whether the workflow should be run with Smart CI rules applied or skipped completely"
|
||||
value: ${{ steps.smart_ci.outputs.skip_workflow }}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,3 @@
|
|||
# Copyright (C) 2024 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import os
|
||||
import re
|
||||
import argparse
|
||||
|
|
@ -215,8 +212,8 @@ def main():
|
|||
# In post-commits - validate all components regardless of changeset
|
||||
# In pre-commits - validate only changed components with their dependencies
|
||||
all_defined_components = components_config.keys()
|
||||
changed_by_pr = get_changed_component_names(pr, all_possible_components, args.pattern) if pr else None
|
||||
changed_component_names = set(all_defined_components) if run_full_scope else changed_by_pr
|
||||
changed_component_names = set(all_defined_components) if run_full_scope else \
|
||||
get_changed_component_names(pr, all_possible_components, args.pattern)
|
||||
|
||||
logger.info(f"changed_component_names: {changed_component_names}")
|
||||
|
||||
|
|
@ -247,12 +244,6 @@ def main():
|
|||
affected_components_output = {name: {s: True for s in scope} for name, scope in affected_components.items()}
|
||||
set_github_output("affected_components", json.dumps(affected_components_output))
|
||||
|
||||
# Components actually changed by a pull request are marked as True (if event is PR;
|
||||
# otherwise all components considered changed).
|
||||
changed_components_output = {name: True if not pr or name in changed_by_pr else False
|
||||
for name in all_possible_components}
|
||||
set_github_output("changed_components", json.dumps(changed_components_output))
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
|
|
|
|||
|
|
@ -1,6 +1,3 @@
|
|||
# Copyright (C) 2024 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import logging
|
||||
import sys
|
||||
import unittest
|
||||
|
|
|
|||
|
|
@ -54,18 +54,26 @@ NPU:
|
|||
|
||||
HETERO:
|
||||
revalidate:
|
||||
- CPU
|
||||
- GPU
|
||||
- HETERO
|
||||
- AUTO_BATCH
|
||||
- TEMPLATE
|
||||
- C_API
|
||||
- Python_API
|
||||
build:
|
||||
- TEMPLATE
|
||||
- IR_FE
|
||||
|
||||
AUTO_BATCH:
|
||||
revalidate:
|
||||
- CPU
|
||||
- GPU
|
||||
- HETERO
|
||||
- AUTO_BATCH
|
||||
- TEMPLATE
|
||||
- C_API
|
||||
- Python_API
|
||||
build:
|
||||
- TEMPLATE
|
||||
- IR_FE
|
||||
|
||||
TEMPLATE:
|
||||
|
|
@ -74,6 +82,7 @@ TEMPLATE:
|
|||
- GPU
|
||||
- HETERO
|
||||
- AUTO_BATCH
|
||||
- TEMPLATE
|
||||
- AUTO
|
||||
- C_API
|
||||
- Python_API
|
||||
|
|
@ -83,10 +92,11 @@ TEMPLATE:
|
|||
|
||||
AUTO:
|
||||
revalidate:
|
||||
- TEMPLATE
|
||||
- AUTO
|
||||
- C_API
|
||||
- Python_API
|
||||
build:
|
||||
- TEMPLATE
|
||||
- IR_FE
|
||||
|
||||
PROXY:
|
||||
|
|
@ -106,7 +116,6 @@ IR_FE:
|
|||
ONNX_FE:
|
||||
revalidate:
|
||||
- MO
|
||||
- ONNX_RT
|
||||
build:
|
||||
- CPU
|
||||
- Python_API
|
||||
|
|
|
|||
|
|
@ -10,7 +10,6 @@ allow-licenses:
|
|||
- 'BlueOak-1.0.0'
|
||||
- '0BSD'
|
||||
- 'Python-2.0'
|
||||
- 'LGPL-3.0'
|
||||
fail-on-scopes:
|
||||
- 'runtime'
|
||||
- 'development'
|
||||
|
|
|
|||
|
|
@ -1 +0,0 @@
|
|||
pr-24878
|
||||
|
|
@ -1,73 +0,0 @@
|
|||
FROM openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04
|
||||
|
||||
USER root
|
||||
|
||||
# APT configuration
|
||||
RUN echo 'Acquire::Retries "10";' > /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::Assume-Yes "true";' >> /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::Fix-Broken "true";' >> /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::no-install-recommends "true";' >> /etc/apt/apt.conf
|
||||
|
||||
ENV DEBIAN_FRONTEND="noninteractive" \
|
||||
TZ="Europe/London"
|
||||
|
||||
RUN apt-get update && \
|
||||
apt-get install software-properties-common && \
|
||||
add-apt-repository --yes --no-update ppa:git-core/ppa && \
|
||||
add-apt-repository --yes --no-update ppa:deadsnakes/ppa && \
|
||||
apt-get update && \
|
||||
apt-get install \
|
||||
curl \
|
||||
git \
|
||||
ca-certificates \
|
||||
gpg-agent \
|
||||
tzdata \
|
||||
# Pythons
|
||||
python3.8-dev \
|
||||
python3.8-venv \
|
||||
python3.8-distutils \
|
||||
python3.11-dev \
|
||||
python3.11-venv \
|
||||
python3.11-distutils \
|
||||
libhdf5-dev \
|
||||
# For Java API
|
||||
default-jdk \
|
||||
# Compiler
|
||||
gcc-10 \
|
||||
g++-10 \
|
||||
&& \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Install build dependencies
|
||||
ADD install_build_dependencies.sh /install_build_dependencies.sh
|
||||
RUN chmod +x /install_build_dependencies.sh && \
|
||||
/install_build_dependencies.sh && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Set gcc-10 as a default compiler
|
||||
RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 30 && \
|
||||
update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 30
|
||||
|
||||
# Install sscache
|
||||
ARG SCCACHE_VERSION="v0.7.5"
|
||||
ENV SCCACHE_HOME="/opt/sccache" \
|
||||
SCCACHE_PATH="/opt/sccache/sccache"
|
||||
|
||||
RUN mkdir ${SCCACHE_HOME} && cd ${SCCACHE_HOME} && \
|
||||
SCCACHE_ARCHIVE="sccache-${SCCACHE_VERSION}-aarch64-unknown-linux-musl.tar.gz" && \
|
||||
curl -SLO https://github.com/mozilla/sccache/releases/download/${SCCACHE_VERSION}/${SCCACHE_ARCHIVE} && \
|
||||
tar -xzf ${SCCACHE_ARCHIVE} --strip-components=1 && rm ${SCCACHE_ARCHIVE}
|
||||
|
||||
# Setup pip
|
||||
ENV PIP_VERSION="24.0"
|
||||
RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py && \
|
||||
python3.8 get-pip.py --no-cache-dir pip==${PIP_VERSION} && \
|
||||
python3.11 get-pip.py --no-cache-dir pip==${PIP_VERSION} && \
|
||||
rm -f get-pip.py
|
||||
|
||||
# Use Python 3.11 as default instead of Python 3.8
|
||||
# Using venv here 'cause other methods to switch the default Python on Ubuntu 20 break both system and wheels build
|
||||
RUN python3.11 -m venv venv
|
||||
ENV PATH="/venv/bin:$SCCACHE_HOME:$PATH"
|
||||
|
||||
ENV PIP_CACHE_DIR=/mount/caches/pip/linux/${PIP_VERSION}
|
||||
|
|
@ -1,72 +0,0 @@
|
|||
FROM openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04
|
||||
|
||||
USER root
|
||||
|
||||
# APT configuration
|
||||
RUN echo 'Acquire::Retries "10";' > /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::Assume-Yes "true";' >> /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::Fix-Broken "true";' >> /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::no-install-recommends "true";' >> /etc/apt/apt.conf
|
||||
|
||||
ENV DEBIAN_FRONTEND="noninteractive" \
|
||||
TZ="Europe/London"
|
||||
|
||||
RUN apt-get update && \
|
||||
apt-get install software-properties-common && \
|
||||
add-apt-repository --yes --no-update ppa:git-core/ppa && \
|
||||
add-apt-repository --yes --no-update ppa:deadsnakes/ppa && \
|
||||
apt-get update && \
|
||||
apt-get install \
|
||||
curl \
|
||||
git \
|
||||
ca-certificates \
|
||||
gpg-agent \
|
||||
tzdata \
|
||||
# Pythons
|
||||
python3.8-dev \
|
||||
python3.8-venv \
|
||||
python3.8-distutils \
|
||||
python3.11-dev \
|
||||
python3.11-venv \
|
||||
python3.11-distutils \
|
||||
# For Java API
|
||||
default-jdk \
|
||||
# Compiler \
|
||||
gcc-10 \
|
||||
g++-10 \
|
||||
&& \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Install build dependencies
|
||||
ADD install_build_dependencies.sh /install_build_dependencies.sh
|
||||
RUN chmod +x /install_build_dependencies.sh && \
|
||||
/install_build_dependencies.sh && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Set gcc-10 as a default compiler
|
||||
RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 30 && \
|
||||
update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 30
|
||||
|
||||
# Install sscache
|
||||
ARG SCCACHE_VERSION="v0.7.5"
|
||||
ENV SCCACHE_HOME="/opt/sccache" \
|
||||
SCCACHE_PATH="/opt/sccache/sccache"
|
||||
|
||||
RUN mkdir ${SCCACHE_HOME} && cd ${SCCACHE_HOME} && \
|
||||
SCCACHE_ARCHIVE="sccache-${SCCACHE_VERSION}-x86_64-unknown-linux-musl.tar.gz" && \
|
||||
curl -SLO https://github.com/mozilla/sccache/releases/download/${SCCACHE_VERSION}/${SCCACHE_ARCHIVE} && \
|
||||
tar -xzf ${SCCACHE_ARCHIVE} --strip-components=1 && rm ${SCCACHE_ARCHIVE}
|
||||
|
||||
# Setup pip
|
||||
ENV PIP_VERSION="24.0"
|
||||
RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py && \
|
||||
python3.8 get-pip.py --no-cache-dir pip==${PIP_VERSION} && \
|
||||
python3.11 get-pip.py --no-cache-dir pip==${PIP_VERSION} && \
|
||||
rm -f get-pip.py
|
||||
|
||||
# Use Python 3.11 as default instead of Python 3.8
|
||||
# Using venv here 'cause other methods to switch the default Python on Ubuntu 20 break both system and wheels build
|
||||
RUN python3.11 -m venv venv
|
||||
ENV PATH="/venv/bin:$SCCACHE_HOME:$PATH"
|
||||
|
||||
ENV PIP_CACHE_DIR=/mount/caches/pip/linux/${PIP_VERSION}
|
||||
|
|
@ -1,89 +0,0 @@
|
|||
FROM openvinogithubactions.azurecr.io/dockerhub/nvidia/cuda:11.8.0-runtime-ubuntu20.04
|
||||
|
||||
USER root
|
||||
|
||||
# APT configuration
|
||||
RUN echo 'Acquire::Retries "10";' > /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::Assume-Yes "true";' >> /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::Fix-Broken "true";' >> /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::no-install-recommends "true";' >> /etc/apt/apt.conf
|
||||
|
||||
ENV DEBIAN_FRONTEND="noninteractive" \
|
||||
TZ="Europe/London"
|
||||
|
||||
RUN apt-get update && \
|
||||
apt-get install software-properties-common && \
|
||||
add-apt-repository --yes --no-update ppa:git-core/ppa && \
|
||||
add-apt-repository --yes --no-update ppa:deadsnakes/ppa && \
|
||||
apt-get update && \
|
||||
apt-get install \
|
||||
curl \
|
||||
wget \
|
||||
git \
|
||||
ca-certificates \
|
||||
gpg-agent \
|
||||
tzdata \
|
||||
# Pythons
|
||||
python3.8-dev \
|
||||
python3.8-venv \
|
||||
python3.8-distutils \
|
||||
python3.11-dev \
|
||||
python3.11-venv \
|
||||
python3.11-distutils \
|
||||
# For Java API
|
||||
default-jdk \
|
||||
# Compiler \
|
||||
gcc-10 \
|
||||
g++-10 \
|
||||
&& \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Install build dependencies
|
||||
ADD install_build_dependencies.sh /install_build_dependencies.sh
|
||||
RUN chmod +x /install_build_dependencies.sh && \
|
||||
/install_build_dependencies.sh && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Set gcc-10 as a default compiler
|
||||
RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 30 && \
|
||||
update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 30
|
||||
|
||||
# Install sscache
|
||||
ARG SCCACHE_VERSION="v0.7.5"
|
||||
ENV SCCACHE_HOME="/opt/sccache" \
|
||||
SCCACHE_PATH="/opt/sccache/sccache"
|
||||
|
||||
RUN mkdir ${SCCACHE_HOME} && cd ${SCCACHE_HOME} && \
|
||||
SCCACHE_ARCHIVE="sccache-${SCCACHE_VERSION}-x86_64-unknown-linux-musl.tar.gz" && \
|
||||
curl -SLO https://github.com/mozilla/sccache/releases/download/${SCCACHE_VERSION}/${SCCACHE_ARCHIVE} && \
|
||||
tar -xzf ${SCCACHE_ARCHIVE} --strip-components=1 && rm ${SCCACHE_ARCHIVE}
|
||||
|
||||
# Install CUDA
|
||||
RUN wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin && \
|
||||
mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600 && \
|
||||
apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/3bf863cc.pub && \
|
||||
add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/ /"
|
||||
RUN apt update && apt install -y \
|
||||
libcudnn8=8.9.4.*-1+cuda11.8 \
|
||||
libcudnn8-dev=8.9.4.*-1+cuda11.8 \
|
||||
libcudnn8-samples=8.9.4.*-1+cuda11.8 \
|
||||
cuda-runtime-11-8 \
|
||||
cuda-11-8 \
|
||||
libcutensor1=1.6.1.5-1 \
|
||||
libcutensor-dev=1.6.1.5-1 \
|
||||
cuda-drivers=520.61.05-1 && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Setup pip
|
||||
ENV PIP_VERSION="24.0"
|
||||
RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py && \
|
||||
python3.8 get-pip.py --no-cache-dir pip==${PIP_VERSION} && \
|
||||
python3.11 get-pip.py --no-cache-dir pip==${PIP_VERSION} && \
|
||||
rm -f get-pip.py
|
||||
|
||||
# Use Python 3.11 as default instead of Python 3.8
|
||||
# Using venv here 'cause other methods to switch the default Python on Ubuntu 20 break both system and wheels build
|
||||
RUN python3.11 -m venv venv
|
||||
ENV PATH="/venv/bin:$SCCACHE_HOME:$PATH"
|
||||
|
||||
ENV PIP_CACHE_DIR=/mount/caches/pip/linux/${PIP_VERSION}
|
||||
|
|
@ -1,73 +0,0 @@
|
|||
FROM openvinogithubactions.azurecr.io/dockerhub/ubuntu:22.04
|
||||
|
||||
USER root
|
||||
|
||||
# APT configuration
|
||||
RUN echo 'Acquire::Retries "10";' > /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::Assume-Yes "true";' >> /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::Fix-Broken "true";' >> /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::no-install-recommends "true";' >> /etc/apt/apt.conf
|
||||
|
||||
ENV DEBIAN_FRONTEND="noninteractive" \
|
||||
TZ="Europe/London"
|
||||
|
||||
RUN apt-get update && \
|
||||
apt-get install software-properties-common && \
|
||||
add-apt-repository --yes --no-update ppa:git-core/ppa && \
|
||||
add-apt-repository --yes --no-update ppa:deadsnakes/ppa && \
|
||||
apt-get update && \
|
||||
apt-get install \
|
||||
curl \
|
||||
git \
|
||||
ca-certificates \
|
||||
gpg-agent \
|
||||
tzdata \
|
||||
libtbb2 \
|
||||
# Pythons
|
||||
python3.8-dev \
|
||||
python3.8-venv \
|
||||
python3.8-distutils \
|
||||
python3.11-dev \
|
||||
python3.11-venv \
|
||||
python3.11-distutils \
|
||||
# For Java API
|
||||
default-jdk \
|
||||
# Compiler \
|
||||
gcc-10 \
|
||||
g++-10 \
|
||||
&& \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Install build dependencies
|
||||
ADD install_build_dependencies.sh /install_build_dependencies.sh
|
||||
RUN chmod +x /install_build_dependencies.sh && \
|
||||
/install_build_dependencies.sh && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Set gcc-10 as a default compiler
|
||||
RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 30 && \
|
||||
update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 30
|
||||
|
||||
# Install sscache
|
||||
ARG SCCACHE_VERSION="v0.7.5"
|
||||
ENV SCCACHE_HOME="/opt/sccache" \
|
||||
SCCACHE_PATH="/opt/sccache/sccache"
|
||||
|
||||
RUN mkdir ${SCCACHE_HOME} && cd ${SCCACHE_HOME} && \
|
||||
SCCACHE_ARCHIVE="sccache-${SCCACHE_VERSION}-x86_64-unknown-linux-musl.tar.gz" && \
|
||||
curl -SLO https://github.com/mozilla/sccache/releases/download/${SCCACHE_VERSION}/${SCCACHE_ARCHIVE} && \
|
||||
tar -xzf ${SCCACHE_ARCHIVE} --strip-components=1 && rm ${SCCACHE_ARCHIVE}
|
||||
|
||||
# Setup pip
|
||||
ENV PIP_VERSION="24.0"
|
||||
RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py && \
|
||||
python3.8 get-pip.py --no-cache-dir pip==${PIP_VERSION} && \
|
||||
python3.11 get-pip.py --no-cache-dir pip==${PIP_VERSION} && \
|
||||
rm -f get-pip.py
|
||||
|
||||
# Use Python 3.11 as default instead of Python 3.8
|
||||
# Using venv here 'cause other methods to switch the default Python on Ubuntu 20 break both system and wheels build
|
||||
RUN python3.11 -m venv venv
|
||||
ENV PATH="/venv/bin:$SCCACHE_HOME:$PATH"
|
||||
|
||||
ENV PIP_CACHE_DIR=/mount/caches/pip/linux/${PIP_VERSION}
|
||||
|
|
@ -1,72 +0,0 @@
|
|||
FROM openvinogithubactions.azurecr.io/dockerhub/ubuntu:22.04
|
||||
|
||||
USER root
|
||||
|
||||
# APT configuration
|
||||
RUN echo 'Acquire::Retries "10";' > /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::Assume-Yes "true";' >> /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::Fix-Broken "true";' >> /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::no-install-recommends "true";' >> /etc/apt/apt.conf
|
||||
|
||||
ENV DEBIAN_FRONTEND="noninteractive" \
|
||||
TZ="Europe/London"
|
||||
|
||||
RUN apt-get update && \
|
||||
apt-get install software-properties-common && \
|
||||
add-apt-repository --yes --no-update ppa:git-core/ppa && \
|
||||
add-apt-repository --yes --no-update ppa:deadsnakes/ppa && \
|
||||
apt-get update && \
|
||||
apt-get install \
|
||||
curl \
|
||||
git \
|
||||
ca-certificates \
|
||||
gpg-agent \
|
||||
tzdata \
|
||||
libtbb2 \
|
||||
# Pythons
|
||||
python3.8-dev \
|
||||
python3.8-venv \
|
||||
python3.8-distutils \
|
||||
python3.11-dev \
|
||||
python3.11-venv \
|
||||
python3.11-distutils \
|
||||
# For Java API
|
||||
default-jdk \
|
||||
# Compiler \
|
||||
clang \
|
||||
&& \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Install build dependencies
|
||||
ADD install_build_dependencies.sh /install_build_dependencies.sh
|
||||
RUN chmod +x /install_build_dependencies.sh && \
|
||||
/install_build_dependencies.sh && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Set clang as a default compiler
|
||||
RUN update-alternatives --install /usr/bin/cc cc /usr/bin/clang 100 && \
|
||||
update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang++ 100
|
||||
|
||||
# Install sscache
|
||||
ARG SCCACHE_VERSION="v0.7.5"
|
||||
ENV SCCACHE_HOME="/opt/sccache" \
|
||||
SCCACHE_PATH="/opt/sccache/sccache"
|
||||
|
||||
RUN mkdir ${SCCACHE_HOME} && cd ${SCCACHE_HOME} && \
|
||||
SCCACHE_ARCHIVE="sccache-${SCCACHE_VERSION}-x86_64-unknown-linux-musl.tar.gz" && \
|
||||
curl -SLO https://github.com/mozilla/sccache/releases/download/${SCCACHE_VERSION}/${SCCACHE_ARCHIVE} && \
|
||||
tar -xzf ${SCCACHE_ARCHIVE} --strip-components=1 && rm ${SCCACHE_ARCHIVE}
|
||||
|
||||
# Setup pip
|
||||
ENV PIP_VERSION="24.0"
|
||||
RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py && \
|
||||
python3.8 get-pip.py --no-cache-dir pip==${PIP_VERSION} && \
|
||||
python3.11 get-pip.py --no-cache-dir pip==${PIP_VERSION} && \
|
||||
rm -f get-pip.py
|
||||
|
||||
# Use Python 3.11 as default instead of Python 3.8
|
||||
# Using venv here 'cause other methods to switch the default Python on Ubuntu 20 break both system and wheels build
|
||||
RUN python3.11 -m venv venv
|
||||
ENV PATH="/venv/bin:$SCCACHE_HOME:$PATH"
|
||||
|
||||
ENV PIP_CACHE_DIR=/mount/caches/pip/linux/${PIP_VERSION}
|
||||
|
|
@ -1,51 +0,0 @@
|
|||
FROM openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04
|
||||
|
||||
USER root
|
||||
|
||||
# APT configuration
|
||||
RUN echo 'Acquire::Retries "10";' > /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::Assume-Yes "true";' >> /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::Fix-Broken "true";' >> /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::no-install-recommends "true";' >> /etc/apt/apt.conf
|
||||
|
||||
ENV DEBIAN_FRONTEND="noninteractive" \
|
||||
TZ="Europe/London"
|
||||
|
||||
RUN apt-get update && \
|
||||
apt-get install software-properties-common && \
|
||||
add-apt-repository --yes --no-update ppa:git-core/ppa && \
|
||||
add-apt-repository --yes --no-update ppa:deadsnakes/ppa && \
|
||||
apt-get update && \
|
||||
apt-get install \
|
||||
curl \
|
||||
git \
|
||||
ca-certificates \
|
||||
gpg-agent \
|
||||
tzdata \
|
||||
# Python
|
||||
python3.11-dev \
|
||||
python3.11-venv \
|
||||
python3.11-distutils \
|
||||
libhdf5-dev \
|
||||
&& \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Install openvino dependencies
|
||||
ADD scripts/install_dependencies/install_openvino_dependencies.sh /install_openvino_dependencies.sh
|
||||
RUN chmod +x /install_openvino_dependencies.sh && \
|
||||
/install_openvino_dependencies.sh && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Setup pip
|
||||
ENV PIP_VERSION="24.0"
|
||||
RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py && \
|
||||
python3.11 get-pip.py --no-cache-dir pip==${PIP_VERSION} && \
|
||||
rm -f get-pip.py
|
||||
|
||||
# Use Python 3.11 as default instead of Python 3.8
|
||||
# Using venv here 'cause other methods to switch the default Python on Ubuntu 20 break both system and wheels build
|
||||
RUN python3.11 -m venv venv
|
||||
ENV PATH="/venv/bin:$PATH"
|
||||
|
||||
ENV PIP_CACHE_DIR=/mount/caches/pip/linux/${PIP_VERSION}
|
||||
ENV PIP_INSTALL_PATH=/venv/lib/python3.11/site-packages
|
||||
|
|
@ -1,52 +0,0 @@
|
|||
FROM openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04
|
||||
|
||||
USER root
|
||||
|
||||
# APT configuration
|
||||
RUN echo 'Acquire::Retries "10";' > /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::Assume-Yes "true";' >> /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::Fix-Broken "true";' >> /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::no-install-recommends "true";' >> /etc/apt/apt.conf
|
||||
|
||||
ENV DEBIAN_FRONTEND="noninteractive" \
|
||||
TZ="Europe/London"
|
||||
|
||||
RUN apt-get update && \
|
||||
apt-get install software-properties-common && \
|
||||
add-apt-repository --yes --no-update ppa:git-core/ppa && \
|
||||
add-apt-repository --yes --no-update ppa:deadsnakes/ppa && \
|
||||
apt-get update && \
|
||||
apt-get install \
|
||||
curl \
|
||||
git \
|
||||
ca-certificates \
|
||||
gpg-agent \
|
||||
tzdata \
|
||||
# Python
|
||||
python3.11-dev \
|
||||
python3.11-venv \
|
||||
python3.11-distutils \
|
||||
libhdf5-dev \
|
||||
&& \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Install build dependencies
|
||||
ADD install_build_dependencies.sh /install_build_dependencies.sh
|
||||
RUN chmod +x /install_build_dependencies.sh && \
|
||||
/install_build_dependencies.sh && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Setup pip
|
||||
ENV PIP_VERSION="24.0"
|
||||
RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py && \
|
||||
python3.8 get-pip.py --no-cache-dir pip==${PIP_VERSION} && \
|
||||
python3.11 get-pip.py --no-cache-dir pip==${PIP_VERSION} && \
|
||||
rm -f get-pip.py
|
||||
|
||||
# Use Python 3.11 as default instead of Python 3.8
|
||||
# Using venv here 'cause other methods to switch the default Python on Ubuntu 20 break both system and wheels build
|
||||
RUN python3.11 -m venv venv
|
||||
ENV PATH="/venv/bin:$SCCACHE_HOME:$PATH"
|
||||
|
||||
ENV PIP_CACHE_DIR=/mount/caches/pip/linux/${PIP_VERSION}
|
||||
ENV PIP_INSTALL_PATH=/venv/lib/python3.11/site-packages
|
||||
|
|
@ -1,52 +0,0 @@
|
|||
FROM openvinogithubactions.azurecr.io/dockerhub/ubuntu:22.04
|
||||
|
||||
USER root
|
||||
|
||||
# APT configuration
|
||||
RUN echo 'Acquire::Retries "10";' > /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::Assume-Yes "true";' >> /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::Fix-Broken "true";' >> /etc/apt/apt.conf && \
|
||||
echo 'APT::Get::no-install-recommends "true";' >> /etc/apt/apt.conf
|
||||
|
||||
ENV DEBIAN_FRONTEND="noninteractive" \
|
||||
TZ="Europe/London"
|
||||
|
||||
RUN apt-get update && \
|
||||
apt-get install software-properties-common && \
|
||||
add-apt-repository --yes --no-update ppa:git-core/ppa && \
|
||||
add-apt-repository --yes --no-update ppa:deadsnakes/ppa && \
|
||||
apt-get update && \
|
||||
apt-get install \
|
||||
curl \
|
||||
git \
|
||||
ca-certificates \
|
||||
gpg-agent \
|
||||
tzdata \
|
||||
# Python
|
||||
python3.11-dev \
|
||||
python3.11-venv \
|
||||
python3.11-distutils \
|
||||
libhdf5-dev \
|
||||
&& \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Install build dependencies
|
||||
ADD install_build_dependencies.sh /install_build_dependencies.sh
|
||||
RUN chmod +x /install_build_dependencies.sh && \
|
||||
/install_build_dependencies.sh && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Setup pip
|
||||
ENV PIP_VERSION="24.0"
|
||||
RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py && \
|
||||
python3 get-pip.py --no-cache-dir pip==${PIP_VERSION} && \
|
||||
python3.11 get-pip.py --no-cache-dir pip==${PIP_VERSION} && \
|
||||
rm -f get-pip.py
|
||||
|
||||
# Use Python 3.11 as default
|
||||
# Using venv here 'cause other methods to switch the default Python on Ubuntu 20 break both system and wheels build
|
||||
RUN python3.11 -m venv venv
|
||||
ENV PATH="/venv/bin:$SCCACHE_HOME:$PATH"
|
||||
|
||||
ENV PIP_CACHE_DIR=/mount/caches/pip/linux/${PIP_VERSION}
|
||||
ENV PIP_INSTALL_PATH=/venv/lib/python3.11/site-packages
|
||||
|
|
@ -176,12 +176,3 @@
|
|||
'category: licensing':
|
||||
- 'licensing/**/*'
|
||||
- 'LICENSE'
|
||||
|
||||
'category: docker_env':
|
||||
- '.dockerignore'
|
||||
- 'install_build_dependencies.sh'
|
||||
- '**/install_openvino_dependencies.sh'
|
||||
- '.github/actions/handle_docker/**/*'
|
||||
|
||||
'category: dockerfiles':
|
||||
- '.github/dockerfiles/**/*'
|
||||
|
|
|
|||
|
|
@ -1,6 +1,3 @@
|
|||
# Copyright (C) 2024 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
#!/usr/bin/env python3
|
||||
|
||||
from github import Github
|
||||
|
|
|
|||
|
|
@ -1,17 +1,8 @@
|
|||
# Copyright (C) 2024 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
from github import Github, Auth
|
||||
import os
|
||||
import logging
|
||||
|
||||
import argparse
|
||||
import logging
|
||||
import os
|
||||
from enum import Enum
|
||||
|
||||
from github import Github, Auth
|
||||
|
||||
|
||||
class ExternalPRLabels(str, Enum):
|
||||
ExternalPR = 'ExternalPR'
|
||||
ExternalIntelPR = 'ExternalIntelPR'
|
||||
|
||||
|
||||
def get_arguments() -> argparse.Namespace:
|
||||
|
|
@ -30,8 +21,9 @@ def get_arguments() -> argparse.Namespace:
|
|||
|
||||
|
||||
def init_logger():
|
||||
LOGLEVEL = os.environ.get('LOGLEVEL', 'INFO').upper()
|
||||
logging.basicConfig(
|
||||
level=os.environ.get('LOGLEVEL', 'INFO').upper(),
|
||||
level=LOGLEVEL,
|
||||
format='%(asctime)s %(name)-12s %(levelname)-8s %(message)s',
|
||||
datefmt='%m-%d-%Y %H:%M:%S',
|
||||
)
|
||||
|
|
@ -42,6 +34,7 @@ if __name__ == '__main__':
|
|||
init_logger()
|
||||
|
||||
LOGGER = logging.getLogger('labeller')
|
||||
EXTERNAL_PR_LABEL_NAME = 'ExternalPR'
|
||||
|
||||
args = get_arguments()
|
||||
pr_number = args.pr_number
|
||||
|
|
@ -51,25 +44,22 @@ if __name__ == '__main__':
|
|||
gh_repo = github.get_repo(full_name_or_id=repository_name)
|
||||
|
||||
pr = gh_repo.get_pull(number=pr_number)
|
||||
|
||||
|
||||
LOGGER.info(f'CONTEXT: PR #{pr_number}. USER: {pr.user.login}. ALL PR LABELS: {list(pr.get_labels())}')
|
||||
|
||||
if not gh_repo.has_in_collaborators(pr.user.login):
|
||||
LOGGER.info(f'THE {pr.user.login} IS NOT A COLLABORATOR')
|
||||
|
||||
|
||||
for label in pr.get_labels():
|
||||
if label.name in (ExternalPRLabels.ExternalPR, ExternalPRLabels.ExternalIntelPR):
|
||||
LOGGER.info(f'THE PR ALREADY HAS THE "{label.name}" LABEL')
|
||||
if label.name == EXTERNAL_PR_LABEL_NAME:
|
||||
LOGGER.info(f'THE PR ALREADY HAS THE "{EXTERNAL_PR_LABEL_NAME}" LABEL')
|
||||
break
|
||||
else:
|
||||
is_intel_user = bool(pr.user.email and pr.user.email.endswith('@intel.com'))
|
||||
label_to_add: str = ExternalPRLabels.ExternalIntelPR.name if is_intel_user else ExternalPRLabels.ExternalPR.name
|
||||
|
||||
pr.add_to_labels(label_to_add)
|
||||
LOGGER.info(f'THE "{label_to_add}" LABEL WAS ADDED TO THE PR')
|
||||
pr.add_to_labels(EXTERNAL_PR_LABEL_NAME)
|
||||
LOGGER.info(f'THE "{EXTERNAL_PR_LABEL_NAME}" LABEL WAS ADDED TO THE PR')
|
||||
else:
|
||||
LOGGER.info(
|
||||
f'THE {pr.user.login} IS A COLLABORATOR, NO NEED TO ADD THE "External" LABEL'
|
||||
f'THE {pr.user.login} IS A COLLABORATOR, NO NEED TO ADD THE "{EXTERNAL_PR_LABEL_NAME}" LABEL'
|
||||
)
|
||||
|
||||
github.close()
|
||||
|
|
|
|||
|
|
@ -1,6 +1,3 @@
|
|||
# Copyright (C) 2024 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import argparse
|
||||
from pathlib import Path
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,3 @@
|
|||
# Copyright (C) 2024 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import logging
|
||||
import os
|
||||
|
||||
|
|
|
|||
|
|
@ -38,25 +38,5 @@
|
|||
{
|
||||
"error_text": "Failure when receiving data from the peer",
|
||||
"ticket": 137121
|
||||
},
|
||||
{
|
||||
"error_text": "Network is unreachable",
|
||||
"ticket": 130955
|
||||
},
|
||||
{
|
||||
"error_text": "connection timed out",
|
||||
"ticket": 130955
|
||||
},
|
||||
{
|
||||
"error_text": "The requested URL returned error: 500",
|
||||
"ticket": 139384
|
||||
},
|
||||
{
|
||||
"error_text": "Unable to fetch some archives",
|
||||
"ticket": 130965
|
||||
},
|
||||
{
|
||||
"error_text": "status_string: \"Timeout was reached\"",
|
||||
"ticket": 142653
|
||||
}
|
||||
]
|
||||
|
|
@ -1,6 +1,3 @@
|
|||
# Copyright (C) 2024 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import json
|
||||
import re
|
||||
import tempfile
|
||||
|
|
|
|||
|
|
@ -1,6 +1,3 @@
|
|||
# Copyright (C) 2024 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
from pathlib import Path
|
||||
|
||||
import requests
|
||||
|
|
|
|||
|
|
@ -1,6 +1,3 @@
|
|||
# Copyright (C) 2024 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import os
|
||||
import sys
|
||||
import tempfile
|
||||
|
|
|
|||
|
|
@ -1,6 +1,3 @@
|
|||
# Copyright (C) 2024 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
"""
|
||||
Integration tests
|
||||
"""
|
||||
|
|
|
|||
|
|
@ -1,6 +1,3 @@
|
|||
# Copyright (C) 2024 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
"""
|
||||
LogAnalyzer tests
|
||||
"""
|
||||
|
|
|
|||
|
|
@ -1,6 +1,3 @@
|
|||
# Copyright (C) 2024 Intel Corporation
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
"""
|
||||
log collector tests
|
||||
"""
|
||||
|
|
|
|||
|
|
@ -13,8 +13,6 @@ concurrency:
|
|||
group: ${{ github.event_name == 'push' && github.run_id || github.ref }}-android-arm64-vcpkg
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
Smart_CI:
|
||||
runs-on: ubuntu-latest
|
||||
|
|
@ -23,7 +21,7 @@ jobs:
|
|||
skip_workflow: "${{ steps.smart_ci.outputs.skip_workflow }}"
|
||||
steps:
|
||||
- name: checkout action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/actions/smart-ci
|
||||
|
||||
|
|
@ -77,7 +75,7 @@ jobs:
|
|||
run: apt-get update && apt-get install --assume-yes --no-install-recommends git ca-certificates
|
||||
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: 'openvino'
|
||||
|
||||
|
|
@ -92,7 +90,7 @@ jobs:
|
|||
popd
|
||||
|
||||
- name: Clone vcpkg
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'microsoft/vcpkg'
|
||||
# Keep in sync with <root>/vcpkg.json <builtin-baseline>
|
||||
|
|
@ -132,7 +130,7 @@ jobs:
|
|||
echo "yes" | ./cmdline-tools/bin/sdkmanager --sdk_root=${ANDROID_TOOLS} --install "ndk-bundle" "platform-tools" "platforms;android-${{ env.ANDROID_SDK_VERSION }}"
|
||||
|
||||
- name: Install sccache
|
||||
uses: mozilla-actions/sccache-action@2e7f9ec7921547d4b46598398ca573513895d0bd # v0.0.4
|
||||
uses: mozilla-actions/sccache-action@v0.0.4
|
||||
with:
|
||||
version: "v0.7.5"
|
||||
|
||||
|
|
@ -184,7 +182,7 @@ jobs:
|
|||
# Upload build logs
|
||||
#
|
||||
- name: Upload build logs
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
if: always()
|
||||
with:
|
||||
name: build_logs
|
||||
|
|
|
|||
|
|
@ -6,8 +6,6 @@ on:
|
|||
- created
|
||||
- edited
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
take-issue:
|
||||
name: Take issue
|
||||
|
|
@ -17,7 +15,7 @@ jobs:
|
|||
timeout-minutes: 10
|
||||
steps:
|
||||
- name: take an issue
|
||||
uses: bdougie/take-action@1439165ac45a7461c2d89a59952cd7d941964b87 # v1.6.1
|
||||
uses: bdougie/take-action@v1.6.1
|
||||
with:
|
||||
message: Thank you for looking into this issue! Please let us know if you have any questions or require any help.
|
||||
issueCurrentlyAssignedMessage: Thanks for being interested in this issue. It looks like this ticket is already assigned to a contributor. Please communicate with the assigned contributor to confirm the status of the issue.
|
||||
|
|
|
|||
|
|
@ -10,25 +10,23 @@ concurrency:
|
|||
group: ${{ github.workflow }}-${{ github.head_ref && github.ref || github.run_id }}
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
Build_Doc:
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: 'true'
|
||||
lfs: 'true'
|
||||
|
||||
- name: Install apt-get dependencies
|
||||
uses: awalsh128/cache-apt-pkgs-action@a6c3917cc929dd0345bfb2d3feaf9101823370ad # v1.4.2
|
||||
uses: awalsh128/cache-apt-pkgs-action@v1.4.2
|
||||
with:
|
||||
packages: graphviz texlive liblua5.2-0 libclang1-9 libclang-cpp9
|
||||
version: 3.0
|
||||
|
||||
- uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5.1.0
|
||||
- uses: actions/setup-python@v5
|
||||
id: cp310
|
||||
with:
|
||||
python-version: '3.10'
|
||||
|
|
@ -41,7 +39,6 @@ jobs:
|
|||
run: |
|
||||
python3 -m pip install -r docs/requirements.txt
|
||||
(cd docs/openvino_sphinx_theme && python3 setup.py install)
|
||||
python3 -m pip install docs/openvino_custom_sphinx_sitemap
|
||||
|
||||
- name: Download and install doxygen
|
||||
run: |
|
||||
|
|
@ -53,12 +50,12 @@ jobs:
|
|||
- name: Build docs
|
||||
run: |
|
||||
rm -rf build && mkdir build && cd build
|
||||
cmake .. -DCMAKE_BUILD_TYPE=Release -DENABLE_DOCS=ON
|
||||
cmake .. -DCMAKE_BUILD_TYPE=Release -DENABLE_DOCS=ON -DENABLE_CPP_API=ON
|
||||
cmake --build . --target sphinx_docs
|
||||
|
||||
- name: Cache documentation
|
||||
id: cache_sphinx_docs
|
||||
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: build/docs/_build/.doctrees
|
||||
key: sphinx-docs-cache
|
||||
|
|
@ -71,31 +68,39 @@ jobs:
|
|||
PR_NUMBER=$(echo $GITHUB_REF | awk 'BEGIN { FS = "/" } ; { print $3 }')
|
||||
echo "PR_NUMBER=$PR_NUMBER" >> $GITHUB_ENV
|
||||
|
||||
- name: 'Upload doxygen.log'
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: doxygen_build_log_${{ env.PR_NUMBER }}.log
|
||||
path: build/docs/doxygen.log
|
||||
|
||||
- name: 'Upload sphinx.log'
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: sphinx_build_log_${{ env.PR_NUMBER }}.log
|
||||
path: build/docs/sphinx.log
|
||||
|
||||
- name: 'Upload docs html'
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_docs_html_${{ env.PR_NUMBER }}.zip
|
||||
path: build/docs/openvino_docs_html.zip
|
||||
|
||||
- name: Run Pytest
|
||||
run: |
|
||||
pytest --sphinx="./build/docs/sphinx.log" \
|
||||
pytest --doxygen="./build/docs/doxygen.log" \
|
||||
--sphinx="./build/docs/sphinx.log" \
|
||||
--suppress-warnings="./docs/scripts/tests/suppress_warnings.txt" \
|
||||
--confcutdir="./docs/scripts/tests/" \
|
||||
--html="./build/docs/_artifacts/doc-generation.html" \
|
||||
--doxygen-strip="$(pwd)" \
|
||||
--sphinx-strip="$(pwd)/build/docs/sphinx_source" \
|
||||
--xfail="./docs/scripts/tests/xfail.txt" \
|
||||
--self-contained-html ./docs/scripts/tests/test_docs.py
|
||||
|
||||
- name: 'Upload test results'
|
||||
if: failure()
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_docs_pytest
|
||||
path: build/docs/_artifacts/
|
||||
|
|
|
|||
|
|
@ -1,14 +1,12 @@
|
|||
name: PR Commits
|
||||
on: [pull_request]
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
Checks:
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Install dependencies
|
||||
run: python3 -m pip install -r ./.github/github_org_control/requirements.txt
|
||||
|
|
|
|||
|
|
@ -5,8 +5,6 @@ on:
|
|||
# at 00:00 on the 1st day of every month
|
||||
- cron: '0 0 1 * *'
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
Cleanup_PIP:
|
||||
runs-on: aks-linux-2-cores-8gb
|
||||
|
|
@ -44,7 +42,7 @@ jobs:
|
|||
|
||||
steps:
|
||||
- name: Checkout cach action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/actions/cache
|
||||
|
||||
|
|
|
|||
|
|
@ -16,8 +16,6 @@ concurrency:
|
|||
group: ${{ github.workflow }}-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
Build:
|
||||
strategy:
|
||||
|
|
@ -27,12 +25,12 @@ jobs:
|
|||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: 'true'
|
||||
|
||||
- name: Install OpenCL
|
||||
uses: awalsh128/cache-apt-pkgs-action@a6c3917cc929dd0345bfb2d3feaf9101823370ad # v1.4.2
|
||||
uses: awalsh128/cache-apt-pkgs-action@v1.4.2
|
||||
if: runner.os == 'Linux'
|
||||
with:
|
||||
packages: ocl-icd-opencl-dev opencl-headers
|
||||
|
|
|
|||
|
|
@ -5,15 +5,13 @@ concurrency:
|
|||
group: ${{ github.workflow }}-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
clang-format:
|
||||
runs-on: ubuntu-22.04
|
||||
permissions:
|
||||
pull-requests: write
|
||||
steps:
|
||||
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: 'true'
|
||||
|
||||
|
|
@ -31,7 +29,7 @@ jobs:
|
|||
|
||||
- name: suggester / clang-format
|
||||
if: startsWith(github.event_name, 'pull_request')
|
||||
uses: reviewdog/action-suggester@9e1cd88b79ba3c0023c94e44accd72344f032093 # v1.13.0
|
||||
uses: reviewdog/action-suggester@v1
|
||||
with:
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
level: warning
|
||||
|
|
@ -42,7 +40,7 @@ jobs:
|
|||
permissions:
|
||||
pull-requests: write
|
||||
steps:
|
||||
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: 'true'
|
||||
|
||||
|
|
@ -60,7 +58,7 @@ jobs:
|
|||
# always provide suggestions even for skipped scripts in ov_shellcheck tagret
|
||||
- name: ShellCheck action
|
||||
if: always()
|
||||
uses: reviewdog/action-shellcheck@6e3a862f231c6895fbd335b70adef8f9243d5762 # v1.21.0
|
||||
uses: reviewdog/action-shellcheck@v1
|
||||
with:
|
||||
level: style
|
||||
reporter: github-pr-review
|
||||
|
|
@ -73,7 +71,7 @@ jobs:
|
|||
NamingConventionCheck:
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: 'true'
|
||||
|
||||
|
|
|
|||
|
|
@ -5,8 +5,6 @@ concurrency:
|
|||
group: ${{ github.workflow }}-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
Coverage:
|
||||
runs-on: ${{ matrix.config.os }}
|
||||
|
|
@ -18,19 +16,19 @@ jobs:
|
|||
|
||||
steps:
|
||||
- name: Setup python
|
||||
uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5.1.0
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.10.10'
|
||||
architecture: 'x64'
|
||||
|
||||
|
||||
- name: Setup ccache
|
||||
uses: hendrikmuhs/ccache-action@c92f40bee50034e84c763e33b317c77adaa81c92 # v1.2.13
|
||||
uses: hendrikmuhs/ccache-action@v1.2
|
||||
with:
|
||||
max-size: 50G
|
||||
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: 'true'
|
||||
|
||||
|
|
@ -57,7 +55,7 @@ jobs:
|
|||
python3 -m pip install -r ${{ github.workspace }}/tools/mo/requirements_dev.txt
|
||||
|
||||
- name: Build OpenVINO with CMake
|
||||
uses: ashutoshvarma/action-cmake-build@ade188313bc7eaa6f14349569a64d8bc716342ff # master
|
||||
uses: ashutoshvarma/action-cmake-build@master
|
||||
with:
|
||||
build-dir: ${{ github.workspace }}/build
|
||||
cc: ${{ matrix.config.cc }}
|
||||
|
|
@ -114,7 +112,7 @@ jobs:
|
|||
run: ${{ github.workspace }}/bin/intel64/Release/ov_tensorflow_frontend_tests --gtest_filter=-*IE_GPU*
|
||||
|
||||
- name: Build coverage with CMake
|
||||
uses: ashutoshvarma/action-cmake-build@ade188313bc7eaa6f14349569a64d8bc716342ff # master
|
||||
uses: ashutoshvarma/action-cmake-build@master
|
||||
with:
|
||||
build-dir: ${{ github.workspace }}/coverage
|
||||
cc: ${{ matrix.config.cc }}
|
||||
|
|
@ -137,6 +135,6 @@ jobs:
|
|||
lcov --capture --directory ${{ github.workspace }}/. --output-file coverage.info
|
||||
genhtml coverage.info --output-directory coverage-report
|
||||
- name: Collect coverage
|
||||
uses: codecov/codecov-action@125fc84a9a348dbcf27191600683ec096ec9021c # v4.4.1
|
||||
uses: codecov/codecov-action@v4
|
||||
with:
|
||||
verbose: true
|
||||
|
|
|
|||
|
|
@ -14,8 +14,6 @@ concurrency:
|
|||
group: ${{ github.event_name == 'push' && github.run_id || github.ref }}-linux-coverity
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
env:
|
||||
PIP_CACHE_PATH: /mount/caches/pip/linux
|
||||
PYTHON_VERSION: '3.11'
|
||||
|
|
@ -46,14 +44,14 @@ jobs:
|
|||
apt-get install --assume-yes --no-install-recommends git ca-certificates
|
||||
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: ${{ env.OPENVINO_REPO }}
|
||||
submodules: 'true'
|
||||
ref: ${{ inputs.openvinoRef }}
|
||||
|
||||
- name: Clone OpenVINO Contrib
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/openvino_contrib'
|
||||
path: ${{ env.OPENVINO_CONTRIB_REPO }}
|
||||
|
|
@ -89,7 +87,9 @@ jobs:
|
|||
-DENABLE_CPPLINT=OFF \
|
||||
-DENABLE_STRICT_DEPENDENCIES=OFF \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=ON \
|
||||
-DBUILD_nvidia_plugin=OFF \
|
||||
-DENABLE_FASTER_BUILD=OFF \
|
||||
-DOPENVINO_EXTRA_MODULES=${OPENVINO_CONTRIB_REPO}/modules \
|
||||
-S ${OPENVINO_REPO} \
|
||||
-B ${BUILD_DIR}
|
||||
|
||||
|
|
@ -139,7 +139,7 @@ jobs:
|
|||
run: ${COVERITY_TOOL_DIR}/cov-analysis*/bin/cov-configure -c ${COVERITY_TOOL_DIR}/cov-analysis-linux64-2023.6.2/config/coverity_config.xml -lscc text
|
||||
|
||||
- name: Upload Coverity build log
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
if: always()
|
||||
with:
|
||||
name: coverity_logs
|
||||
|
|
@ -147,7 +147,7 @@ jobs:
|
|||
if-no-files-found: 'error'
|
||||
|
||||
- name: Upload Coverity build archive
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
if: always()
|
||||
with:
|
||||
name: coverity_archive
|
||||
|
|
|
|||
|
|
@ -1,18 +1,18 @@
|
|||
name: 'Dependency Review'
|
||||
on: [pull_request, merge_group]
|
||||
on: [pull_request]
|
||||
|
||||
permissions: read-all
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
dependency-review:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Dependency Review
|
||||
uses: actions/dependency-review-action@72eb03d02c7872a771aacd928f3123ac62ad6d3a # v4.3.3
|
||||
uses: actions/dependency-review-action@v4
|
||||
with:
|
||||
config-file: './.github/dependency_review.yml'
|
||||
base-ref: ${{ github.pull_request.base.sha || github.event.merge_group.base_ref }}
|
||||
head-ref: ${{ github.pull_request.head.sha || github.ref }}
|
||||
allow-dependencies-licenses: 'pkg:pypi/PyGithub@2.2.0,pkg:pypi/psycopg2-binary'
|
||||
|
|
|
|||
|
|
@ -13,8 +13,6 @@ concurrency:
|
|||
group: ${{ github.event_name == 'push' && github.run_id || github.ref }}-fedora33
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
Smart_CI:
|
||||
runs-on: ubuntu-latest
|
||||
|
|
@ -23,7 +21,7 @@ jobs:
|
|||
skip_workflow: "${{ steps.smart_ci.outputs.skip_workflow }}"
|
||||
steps:
|
||||
- name: checkout action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/actions/smart-ci
|
||||
|
||||
|
|
@ -73,7 +71,7 @@ jobs:
|
|||
run: yum update -y && yum install -y git
|
||||
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: ${{ env.OPENVINO_REPO }}
|
||||
submodules: 'true'
|
||||
|
|
@ -93,7 +91,7 @@ jobs:
|
|||
run: bash ${OPENVINO_REPO}/install_build_dependencies.sh
|
||||
|
||||
- name: Install sccache
|
||||
uses: mozilla-actions/sccache-action@2e7f9ec7921547d4b46598398ca573513895d0bd # v0.0.4
|
||||
uses: mozilla-actions/sccache-action@v0.0.4
|
||||
with:
|
||||
version: "v0.7.5"
|
||||
|
||||
|
|
@ -127,6 +125,7 @@ jobs:
|
|||
-DENABLE_NCC_STYLE=OFF \
|
||||
-DENABLE_TESTS=ON \
|
||||
-DENABLE_STRICT_DEPENDENCIES=OFF \
|
||||
-DENABLE_SYSTEM_TBB=ON \
|
||||
-DENABLE_SYSTEM_OPENCL=ON \
|
||||
-DENABLE_PYTHON_PACKAGING=ON \
|
||||
-DCPACK_GENERATOR=TGZ \
|
||||
|
|
@ -161,9 +160,7 @@ jobs:
|
|||
|
||||
- name: Build RPM packages
|
||||
run: |
|
||||
cmake -UTBB* \
|
||||
-DCPACK_GENERATOR=RPM \
|
||||
-DENABLE_SYSTEM_TBB=ON \
|
||||
cmake -DCPACK_GENERATOR=RPM \
|
||||
-DENABLE_TESTS=OFF \
|
||||
${BUILD_DIR}
|
||||
cmake --build ${BUILD_DIR} --parallel --target package --verbose
|
||||
|
|
@ -172,7 +169,7 @@ jobs:
|
|||
# Upload build artifacts and logs
|
||||
#
|
||||
- name: Upload build logs
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
if: always()
|
||||
with:
|
||||
name: build_logs
|
||||
|
|
@ -181,7 +178,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.BUILD_DIR }}/openvino_package.tar.gz
|
||||
|
|
@ -189,7 +186,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino RPM packages
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_rpm_packages
|
||||
path: ${{ env.BUILD_DIR }}/*.rpm
|
||||
|
|
@ -197,7 +194,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino tests package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.BUILD_DIR }}/openvino_tests.tar.gz
|
||||
|
|
@ -217,7 +214,7 @@ jobs:
|
|||
|
||||
steps:
|
||||
- name: Download OpenVINO RPM packages
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_rpm_packages
|
||||
path: ${{ env.RPM_PACKAGES_DIR }}
|
||||
|
|
|
|||
|
|
@ -5,13 +5,11 @@ concurrency:
|
|||
group: ${{ github.workflow }}-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
Check_Files_Size:
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: git ls-tree
|
||||
run: git ls-tree -r -t -l --full-name HEAD | sort -n -r -k 4
|
||||
|
|
|
|||
|
|
@ -13,8 +13,6 @@ on:
|
|||
required: false
|
||||
default: null
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
CPU_Functional_Tests:
|
||||
name: CPU functional tests
|
||||
|
|
@ -32,14 +30,18 @@ jobs:
|
|||
PARALLEL_TEST_SCRIPT: ${{ github.workspace }}/install/tests/functional_test_utils/layer_tests_summary/run_parallel.py
|
||||
PARALLEL_TEST_CACHE: ${{ github.workspace }}/install/tests/test_cache.lst
|
||||
steps:
|
||||
- name: Set apt retries
|
||||
if: runner.os == 'Linux'
|
||||
run: echo 'Acquire::Retries "10";' > /etc/apt/apt.conf.d/80-retries
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
|
@ -62,8 +64,12 @@ jobs:
|
|||
tar -xzf openvino_tests.tar.gz -C $INSTALL_DIR
|
||||
popd
|
||||
|
||||
- name: Install OpenVINO dependencies (Linux)
|
||||
if: runner.os == 'Linux'
|
||||
run: $INSTALL_DIR/install_dependencies/install_openvino_dependencies.sh -c=core -c=dev -c=gpu -y
|
||||
|
||||
- name: Fetch setup_python action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
|
|
@ -81,7 +87,7 @@ jobs:
|
|||
run: python3 -m pip install -r ${INSTALL_TEST_DIR}/functional_test_utils/layer_tests_summary/requirements.txt
|
||||
|
||||
- name: Restore tests execution time
|
||||
uses: actions/cache/restore@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
|
||||
uses: actions/cache/restore@v4
|
||||
with:
|
||||
path: ${{ env.PARALLEL_TEST_CACHE }}
|
||||
key: ${{ runner.os }}-${{ runner.arch }}-tests-functional-cpu-stamp-${{ github.sha }}
|
||||
|
|
@ -101,14 +107,14 @@ jobs:
|
|||
timeout-minutes: 25
|
||||
|
||||
- name: Save tests execution time
|
||||
uses: actions/cache/save@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
|
||||
uses: actions/cache/save@v4
|
||||
if: github.ref_name == 'master'
|
||||
with:
|
||||
path: ${{ env.PARALLEL_TEST_CACHE }}
|
||||
key: ${{ runner.os }}-${{ runner.arch }}-tests-functional-cpu-stamp-${{ github.sha }}
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
if: always()
|
||||
with:
|
||||
name: test-results-functional-cpu
|
||||
|
|
|
|||
|
|
@ -17,8 +17,6 @@ on:
|
|||
type: string
|
||||
required: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
CXX_Unit_Tests:
|
||||
name: C++ unit tests
|
||||
|
|
@ -34,14 +32,18 @@ jobs:
|
|||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
steps:
|
||||
- name: Set apt retries
|
||||
if: runner.os == 'Linux'
|
||||
run: echo 'Acquire::Retries "10";' > /etc/apt/apt.conf.d/80-retries
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
|
@ -61,6 +63,10 @@ jobs:
|
|||
tar -xzf openvino_tests.tar.gz -C $INSTALL_DIR
|
||||
popd
|
||||
|
||||
- name: Install OpenVINO dependencies (Linux)
|
||||
if: runner.os == 'Linux'
|
||||
run: $INSTALL_DIR/install_dependencies/install_openvino_dependencies.sh -c=core -c=dev -c=gpu -y
|
||||
|
||||
#
|
||||
# Tests
|
||||
#
|
||||
|
|
@ -156,7 +162,6 @@ jobs:
|
|||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-Transformations.xml
|
||||
|
||||
- name: Common test utils tests
|
||||
if: ${{ runner.os != 'macOS' }} # Ticket: 134469
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_util_tests --gtest_print_time=1 \
|
||||
|
|
@ -211,7 +216,6 @@ jobs:
|
|||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-TemplateFuncTests.xml
|
||||
|
||||
- name: OV utils unit tests
|
||||
if: ${{ runner.os != 'macOS' }} # Ticket: 134469
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_util_tests --gtest_print_time=1 \
|
||||
|
|
@ -255,7 +259,7 @@ jobs:
|
|||
${INSTALL_TEST_DIR}/ov_hetero_func_tests --gtest_print_time=1 --gtest_output=xml:${INSTALL_TEST_DIR}/TEST-OVHeteroFuncTests.xml --gtest_filter="*smoke*"
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
if: ${{ !cancelled() }}
|
||||
with:
|
||||
name: test-results-cpp
|
||||
|
|
|
|||
|
|
@ -13,8 +13,6 @@ on:
|
|||
required: false
|
||||
default: null
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
Debian_Packages:
|
||||
name: Debian Packages
|
||||
|
|
@ -33,7 +31,7 @@ jobs:
|
|||
run: echo 'Acquire::Retries "10";' > /etc/apt/apt.conf.d/80-retries
|
||||
|
||||
- name: Download OpenVINO debian packages
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_debian_packages
|
||||
path: ${{ env.DEBIAN_PACKAGES_DIR }}
|
||||
|
|
|
|||
|
|
@ -1,134 +0,0 @@
|
|||
name: GPU
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
test_type:
|
||||
description: 'Type of tests to execute'
|
||||
type: string
|
||||
required: true
|
||||
device:
|
||||
description: 'Device name (igpu or dgpu)'
|
||||
type: string
|
||||
required: true
|
||||
runner:
|
||||
description: 'Runner labels by which the runner will be chosen. Example: [ "self-hosted", "igpu" ]'
|
||||
type: string
|
||||
required: true
|
||||
container:
|
||||
description: 'JSON to be converted to the value of the "container" configuration for the job'
|
||||
type: string
|
||||
required: false
|
||||
default: '{"image": null}'
|
||||
|
||||
jobs:
|
||||
GPU:
|
||||
timeout-minutes: 80
|
||||
runs-on: ${{ fromJSON(inputs.runner) }}
|
||||
container: ${{ fromJSON(inputs.container) }}
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
GTEST_PARALLEL_SCRIPT: ${{ github.workspace }}/gtest_parallel.py
|
||||
steps:
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
with:
|
||||
name: 'openvino_package'
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
with:
|
||||
name: 'openvino_tests'
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
||||
# Needed as ${{ github.workspace }} is not working correctly when using Docker
|
||||
- name: Setup Variables
|
||||
run: |
|
||||
echo "INSTALL_DIR=$GITHUB_WORKSPACE/install" >> "$GITHUB_ENV"
|
||||
echo "INSTALL_TEST_DIR=$GITHUB_WORKSPACE/install/tests" >> "$GITHUB_ENV"
|
||||
echo "GTEST_PARALLEL_SCRIPT=$GITHUB_WORKSPACE/gtest_parallel.py" >> "$GITHUB_ENV"
|
||||
|
||||
- name: Extract OpenVINO packages
|
||||
run: |
|
||||
pushd $INSTALL_DIR
|
||||
tar -xzf openvino_package.tar.gz -C $INSTALL_DIR
|
||||
popd
|
||||
pushd $INSTALL_TEST_DIR
|
||||
tar -xzf openvino_tests.tar.gz -C $INSTALL_DIR
|
||||
popd
|
||||
|
||||
- name: Install dependencies (Linux)
|
||||
run: |
|
||||
$INSTALL_DIR/install_dependencies/install_openvino_dependencies.sh -c=core -c=dev -c=gpu -y
|
||||
|
||||
apt-get update && apt-get install -y wget software-properties-common ca-certificates gpg-agent tzdata clinfo
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
TZ: "Europe/London" # to prevent tzdata from waiting user input
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5.1.0
|
||||
with:
|
||||
python-version: ${{ env.PYTHON_VERSION }}
|
||||
|
||||
- name: Get gtest-parallel script
|
||||
run: wget https://raw.githubusercontent.com/google/gtest-parallel/master/gtest_parallel.py
|
||||
|
||||
- name: Install compute runtime drivers
|
||||
run: |
|
||||
wget https://github.com/intel/intel-graphics-compiler/releases/download/igc-1.0.15985.7/intel-igc-core_1.0.15985.7_amd64.deb
|
||||
wget https://github.com/intel/intel-graphics-compiler/releases/download/igc-1.0.15985.7/intel-igc-opencl_1.0.15985.7_amd64.deb
|
||||
wget https://github.com/intel/compute-runtime/releases/download/24.05.28454.6/intel-level-zero-gpu-dbgsym_1.3.28454.6_amd64.ddeb
|
||||
wget https://github.com/intel/compute-runtime/releases/download/24.05.28454.6/intel-level-zero-gpu_1.3.28454.6_amd64.deb
|
||||
wget https://github.com/intel/compute-runtime/releases/download/24.05.28454.6/intel-opencl-icd-dbgsym_24.05.28454.6_amd64.ddeb
|
||||
wget https://github.com/intel/compute-runtime/releases/download/24.05.28454.6/intel-opencl-icd_24.05.28454.6_amd64.deb
|
||||
wget https://github.com/intel/compute-runtime/releases/download/24.05.28454.6/libigdgmm12_22.3.11_amd64.deb
|
||||
dpkg -i *.deb
|
||||
|
||||
- name: Install media & display runtimes
|
||||
if: ${{ inputs.device == 'dgpu' }}
|
||||
run: |
|
||||
apt-get update && apt-get install -y \
|
||||
libegl-mesa0 libegl1-mesa libegl1-mesa-dev libgbm1 libgl1-mesa-dev libgl1-mesa-dri \
|
||||
libglapi-mesa libgles2-mesa-dev libglx-mesa0 libigdgmm11 libxatracker2 mesa-va-drivers \
|
||||
mesa-vdpau-drivers mesa-vulkan-drivers va-driver-all
|
||||
|
||||
- name: Verify devices
|
||||
run: clinfo
|
||||
|
||||
#
|
||||
# Tests
|
||||
#
|
||||
|
||||
- name: OpenVINO GPU ${{ inputs.test_type }} Tests
|
||||
id: run_tests
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
|
||||
TEST_RESULTS_DIR="${{ inputs.device }}_${{ inputs.test_type }}_tests"
|
||||
echo "test_results_dir=$TEST_RESULTS_DIR" >> $GITHUB_OUTPUT
|
||||
|
||||
rm -rf ${INSTALL_TEST_DIR}/${TEST_RESULTS_DIR} && mkdir -p ${INSTALL_TEST_DIR}/${TEST_RESULTS_DIR}
|
||||
|
||||
test_filter=''
|
||||
if [[ "${{ inputs.test_type }}" == "unit" ]]; then
|
||||
# Ticket: 138018
|
||||
test_filter='-*scatter_nd_update_gpu.dynamic_padded_output*:*border_gpu.basic_zero_input*:*bicubic_zeros_no_align_data1x1*:*bicubic_border_align_batches*:*bilinear_zeros_no_align_data1x1*:*non_zero_gpu.empty_input*:*mark_shape_of_subgraphs.concat_with_empty_tensor_inputs*:*concat_cpu_impl.dynamic_4d_f*:*border_gpu.basic_zero_input_dynamic*:*network_test.model_with_empty_input_is_not_dynamic*:*bicubic_zeros_align_data1x1*'
|
||||
else
|
||||
test_filter='*smoke*'
|
||||
fi
|
||||
python3 ${GTEST_PARALLEL_SCRIPT} ${INSTALL_TEST_DIR}/ov_gpu_${{ inputs.test_type }}_tests --dump_json_test_results=${INSTALL_TEST_DIR}/${TEST_RESULTS_DIR}/ov_gpu_${{ inputs.test_type }}_tests.json -- --report_unique_name --gtest_filter=$test_filter
|
||||
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
if: always()
|
||||
with:
|
||||
name: test-results-${{ inputs.test_type }}-${{ inputs.device }}
|
||||
path: ${{ env.INSTALL_TEST_DIR }}/${{ steps.run_tests.outputs.test_results_dir }}
|
||||
if-no-files-found: 'error'
|
||||
|
|
@ -13,8 +13,6 @@ on:
|
|||
required: false
|
||||
default: '{"image": null}'
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
ONNX_Models_tests:
|
||||
name: ONNX Models tests
|
||||
|
|
@ -37,14 +35,18 @@ jobs:
|
|||
ONNX_MODEL_ZOO_SHA: "5faef4c33eba0395177850e1e31c4a6a9e634c82"
|
||||
if: ${{ github.event_name != 'merge_group' }}
|
||||
steps:
|
||||
- name: Set apt retries
|
||||
if: runner.os == 'Linux'
|
||||
run: echo 'Acquire::Retries "10";' > /etc/apt/apt.conf.d/80-retries
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
|
@ -68,14 +70,27 @@ jobs:
|
|||
tar -xzf openvino_tests.tar.gz -C ${INSTALL_DIR}
|
||||
popd
|
||||
|
||||
- name: Fetch model_zoo_preprocess script
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
- name: Fetch setup_python action and model_zoo_preprocess script
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
src/frontends/onnx/tests/tests_python/model_zoo_preprocess.sh
|
||||
sparse-checkout-cone-mode: false
|
||||
path: 'openvino'
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
# install git (required to build pip deps from the sources)
|
||||
apt-get update && apt-get install --assume-yes --no-install-recommends git ca-certificates git-lfs
|
||||
|
||||
- name: Setup Python 3.11
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
version: '3.11'
|
||||
should-setup-pip-paths: 'false'
|
||||
self-hosted-runner: ${{ contains(inputs.runner, 'aks') }}
|
||||
|
||||
- name: Update Models
|
||||
run: bash ${OPENVINO_REPO}/src/frontends/onnx/tests/tests_python/model_zoo_preprocess.sh -d ${MODELS_SHARE_PATH} -o -s "${{ env.ONNX_MODEL_ZOO_SHA }}"
|
||||
|
||||
|
|
|
|||
|
|
@ -17,8 +17,6 @@ on:
|
|||
type: string
|
||||
required: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
ONNX_Runtime:
|
||||
name: ONNX Runtime Integration
|
||||
|
|
@ -42,8 +40,12 @@ jobs:
|
|||
ONNX_RUNTIME_UTILS: ${{ github.workspace }}/install/onnxruntime
|
||||
ONNX_RUNTIME_BUILD_DIR: ${{ github.workspace }}/onnxruntime/build
|
||||
steps:
|
||||
- name: Set apt retries
|
||||
if: runner.os == 'Linux'
|
||||
run: echo 'Acquire::Retries "10";' > /etc/apt/apt.conf.d/80-retries
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
|
@ -57,12 +59,38 @@ jobs:
|
|||
echo "ONNX_RUNTIME_UTILS=$GITHUB_WORKSPACE/install/onnxruntime" >> "$GITHUB_ENV"
|
||||
echo "ONNX_RUNTIME_BUILD_DIR=$GITHUB_WORKSPACE/onnxruntime/build" >> "$GITHUB_ENV"
|
||||
|
||||
- name: Fetch install_build_dependencies.sh and setup_python action
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
install_build_dependencies.sh
|
||||
.github/actions/setup_python/action.yml
|
||||
sparse-checkout-cone-mode: false
|
||||
path: 'openvino'
|
||||
|
||||
- name: Install git
|
||||
run: |
|
||||
apt-get update
|
||||
apt-get install --assume-yes --no-install-recommends git ca-certificates
|
||||
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
version: '3.11'
|
||||
should-setup-pip-paths: 'false'
|
||||
|
||||
- name: Extract OpenVINO package
|
||||
run: |
|
||||
pushd ${INSTALL_DIR}
|
||||
tar -xzf openvino_package.tar.gz -C ${INSTALL_DIR}
|
||||
popd
|
||||
|
||||
- name: Install OpenVINO dependencies
|
||||
run: |
|
||||
${INSTALL_DIR}/install_dependencies/install_openvino_dependencies.sh -c=core -c=dev -y
|
||||
# since we are on Ubuntu 22.04, but compiled OpenVINO on Ubuntu 20.04, we need to install `libtbb2`
|
||||
apt-get install --assume-yes --no-install-recommends libtbb2
|
||||
|
||||
- name: Clone ONNX Runtime
|
||||
run: |
|
||||
hash=`tr -s '\n ' < ${ONNX_RUNTIME_UTILS}/version`
|
||||
|
|
@ -74,6 +102,14 @@ jobs:
|
|||
# Tests
|
||||
#
|
||||
|
||||
- name: Install Build Dependencies
|
||||
run: bash ${OPENVINO_REPO}/install_build_dependencies.sh
|
||||
|
||||
- name: Install sccache
|
||||
uses: mozilla-actions/sccache-action@v0.0.4
|
||||
with:
|
||||
version: "v0.7.5"
|
||||
|
||||
- name: Build Lin ONNX Runtime
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
|
|
@ -97,7 +133,7 @@ jobs:
|
|||
if: ${{ runner.arch != 'ARM64' }} # Ticket: 126277
|
||||
run: |
|
||||
# see https://github.com/microsoft/onnxruntime/issues/13197#issuecomment-1264542497
|
||||
apt-get update && apt-get install --assume-yes --no-install-recommends language-pack-en
|
||||
apt-get install --assume-yes --no-install-recommends language-pack-en
|
||||
locale-gen en_US.UTF-8
|
||||
update-locale LANG=en_US.UTF-8
|
||||
|
||||
|
|
|
|||
|
|
@ -13,8 +13,6 @@ on:
|
|||
required: false
|
||||
default: '{"image": null}'
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
JS_API:
|
||||
name: OpenVINO JS API
|
||||
|
|
@ -31,7 +29,7 @@ jobs:
|
|||
NODE_VERSION: 20
|
||||
steps:
|
||||
- name: Fetch OpenVINO JS sources
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
src/bindings/js
|
||||
|
|
@ -44,13 +42,13 @@ jobs:
|
|||
echo "OPENVINO_JS_LIBS_DIR=$GITHUB_WORKSPACE/openvino/src/bindings/js/node/bin" >> "$GITHUB_ENV"
|
||||
|
||||
- name: Download OpenVINO JS package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_js_package
|
||||
path: ${{ env.OPENVINO_JS_LIBS_DIR }}
|
||||
|
||||
- name: Setup Node ${{ env.NODE_VERSION }}
|
||||
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: ${{ env.NODE_VERSION }}
|
||||
|
||||
|
|
|
|||
|
|
@ -17,8 +17,6 @@ on:
|
|||
type: string
|
||||
required: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
env:
|
||||
PIP_CACHE_PATH: /mount/caches/pip/linux
|
||||
PYTHON_VERSION: '3.11'
|
||||
|
|
@ -39,15 +37,18 @@ jobs:
|
|||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
LAYER_TESTS_INSTALL_DIR: ${{ github.workspace }}/install/tests/layer_tests
|
||||
steps:
|
||||
- name: Set apt retries
|
||||
if: runner.os == 'Linux'
|
||||
run: echo 'Acquire::Retries "10";' > /etc/apt/apt.conf.d/80-retries
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
|
@ -69,16 +70,20 @@ jobs:
|
|||
tar -xzf openvino_tests.tar.gz -C $INSTALL_DIR
|
||||
popd
|
||||
|
||||
- name: Install OpenVINO dependencies (Linux)
|
||||
if: runner.os == 'Linux'
|
||||
run: $INSTALL_DIR/install_dependencies/install_openvino_dependencies.sh -c=core -c=dev -y -c=gpu
|
||||
|
||||
- name: Fetch setup_python action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
sparse-checkout-cone-mode: false
|
||||
path: 'action_root'
|
||||
path: 'openvino'
|
||||
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: ./action_root/.github/actions/setup_python
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
version: ${{ env.PYTHON_VERSION }}
|
||||
pip-cache-path: ${{ runner.os == 'Linux' && env.PIP_CACHE_PATH || '' }}
|
||||
|
|
@ -206,7 +211,7 @@ jobs:
|
|||
python3 -m pytest ${LAYER_TESTS_INSTALL_DIR}/py_frontend_tests --junitxml=${INSTALL_TEST_DIR}/TEST-test_py_fontend.xml
|
||||
|
||||
- name: PyTorch Layer Tests
|
||||
if: ${{ fromJSON(inputs.affected-components).PyTorch_FE.test && runner.arch != 'ARM64' }} # Ticket: 126287, 142196
|
||||
if: ${{ fromJSON(inputs.affected-components).PyTorch_FE.test && runner.arch != 'ARM64' }} # Ticket: 126287
|
||||
run: python3 -m pytest ${LAYER_TESTS_INSTALL_DIR}/pytorch_tests -n logical -m precommit --junitxml=${INSTALL_TEST_DIR}/TEST-pytorch.xml
|
||||
env:
|
||||
TEST_DEVICE: CPU
|
||||
|
|
@ -270,9 +275,9 @@ jobs:
|
|||
|
||||
- name: Clone API snippets
|
||||
if: runner.os != 'macOS'
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: docs/snippets
|
||||
sparse-checkout: openvino/docs/snippets
|
||||
path: ${{ env.OPENVINO_REPO }}
|
||||
submodules: 'false'
|
||||
|
||||
|
|
@ -286,7 +291,7 @@ jobs:
|
|||
python3 ${OPENVINO_REPO}/docs/snippets/main.py
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
if: ${{ !cancelled() }}
|
||||
with:
|
||||
name: test-results-python
|
||||
|
|
|
|||
|
|
@ -17,8 +17,6 @@ on:
|
|||
type: string
|
||||
required: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
PyTorch_Models_Tests:
|
||||
name: PyTorch Models tests
|
||||
|
|
@ -49,19 +47,19 @@ jobs:
|
|||
fi
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tokenizers extension
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tokenizers_wheel
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
|
@ -85,7 +83,7 @@ jobs:
|
|||
popd
|
||||
|
||||
- name: Fetch setup_python action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
|
|
@ -142,29 +140,18 @@ jobs:
|
|||
USE_SYSTEM_CACHE: False
|
||||
OP_REPORT_FILE: ${{ env.INSTALL_TEST_DIR }}/TEST-torch_unsupported_ops.log
|
||||
|
||||
- name: PagedAttention Test
|
||||
if: always()
|
||||
run: |
|
||||
export PYTHONPATH=${MODEL_HUB_TESTS_INSTALL_DIR}:$PYTHONPATH
|
||||
python3 -m pytest ${MODEL_HUB_TESTS_INSTALL_DIR}/pytorch/test_pa_transformation.py -m ${TYPE} --html=${INSTALL_TEST_DIR}/TEST-torch_pagedattention_tests.html --self-contained-html -v --tb=short
|
||||
env:
|
||||
TYPE: ${{ inputs.event == 'schedule' && 'nightly' || 'precommit'}}
|
||||
TEST_DEVICE: CPU
|
||||
USE_SYSTEM_CACHE: False
|
||||
OP_REPORT_FILE: ${{ env.INSTALL_TEST_DIR }}/TEST-torch_unsupported_ops.log
|
||||
|
||||
- name: Reformat unsupported ops file
|
||||
if: '!cancelled()'
|
||||
run: |
|
||||
python3 ${MODEL_HUB_TESTS_INSTALL_DIR}/pytorch/scripts/process_op_report.py ${INSTALL_TEST_DIR}/TEST-torch_unsupported_ops.log
|
||||
|
||||
|
||||
- name: Available storage after tests
|
||||
run: |
|
||||
echo "Available storage:"
|
||||
df -h
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
if: ${{ !cancelled() }}
|
||||
with:
|
||||
name: test-results-torch-models
|
||||
|
|
|
|||
|
|
@ -17,8 +17,6 @@ on:
|
|||
type: string
|
||||
required: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
Samples:
|
||||
runs-on: ${{ inputs.runner }}
|
||||
|
|
@ -33,14 +31,18 @@ jobs:
|
|||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
BUILD_DIR: ${{ github.workspace }}/build
|
||||
steps:
|
||||
- name: Set apt retries
|
||||
if: runner.os == 'Linux'
|
||||
run: echo 'Acquire::Retries "10";' > /etc/apt/apt.conf.d/80-retries
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
|
@ -61,12 +63,16 @@ jobs:
|
|||
tar -xzf openvino_tests.tar.gz -C $INSTALL_DIR
|
||||
popd
|
||||
|
||||
- name: Install OpenVINO dependencies (Linux)
|
||||
if: runner.os == 'Linux'
|
||||
run: $INSTALL_DIR/install_dependencies/install_openvino_dependencies.sh -c=core -c=dev -y
|
||||
|
||||
- name: Install OpenVINO dependencies (mac)
|
||||
if: runner.os == 'macOS'
|
||||
run: brew install coreutils
|
||||
|
||||
- name: Fetch setup_python action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
|
|
@ -78,6 +84,7 @@ jobs:
|
|||
with:
|
||||
version: '3.11'
|
||||
should-setup-pip-paths: 'false'
|
||||
self-hosted-runner: ${{ runner.os == 'Linux' }}
|
||||
|
||||
- name: Build cpp samples - GCC
|
||||
run: $INSTALL_DIR/samples/cpp/build_samples.sh -i $INSTALL_DIR -b $BUILD_DIR/cpp_samples
|
||||
|
|
@ -87,7 +94,7 @@ jobs:
|
|||
- name: Build cpp samples - Clang
|
||||
if: runner.os == 'Linux'
|
||||
run: |
|
||||
apt-get update && apt-get install -y clang
|
||||
apt-get install -y clang
|
||||
$INSTALL_DIR/samples/cpp/build_samples.sh -i $INSTALL_DIR -b $BUILD_DIR/cpp_samples_clang
|
||||
env:
|
||||
CMAKE_COMPILE_WARNING_AS_ERROR: 'ON'
|
||||
|
|
|
|||
|
|
@ -21,8 +21,6 @@ on:
|
|||
type: string
|
||||
required: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
env:
|
||||
PIP_CACHE_PATH: /mount/caches/pip/linux
|
||||
PYTHON_VERSION: '3.11'
|
||||
|
|
@ -43,20 +41,24 @@ jobs:
|
|||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
LAYER_TESTS_INSTALL_DIR: ${{ github.workspace }}/install/tests/layer_tests
|
||||
steps:
|
||||
- name: Set apt retries
|
||||
if: runner.os == 'Linux'
|
||||
run: echo 'Acquire::Retries "10";' > /etc/apt/apt.conf.d/80-retries
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
||||
- name: Download OpenVINO tokenizers extension
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tokenizers_wheel
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
|
@ -90,8 +92,12 @@ jobs:
|
|||
Expand-Archive openvino_tests.zip -DestinationPath ${{ env.INSTALL_DIR }}
|
||||
popd
|
||||
|
||||
- name: Install OpenVINO dependencies (Linux)
|
||||
if: runner.os == 'Linux'
|
||||
run: $INSTALL_DIR/install_dependencies/install_openvino_dependencies.sh -c=core -c=dev -y -c=gpu
|
||||
|
||||
- name: Fetch setup_python action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
|
|
@ -158,7 +164,7 @@ jobs:
|
|||
TEST_PRECISION: FP16
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
if: ${{ !cancelled() }}
|
||||
with:
|
||||
name: test-results-python-tf-layers
|
||||
|
|
|
|||
|
|
@ -17,8 +17,6 @@ on:
|
|||
type: string
|
||||
required: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
TensorFlow_Models_Tests:
|
||||
name: TensorFlow Models tests
|
||||
|
|
@ -36,20 +34,33 @@ jobs:
|
|||
MODEL_HUB_TESTS_INSTALL_DIR: ${{ github.workspace }}/install/tests/model_hub_tests
|
||||
NUMBER_OF_REPLICAS: 2
|
||||
steps:
|
||||
- name: Check sudo
|
||||
if: ${{ runner.os == 'Linux' }}
|
||||
run: if [ "$(id -u)" -eq 0 ]; then apt update && apt --assume-yes install sudo; fi
|
||||
|
||||
- name: Set apt retries
|
||||
if: runner.os == 'Linux'
|
||||
run: |
|
||||
if [ "$(id -u)" -eq 0 ]; then
|
||||
echo 'Acquire::Retries "10";' > /etc/apt/apt.conf.d/80-retries
|
||||
else
|
||||
sudo sh -c "echo 'Acquire::Retries \"10\";' >> /etc/apt/apt.conf.d/80-retries"
|
||||
fi
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tokenizers extension
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tokenizers_wheel
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
|
@ -77,13 +88,19 @@ jobs:
|
|||
popd
|
||||
|
||||
- name: Fetch setup_python action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
sparse-checkout-cone-mode: false
|
||||
path: 'openvino'
|
||||
|
||||
- name: Install dependencies
|
||||
if: ${{ runner.os == 'Linux' }}
|
||||
run: |
|
||||
# install git (required to build pip deps from the sources)
|
||||
sudo apt-get install --assume-yes --no-install-recommends g++ git ca-certificates wget
|
||||
|
||||
- name: Setup Python 3.11
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
|
|
@ -114,7 +131,7 @@ jobs:
|
|||
TEST_DEVICE: CPU
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
if: ${{ !cancelled() }}
|
||||
with:
|
||||
name: test-results-tensorflow-models-${{ inputs.model_scope }}
|
||||
|
|
|
|||
|
|
@ -21,8 +21,6 @@ on:
|
|||
type: string
|
||||
required: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
env:
|
||||
PIP_CACHE_PATH: /mount/caches/pip/linux
|
||||
PYTHON_VERSION: '3.11'
|
||||
|
|
@ -50,7 +48,7 @@ jobs:
|
|||
echo "EXTENSION_BUILD_DIR=$GITHUB_WORKSPACE/build" >> "$GITHUB_ENV"
|
||||
|
||||
- name: checkout action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python
|
||||
|
|
@ -66,14 +64,14 @@ jobs:
|
|||
self-hosted-runner: ${{ runner.os == 'Linux' }}
|
||||
|
||||
- name: Clone OpenVINO Tokenizers
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/openvino_tokenizers'
|
||||
path: ${{ env.OPENVINO_TOKENIZERS_REPO }}
|
||||
ref: 'master'
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
|
@ -96,6 +94,10 @@ jobs:
|
|||
# Dependencies
|
||||
#
|
||||
|
||||
- name: Install build dependencies (Linux)
|
||||
if: runner.os == 'Linux'
|
||||
run: ./install_build_dependencies.sh
|
||||
|
||||
- name: Install python dependencies
|
||||
run: |
|
||||
# wheel packaging
|
||||
|
|
@ -130,7 +132,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino tokenizers wheel
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_tokenizers_wheel
|
||||
path: ${{ env.EXTENSION_BUILD_DIR }}/*.whl
|
||||
|
|
|
|||
|
|
@ -2,8 +2,6 @@ name: "Pull Request Labeler"
|
|||
on:
|
||||
- pull_request_target
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
triage:
|
||||
permissions:
|
||||
|
|
@ -11,20 +9,20 @@ jobs:
|
|||
pull-requests: write
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: akladiev/labeler@eeac5941e7fb6f980d47e038ac0665168851c874 # v4.3.1
|
||||
- uses: akladiev/labeler@v4.3.1
|
||||
with:
|
||||
repo-token: "${{ secrets.GITHUB_TOKEN }}"
|
||||
configuration-path: '.github/labeler.yml'
|
||||
sync-labels: 'true'
|
||||
dot: 'true'
|
||||
non-matching-label: 'no-match-files'
|
||||
|
||||
|
||||
external_pr_labeller:
|
||||
name: Label External PR
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout Labeller Script
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: '.github'
|
||||
|
||||
|
|
|
|||
|
|
@ -16,8 +16,6 @@ concurrency:
|
|||
group: ${{ github.event_name == 'push' && github.run_id || github.ref }}-linux
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
env:
|
||||
PIP_CACHE_PATH: /mount/caches/pip/linux
|
||||
PYTHON_VERSION: '3.11'
|
||||
|
|
@ -27,11 +25,10 @@ jobs:
|
|||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
affected_components: "${{ steps.smart_ci.outputs.affected_components }}"
|
||||
changed_components: "${{ steps.smart_ci.outputs.changed_components }}"
|
||||
skip_workflow: "${{ steps.smart_ci.outputs.skip_workflow }}"
|
||||
steps:
|
||||
- name: checkout action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/actions/smart-ci
|
||||
|
||||
|
|
@ -48,44 +45,15 @@ jobs:
|
|||
skip_when_only_listed_labels_set: 'docs'
|
||||
skip_when_only_listed_files_changed: '*.md,*.rst,*.png,*.jpg,*.svg'
|
||||
|
||||
- name: Show affected components
|
||||
run: |
|
||||
echo "${{ toJSON(steps.smart_ci.outputs.affected_components) }}"
|
||||
shell: bash
|
||||
|
||||
Docker:
|
||||
needs: Smart_CI
|
||||
runs-on: aks-linux-4-cores-16gb-docker-build
|
||||
container:
|
||||
image: openvinogithubactions.azurecr.io/docker_build:0.2
|
||||
volumes:
|
||||
- /mount:/mount
|
||||
outputs:
|
||||
images: "${{ steps.handle_docker.outputs.images }}"
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
|
||||
- uses: ./.github/actions/handle_docker
|
||||
id: handle_docker
|
||||
with:
|
||||
images: |
|
||||
ov_build/ubuntu_20_04_x64
|
||||
ov_build/ubuntu_20_04_x64_nvidia
|
||||
ov_test/ubuntu_20_04_x64
|
||||
registry: 'openvinogithubactions.azurecr.io'
|
||||
dockerfiles_root_dir: '.github/dockerfiles'
|
||||
changed_components: ${{ needs.smart_ci.outputs.changed_components }}
|
||||
|
||||
Build:
|
||||
needs: [Docker, Smart_CI]
|
||||
needs: Smart_CI
|
||||
timeout-minutes: 150
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: aks-linux-16-cores-32gb
|
||||
container:
|
||||
image: ${{ fromJSON(needs.docker.outputs.images).ov_build.ubuntu_20_04_x64 }}
|
||||
image: openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04
|
||||
volumes:
|
||||
- /mount:/mount
|
||||
options: -e SCCACHE_AZURE_BLOB_CONTAINER -e SCCACHE_AZURE_CONNECTION_STRING
|
||||
|
|
@ -112,28 +80,28 @@ jobs:
|
|||
if: "!needs.smart_ci.outputs.skip_workflow"
|
||||
|
||||
steps:
|
||||
- name: Set apt retries
|
||||
run: echo 'Acquire::Retries "10";' > /etc/apt/apt.conf.d/80-retries
|
||||
|
||||
- name: Install git
|
||||
run: |
|
||||
apt-get update
|
||||
apt-get install --assume-yes --no-install-recommends git ca-certificates
|
||||
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: ${{ env.OPENVINO_REPO }}
|
||||
submodules: 'true'
|
||||
|
||||
# Ticket: 139627
|
||||
- name: Checkout the latest OneDNN for GPU in nightly
|
||||
if: ${{ github.event_name == 'schedule' }}
|
||||
working-directory: ${{ env.OPENVINO_REPO }}/src/plugins/intel_gpu/thirdparty/onednn_gpu
|
||||
run: |
|
||||
git fetch origin
|
||||
git checkout main
|
||||
git rev-parse HEAD
|
||||
|
||||
- name: Clone OpenVINO Contrib
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/openvino_contrib'
|
||||
path: ${{ env.OPENVINO_CONTRIB_REPO }}
|
||||
submodules: 'true'
|
||||
ref: 'master'
|
||||
# ref: 'master'
|
||||
ref: 3eeb2326e0d974f61a83f8e67d37e918ccfa1edd
|
||||
|
||||
#
|
||||
# Print system info
|
||||
|
|
@ -146,6 +114,26 @@ jobs:
|
|||
# Dependencies
|
||||
#
|
||||
|
||||
- name: Install build dependencies
|
||||
run: |
|
||||
bash ${OPENVINO_REPO}/install_build_dependencies.sh
|
||||
# default-jdk - Java API
|
||||
apt install --assume-yes --no-install-recommends default-jdk
|
||||
|
||||
- name: Install sccache
|
||||
uses: mozilla-actions/sccache-action@v0.0.4
|
||||
with:
|
||||
version: "v0.7.5"
|
||||
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
version: ${{ env.PYTHON_VERSION }}
|
||||
pip-cache-path: ${{ env.PIP_CACHE_PATH }}
|
||||
should-setup-pip-paths: 'true'
|
||||
self-hosted-runner: 'true'
|
||||
show-cache-info: 'true'
|
||||
|
||||
- name: Install python dependencies
|
||||
run: |
|
||||
# For Python API: build and wheel packaging
|
||||
|
|
@ -175,6 +163,7 @@ jobs:
|
|||
-DENABLE_NCC_STYLE=OFF \
|
||||
-DENABLE_TESTS=ON \
|
||||
-DENABLE_STRICT_DEPENDENCIES=OFF \
|
||||
-DENABLE_SYSTEM_TBB=ON \
|
||||
-DENABLE_SYSTEM_OPENCL=ON \
|
||||
-DCMAKE_VERBOSE_MAKEFILE=ON \
|
||||
-DCPACK_GENERATOR=TGZ \
|
||||
|
|
@ -225,8 +214,6 @@ jobs:
|
|||
/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
|
||||
cmake -UPYTHON* \
|
||||
-UTBB* \
|
||||
-DENABLE_SYSTEM_TBB=ON \
|
||||
-DENABLE_PYTHON_PACKAGING=ON \
|
||||
-DENABLE_TESTS=OFF \
|
||||
-DPython3_EXECUTABLE=/usr/bin/python3.8 \
|
||||
|
|
@ -237,8 +224,9 @@ jobs:
|
|||
- 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/java_api;${OPENVINO_CONTRIB_REPO}/modules/custom_operations" \
|
||||
-DOPENVINO_EXTRA_MODULES=${OPENVINO_CONTRIB_REPO}/modules \
|
||||
-S ${OPENVINO_REPO} \
|
||||
-B ${BUILD_DIR}
|
||||
cmake --build ${BUILD_DIR} --parallel --config ${{ env.CMAKE_BUILD_TYPE }}
|
||||
|
|
@ -256,7 +244,7 @@ jobs:
|
|||
# Upload build artifacts and logs
|
||||
#
|
||||
- name: Upload build logs
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
if: always()
|
||||
with:
|
||||
name: build_logs
|
||||
|
|
@ -265,7 +253,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.BUILD_DIR }}/openvino_package.tar.gz
|
||||
|
|
@ -273,7 +261,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino js package
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).JS_API
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_js_package
|
||||
path: ${{ env.INSTALL_DIR_JS }}
|
||||
|
|
@ -281,7 +269,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino developer package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_developer_package
|
||||
path: ${{ env.BUILD_DIR }}/openvino_developer_package.tar.gz
|
||||
|
|
@ -289,7 +277,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino debian packages
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_debian_packages
|
||||
path: ${{ env.BUILD_DIR }}/*.deb
|
||||
|
|
@ -297,7 +285,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino tests package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.BUILD_DIR }}/openvino_tests.tar.gz
|
||||
|
|
@ -312,22 +300,22 @@ jobs:
|
|||
image: 'openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04'
|
||||
|
||||
Samples:
|
||||
needs: [ Docker, Build, Smart_CI ]
|
||||
needs: [ Build, Smart_CI ]
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).samples
|
||||
uses: ./.github/workflows/job_samples_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-4-cores-16gb'
|
||||
image: ${{ fromJSON(needs.docker.outputs.images).ov_test.ubuntu_20_04_x64 }}
|
||||
image: 'openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04'
|
||||
affected-components: ${{ needs.smart_ci.outputs.affected_components }}
|
||||
|
||||
JS_API:
|
||||
name: OpenVINO JS API
|
||||
needs: [ Docker, Build, Smart_CI ]
|
||||
needs: [ Build, Smart_CI ]
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).JS_API
|
||||
uses: ./.github/workflows/job_openvino_js.yml
|
||||
with:
|
||||
runner: 'aks-linux-4-cores-16gb'
|
||||
container: '{"image": "${{ fromJSON(needs.docker.outputs.images).ov_build.ubuntu_20_04_x64 }}"}'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04"}'
|
||||
|
||||
Conformance:
|
||||
needs: [ Build, Smart_CI ]
|
||||
|
|
@ -362,13 +350,13 @@ jobs:
|
|||
#
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
|
@ -383,7 +371,7 @@ jobs:
|
|||
popd
|
||||
|
||||
- name: Fetch setup_python action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
|
|
@ -427,7 +415,7 @@ jobs:
|
|||
|
||||
- name: Upload Conformance Artifacts
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: conformance_artifacts_${{ matrix.TEST_TYPE }}-${{ env.TEST_DEVICE }}
|
||||
path: ${{ env.CONFORMANCE_ARTIFACTS_DIR }}/conformance_artifacts.tar.gz
|
||||
|
|
@ -453,7 +441,7 @@ jobs:
|
|||
|
||||
- name: Upload Conformance Artifacts
|
||||
if: ${{ matrix.TEST_TYPE == 'API' }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: conformance_artifacts_${{ matrix.TEST_TYPE }}-TEMPLATE
|
||||
path: ${{ env.CONFORMANCE_ARTIFACTS_DIR }}/conformance_artifacts.tar.gz
|
||||
|
|
@ -463,90 +451,90 @@ jobs:
|
|||
name: ONNX Runtime Integration
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).ONNX_RT ||
|
||||
fromJSON(needs.smart_ci.outputs.affected_components).ONNX_FE
|
||||
needs: [ Build, Smart_CI, Docker ]
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_onnx_runtime.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-32gb'
|
||||
container: '{"image": "${{ fromJSON(needs.docker.outputs.images).ov_build.ubuntu_20_04_x64 }}", "volumes": ["/mount:/mount"], "options": "-e SCCACHE_AZURE_BLOB_CONTAINER -e SCCACHE_AZURE_CONNECTION_STRING"}'
|
||||
sccache-azure-key-prefix: 'ubuntu20_x86_64_onnxruntime'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:22.04", "volumes": ["/mount:/mount"], "options": "-e SCCACHE_AZURE_BLOB_CONTAINER -e SCCACHE_AZURE_CONNECTION_STRING"}'
|
||||
sccache-azure-key-prefix: 'ubuntu22_x86_64_onnxruntime'
|
||||
|
||||
ONNX_Models:
|
||||
name: ONNX Models Tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).Python_API.test ||
|
||||
fromJSON(needs.smart_ci.outputs.affected_components).ONNX_FE.test
|
||||
needs: [ Docker, Build, Smart_CI ]
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_onnx_models_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-64gb'
|
||||
container: '{"image": "${{ fromJSON(needs.docker.outputs.images).ov_build.ubuntu_20_04_x64 }}", "volumes": ["/mount:/mount"]}'
|
||||
runner: 'aks-linux-16-cores-32gb'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04", "volumes": ["/mount:/mount"]}'
|
||||
|
||||
CXX_Unit_Tests:
|
||||
name: C++ unit tests
|
||||
needs: [ Docker, Build, Smart_CI ]
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_cxx_unit_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-4-cores-16gb'
|
||||
image: ${{ fromJSON(needs.docker.outputs.images).ov_test.ubuntu_20_04_x64 }}
|
||||
image: 'openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04'
|
||||
affected-components: ${{ needs.smart_ci.outputs.affected_components }}
|
||||
|
||||
Python_Unit_Tests:
|
||||
name: Python unit tests
|
||||
needs: [ Docker, Build, Smart_CI ]
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_python_unit_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-4-cores-16gb'
|
||||
container: '{"image": "${{ fromJSON(needs.docker.outputs.images).ov_build.ubuntu_20_04_x64 }}", "volumes": ["/mount:/mount"]}'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04", "volumes": ["/mount:/mount"]}'
|
||||
affected-components: ${{ needs.smart_ci.outputs.affected_components }}
|
||||
|
||||
TensorFlow_Layer_Tests:
|
||||
name: TensorFlow Layer Tests
|
||||
needs: [ Docker, Build, Smart_CI, Openvino_tokenizers ]
|
||||
needs: [ Build, Smart_CI, Openvino_tokenizers ]
|
||||
uses: ./.github/workflows/job_tensorflow_layer_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-4-cores-16gb'
|
||||
shell: bash
|
||||
container: '{"image": "${{ fromJSON(needs.docker.outputs.images).ov_build.ubuntu_20_04_x64 }}", "volumes": ["/mount:/mount"]}'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04", "volumes": ["/mount:/mount"]}'
|
||||
affected-components: ${{ needs.smart_ci.outputs.affected_components }}
|
||||
|
||||
CPU_Functional_Tests:
|
||||
name: CPU functional tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).CPU.test
|
||||
needs: [ Docker, Build, Smart_CI ]
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_cpu_functional_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-8-cores-32gb'
|
||||
image: ${{ fromJSON(needs.docker.outputs.images).ov_test.ubuntu_20_04_x64 }}
|
||||
image: 'openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04'
|
||||
|
||||
TensorFlow_Models_Tests_Precommit:
|
||||
name: TensorFlow Models tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).TF_FE.test ||
|
||||
fromJSON(needs.smart_ci.outputs.affected_components).TFL_FE.test
|
||||
needs: [ Docker, Build, Smart_CI, Openvino_tokenizers ]
|
||||
needs: [ Build, Smart_CI, Openvino_tokenizers ]
|
||||
uses: ./.github/workflows/job_tensorflow_models_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-8-cores-16gb'
|
||||
model_scope: 'precommit'
|
||||
container: '{"image": "${{ fromJSON(needs.docker.outputs.images).ov_build.ubuntu_20_04_x64 }}", "volumes": ["/mount:/mount"]}'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04", "volumes": ["/mount:/mount"]}'
|
||||
|
||||
TensorFlow_Models_Tests_Nightly_TF_HUB:
|
||||
name: TensorFlow TF Hub Models tests
|
||||
if: ${{ github.event_name == 'schedule' }}
|
||||
needs: [ Docker, Build, Smart_CI, Openvino_tokenizers ]
|
||||
needs: [ Build, Smart_CI, Openvino_tokenizers ]
|
||||
uses: ./.github/workflows/job_tensorflow_models_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-8-cores-64gb'
|
||||
runner: 'aks-linux-8-cores-32gb'
|
||||
model_scope: 'nightly_tf_hub'
|
||||
container: '{"image": "${{ fromJSON(needs.docker.outputs.images).ov_build.ubuntu_20_04_x64 }}", "volumes": ["/mount:/mount"]}'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04", "volumes": ["/mount:/mount"]}'
|
||||
|
||||
TensorFlow_Models_Tests_Nightly_HF:
|
||||
name: TensorFlow Hugging Face Models tests
|
||||
if: ${{ github.event_name == 'schedule' }}
|
||||
needs: [ Docker, Build, Smart_CI, Openvino_tokenizers ]
|
||||
needs: [ Build, Smart_CI, Openvino_tokenizers ]
|
||||
uses: ./.github/workflows/job_tensorflow_models_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-8-cores-64gb'
|
||||
runner: 'aks-linux-8-cores-32gb'
|
||||
model_scope: 'nightly_hf'
|
||||
container: '{"image": "${{ fromJSON(needs.docker.outputs.images).ov_build.ubuntu_20_04_x64 }}", "volumes": ["/mount:/mount"]}'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04", "volumes": ["/mount:/mount"]}'
|
||||
|
||||
# TODO: Switch back to self-hosted runners
|
||||
# container:
|
||||
|
|
@ -564,14 +552,14 @@ jobs:
|
|||
|
||||
NVIDIA_Plugin:
|
||||
name: NVIDIA plugin
|
||||
needs: [ Docker, Build, Smart_CI ]
|
||||
needs: [ Build, Smart_CI ]
|
||||
timeout-minutes: 15
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: aks-linux-16-cores-32gb
|
||||
container:
|
||||
image: ${{ fromJSON(needs.docker.outputs.images).ov_build.ubuntu_20_04_x64_nvidia }}
|
||||
image: openvinogithubactions.azurecr.io/dockerhub/nvidia/cuda:11.8.0-runtime-ubuntu20.04
|
||||
volumes:
|
||||
- /mount:/mount
|
||||
options: -e SCCACHE_AZURE_BLOB_CONTAINER -e SCCACHE_AZURE_CONNECTION_STRING
|
||||
|
|
@ -595,14 +583,28 @@ jobs:
|
|||
if: fromJSON(needs.smart_ci.outputs.affected_components).NVIDIA
|
||||
|
||||
steps:
|
||||
- name: Set apt retries
|
||||
run: echo 'Acquire::Retries "10";' > /etc/apt/apt.conf.d/80-retries
|
||||
|
||||
- name: Fetch install_build_dependencies.sh
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
install_build_dependencies.sh
|
||||
sparse-checkout-cone-mode: false
|
||||
path: ${{ env.OPENVINO_REPO }}
|
||||
|
||||
- name: Install Prerequisites
|
||||
run: apt update && apt install -y git ca-certificates
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO Developer package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_developer_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
|
@ -618,12 +620,44 @@ jobs:
|
|||
popd
|
||||
|
||||
- name: Clone OpenVINO Contrib
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/openvino_contrib'
|
||||
path: ${{ env.OPENVINO_CONTRIB_REPO }}
|
||||
ref: 'master'
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
#
|
||||
|
||||
- name: Install build dependencies
|
||||
run: |
|
||||
${OPENVINO_REPO}/install_build_dependencies.sh
|
||||
apt -y --no-install-recommends install software-properties-common curl
|
||||
|
||||
- name: Install sccache
|
||||
uses: mozilla-actions/sccache-action@v0.0.4
|
||||
with:
|
||||
version: "v0.7.5"
|
||||
|
||||
- name: Install CUDA
|
||||
run: |
|
||||
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin
|
||||
mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600
|
||||
|
||||
apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/3bf863cc.pub
|
||||
add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/ /"
|
||||
apt update
|
||||
apt install -y \
|
||||
libcudnn8=8.9.4.*-1+cuda11.8 \
|
||||
libcudnn8-dev=8.9.4.*-1+cuda11.8 \
|
||||
libcudnn8-samples=8.9.4.*-1+cuda11.8 \
|
||||
cuda-runtime-11-8 \
|
||||
cuda-11-8 \
|
||||
libcutensor1=1.6.1.5-1 \
|
||||
libcutensor-dev=1.6.1.5-1 \
|
||||
cuda-drivers=520.61.05-1
|
||||
|
||||
#
|
||||
# Build
|
||||
#
|
||||
|
|
@ -643,53 +677,128 @@ jobs:
|
|||
|
||||
Openvino_tokenizers:
|
||||
name: OpenVINO tokenizers extension
|
||||
needs: [ Build, Smart_CI, Docker ]
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_tokenizers.yml
|
||||
with:
|
||||
runner: 'aks-linux-4-cores-16gb'
|
||||
shell: bash
|
||||
container: '{"image": "${{ fromJSON(needs.docker.outputs.images).ov_build.ubuntu_20_04_x64 }}", "volumes": ["/mount:/mount"]}'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04", "volumes": ["/mount:/mount"]}'
|
||||
affected-components: ${{ needs.smart_ci.outputs.affected_components }}
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).TOKENIZERS
|
||||
|
||||
iGPU:
|
||||
name: iGPU Tests
|
||||
GPU:
|
||||
name: GPU ${{ matrix.TEST_TYPE }} Tests
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_gpu_tests.yml
|
||||
strategy:
|
||||
max-parallel: 2
|
||||
fail-fast: false
|
||||
matrix:
|
||||
TEST_TYPE: ['unit', 'func']
|
||||
with:
|
||||
device: 'igpu'
|
||||
test_type: ${{ matrix.TEST_TYPE }}
|
||||
runner: "[ 'self-hosted', 'igpu' ]"
|
||||
container: '{"image": "ubuntu:20.04", "volumes": ["/dev/dri:/dev/dri"], "options": "--group-add 109 --group-add 44
|
||||
--device /dev/dri:/dev/dri"}'
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).GPU
|
||||
|
||||
dGPU:
|
||||
name: dGPU Tests
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_gpu_tests.yml
|
||||
timeout-minutes: 80
|
||||
runs-on: [ self-hosted, gpu ]
|
||||
strategy:
|
||||
max-parallel: 2
|
||||
fail-fast: false
|
||||
matrix:
|
||||
TEST_TYPE: ['unit', 'func']
|
||||
with:
|
||||
device: 'dgpu'
|
||||
test_type: ${{ matrix.TEST_TYPE }}
|
||||
runner: "[ 'self-hosted', 'dgpu' ]"
|
||||
container: '{"image": "ubuntu:20.04", "volumes": ["/dev/dri:/dev/dri"], "options": "--group-add 109 --group-add 44
|
||||
--device /dev/dri/card0:/dev/dri/card0 --device /dev/dri/renderD128:/dev/dri/renderD128"}'
|
||||
if: ${{ github.event_name == 'schedule' }}
|
||||
container:
|
||||
image: ubuntu:20.04
|
||||
options: --device /dev/dri:/dev/dri --group-add 109 --group-add 44
|
||||
volumes:
|
||||
- /dev/dri:/dev/dri
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
INSTALL_DIR: ${{ github.workspace }}/install
|
||||
INSTALL_TEST_DIR: ${{ github.workspace }}/install/tests
|
||||
GTEST_PARALLEL_SCRIPT: ${{ github.workspace }}/gtest_parallel.py
|
||||
steps:
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: 'openvino_package'
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: 'openvino_tests'
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
||||
# Needed as ${{ github.workspace }} is not working correctly when using Docker
|
||||
- name: Setup Variables
|
||||
run: |
|
||||
echo "INSTALL_DIR=$GITHUB_WORKSPACE/install" >> "$GITHUB_ENV"
|
||||
echo "INSTALL_TEST_DIR=$GITHUB_WORKSPACE/install/tests" >> "$GITHUB_ENV"
|
||||
echo "GTEST_PARALLEL_SCRIPT=$GITHUB_WORKSPACE/gtest_parallel.py" >> "$GITHUB_ENV"
|
||||
|
||||
- name: Extract OpenVINO packages
|
||||
run: |
|
||||
pushd $INSTALL_DIR
|
||||
tar -xzf openvino_package.tar.gz -C $INSTALL_DIR
|
||||
popd
|
||||
pushd $INSTALL_TEST_DIR
|
||||
tar -xzf openvino_tests.tar.gz -C $INSTALL_DIR
|
||||
popd
|
||||
|
||||
- name: Install dependencies (Linux)
|
||||
run: |
|
||||
$INSTALL_DIR/install_dependencies/install_openvino_dependencies.sh -c=core -c=dev -c=gpu -y
|
||||
|
||||
apt-get update && apt-get install -y wget software-properties-common ca-certificates gpg-agent tzdata
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
TZ: "Europe/London" # to prevent tzdata from waiting user input
|
||||
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: ${{ env.PYTHON_VERSION }}
|
||||
|
||||
- name: Get gtest-parallel script
|
||||
run: wget https://raw.githubusercontent.com/google/gtest-parallel/master/gtest_parallel.py
|
||||
|
||||
- name: Install GPU Drivers
|
||||
run: |
|
||||
wget https://github.com/intel/intel-graphics-compiler/releases/download/igc-1.0.15985.7/intel-igc-core_1.0.15985.7_amd64.deb
|
||||
wget https://github.com/intel/intel-graphics-compiler/releases/download/igc-1.0.15985.7/intel-igc-opencl_1.0.15985.7_amd64.deb
|
||||
wget https://github.com/intel/compute-runtime/releases/download/24.05.28454.6/intel-level-zero-gpu-dbgsym_1.3.28454.6_amd64.ddeb
|
||||
wget https://github.com/intel/compute-runtime/releases/download/24.05.28454.6/intel-level-zero-gpu_1.3.28454.6_amd64.deb
|
||||
wget https://github.com/intel/compute-runtime/releases/download/24.05.28454.6/intel-opencl-icd-dbgsym_24.05.28454.6_amd64.ddeb
|
||||
wget https://github.com/intel/compute-runtime/releases/download/24.05.28454.6/intel-opencl-icd_24.05.28454.6_amd64.deb
|
||||
wget https://github.com/intel/compute-runtime/releases/download/24.05.28454.6/libigdgmm12_22.3.11_amd64.deb
|
||||
dpkg -i *.deb
|
||||
|
||||
#
|
||||
# Tests
|
||||
#
|
||||
|
||||
- name: OpenVINO GPU ${{ matrix.TEST_TYPE }} Tests
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
|
||||
rm -rf ${INSTALL_TEST_DIR}/gpu_${{ matrix.TEST_TYPE }}_tests && mkdir -p ${INSTALL_TEST_DIR}/gpu_${{ matrix.TEST_TYPE }}_tests
|
||||
|
||||
test_filter=''
|
||||
if [[ "${{ matrix.TEST_TYPE }}" == "unit" ]]; then
|
||||
# Ticket: 138018
|
||||
test_filter='-*scatter_nd_update_gpu.dynamic_padded_output*:*border_gpu.basic_zero_input*:*bicubic_zeros_no_align_data1x1*:*bicubic_border_align_batches*:*bilinear_zeros_no_align_data1x1*:*non_zero_gpu.empty_input*:*mark_shape_of_subgraphs.concat_with_empty_tensor_inputs*:*concat_cpu_impl.dynamic_4d_f*:*border_gpu.basic_zero_input_dynamic*:*network_test.model_with_empty_input_is_not_dynamic*:*bicubic_zeros_align_data1x1*'
|
||||
else
|
||||
test_filter='*smoke*'
|
||||
fi
|
||||
python3 ${GTEST_PARALLEL_SCRIPT} ${INSTALL_TEST_DIR}/ov_gpu_${{ matrix.TEST_TYPE }}_tests --dump_json_test_results=${INSTALL_TEST_DIR}/gpu_${{ matrix.TEST_TYPE }}_tests/ov_gpu_${{ matrix.TEST_TYPE }}_tests.json -- --report_unique_name --gtest_filter=$test_filter
|
||||
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@v4
|
||||
if: always()
|
||||
with:
|
||||
name: test-results-${{ matrix.TEST_TYPE }}-gpu
|
||||
path: ${{ env.INSTALL_TEST_DIR }}/gpu_${{ matrix.TEST_TYPE }}_tests
|
||||
if-no-files-found: 'error'
|
||||
|
||||
Overall_Status:
|
||||
name: ci/gha_overall_status
|
||||
needs: [Smart_CI, Build, Debian_Packages, Samples, Conformance, ONNX_Runtime, CXX_Unit_Tests, Python_Unit_Tests, TensorFlow_Layer_Tests,
|
||||
CPU_Functional_Tests, TensorFlow_Models_Tests_Precommit, PyTorch_Models_Tests, NVIDIA_Plugin, Openvino_tokenizers, iGPU]
|
||||
CPU_Functional_Tests, TensorFlow_Models_Tests_Precommit, PyTorch_Models_Tests, NVIDIA_Plugin, Openvino_tokenizers]
|
||||
if: ${{ always() }}
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
|
|
|||
|
|
@ -13,8 +13,6 @@ concurrency:
|
|||
group: ${{ github.event_name == 'push' && github.run_id || github.ref }}-linux-arm
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
env:
|
||||
PIP_CACHE_PATH: /mount/caches/pip/linux
|
||||
PYTHON_VERSION: '3.11'
|
||||
|
|
@ -24,11 +22,10 @@ jobs:
|
|||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
affected_components: "${{ steps.smart_ci.outputs.affected_components }}"
|
||||
changed_components: "${{ steps.smart_ci.outputs.changed_components }}"
|
||||
skip_workflow: "${{ steps.smart_ci.outputs.skip_workflow }}"
|
||||
steps:
|
||||
- name: checkout action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/actions/smart-ci
|
||||
|
||||
|
|
@ -50,42 +47,20 @@ jobs:
|
|||
echo "${{ toJSON(steps.smart_ci.outputs.affected_components) }}"
|
||||
shell: bash
|
||||
|
||||
Docker:
|
||||
needs: Smart_CI
|
||||
runs-on: aks-linux-16-cores-arm-docker-build
|
||||
container:
|
||||
image: openvinogithubactions.azurecr.io/docker_build:0.2
|
||||
volumes:
|
||||
- /mount:/mount
|
||||
outputs:
|
||||
images: "${{ steps.handle_docker.outputs.images }}"
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
|
||||
- uses: ./.github/actions/handle_docker
|
||||
id: handle_docker
|
||||
with:
|
||||
images: |
|
||||
ov_build/ubuntu_20_04_arm64
|
||||
ov_test/ubuntu_20_04_arm64
|
||||
registry: 'openvinogithubactions.azurecr.io'
|
||||
dockerfiles_root_dir: '.github/dockerfiles'
|
||||
changed_components: ${{ needs.Smart_CI.outputs.changed_components }}
|
||||
|
||||
Build:
|
||||
needs: [ Smart_CI, Docker ]
|
||||
needs: Smart_CI
|
||||
timeout-minutes: 150
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: 'aks-linux-16-cores-arm'
|
||||
container:
|
||||
image: ${{ fromJSON(needs.docker.outputs.images).ov_build.ubuntu_20_04_arm64 }}
|
||||
image: openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04
|
||||
volumes:
|
||||
- /mount:/mount
|
||||
options: -e SCCACHE_AZURE_BLOB_CONTAINER -e SCCACHE_AZURE_CONNECTION_STRING
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive # to prevent apt-get from waiting user input
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
CMAKE_GENERATOR: 'Ninja Multi-Config'
|
||||
CMAKE_CXX_COMPILER_LAUNCHER: sccache
|
||||
|
|
@ -107,19 +82,26 @@ jobs:
|
|||
if: "!needs.smart_ci.outputs.skip_workflow"
|
||||
|
||||
steps:
|
||||
- name: Set apt retries
|
||||
run: echo 'Acquire::Retries "10";' > /etc/apt/apt.conf.d/80-retries
|
||||
|
||||
- name: Install git
|
||||
run: apt-get update && apt-get install --assume-yes --no-install-recommends git ca-certificates
|
||||
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: ${{ env.OPENVINO_REPO }}
|
||||
submodules: 'true'
|
||||
|
||||
- name: Clone OpenVINO Contrib
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/openvino_contrib'
|
||||
path: ${{ env.OPENVINO_CONTRIB_REPO }}
|
||||
submodules: 'true'
|
||||
ref: 'master'
|
||||
# ref: 'master'
|
||||
ref: 3eeb2326e0d974f61a83f8e67d37e918ccfa1edd
|
||||
|
||||
#
|
||||
# Print system info
|
||||
|
|
@ -132,6 +114,33 @@ jobs:
|
|||
# Dependencies
|
||||
#
|
||||
|
||||
- name: Install build dependencies
|
||||
run: |
|
||||
bash ${OPENVINO_REPO}/install_build_dependencies.sh
|
||||
|
||||
# default-jdk - Java API
|
||||
apt install --assume-yes --no-install-recommends default-jdk gcc-10 g++-10
|
||||
|
||||
# Set gcc-10 as a default one
|
||||
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 30
|
||||
update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 30
|
||||
|
||||
# For building the latest h5py
|
||||
apt install --assume-yes --no-install-recommends libhdf5-dev
|
||||
|
||||
- name: Install sccache
|
||||
uses: mozilla-actions/sccache-action@v0.0.4
|
||||
with:
|
||||
version: "v0.7.5"
|
||||
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
version: ${{ env.PYTHON_VERSION }}
|
||||
pip-cache-path: ${{ env.PIP_CACHE_PATH }}
|
||||
should-setup-pip-paths: 'true'
|
||||
show-cache-info: 'true'
|
||||
|
||||
- name: Install python dependencies
|
||||
run: |
|
||||
# For Python API: build and wheel packaging
|
||||
|
|
@ -223,8 +232,9 @@ jobs:
|
|||
- 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/java_api;${OPENVINO_CONTRIB_REPO}/modules/custom_operations" \
|
||||
-DOPENVINO_EXTRA_MODULES=${OPENVINO_CONTRIB_REPO}/modules \
|
||||
-S ${OPENVINO_REPO} \
|
||||
-B ${BUILD_DIR}
|
||||
cmake --build ${BUILD_DIR} --parallel --config ${{ env.CMAKE_BUILD_TYPE }}
|
||||
|
|
@ -247,7 +257,7 @@ jobs:
|
|||
# Upload build artifacts and logs
|
||||
#
|
||||
- name: Upload build logs
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
if: always()
|
||||
with:
|
||||
name: build_logs
|
||||
|
|
@ -256,7 +266,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.BUILD_DIR }}/openvino_package.tar.gz
|
||||
|
|
@ -264,7 +274,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino developer package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_developer_package
|
||||
path: ${{ env.BUILD_DIR }}/openvino_developer_package.tar.gz
|
||||
|
|
@ -272,7 +282,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino js package
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).JS_API
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_js_package
|
||||
path: ${{ env.INSTALL_DIR_JS }}
|
||||
|
|
@ -280,7 +290,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino debian packages
|
||||
if: ${{ 'false' }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_debian_packages
|
||||
path: ${{ env.BUILD_DIR }}/*.deb
|
||||
|
|
@ -288,7 +298,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino tests package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.BUILD_DIR }}/openvino_tests.tar.gz
|
||||
|
|
@ -304,103 +314,103 @@ jobs:
|
|||
image: 'openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04'
|
||||
|
||||
Samples:
|
||||
needs: [ Build, Docker, Smart_CI ]
|
||||
needs: [ Build, Smart_CI ]
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).samples
|
||||
uses: ./.github/workflows/job_samples_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-arm'
|
||||
image: ${{ fromJSON(needs.docker.outputs.images).ov_test.ubuntu_20_04_arm64 }}
|
||||
image: 'openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04'
|
||||
affected-components: ${{ needs.smart_ci.outputs.affected_components }}
|
||||
|
||||
JS_API:
|
||||
name: OpenVINO JS API
|
||||
needs: [ Build, Docker, Smart_CI ]
|
||||
needs: [ Build, Smart_CI ]
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).JS_API
|
||||
uses: ./.github/workflows/job_openvino_js.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-arm'
|
||||
container: '{"image": "${{ fromJSON(needs.docker.outputs.images).ov_build.ubuntu_20_04_arm64 }}"}'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04"}'
|
||||
|
||||
ONNX_Runtime:
|
||||
name: ONNX Runtime Integration
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).ONNX_RT ||
|
||||
fromJSON(needs.smart_ci.outputs.affected_components).ONNX_FE
|
||||
needs: [ Build, Smart_CI, Docker ]
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_onnx_runtime.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-arm'
|
||||
container: '{"image": "${{ fromJSON(needs.docker.outputs.images).ov_build.ubuntu_20_04_arm64 }}", "volumes": ["/mount:/mount"], "options": "-e SCCACHE_AZURE_BLOB_CONTAINER -e SCCACHE_AZURE_CONNECTION_STRING"}'
|
||||
sccache-azure-key-prefix: 'ubuntu20_aarch64_onnxruntime'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:22.04", "volumes": ["/mount:/mount"], "options": "-e SCCACHE_AZURE_BLOB_CONTAINER -e SCCACHE_AZURE_CONNECTION_STRING"}'
|
||||
sccache-azure-key-prefix: 'ubuntu22_aarch64_onnxruntime'
|
||||
|
||||
Openvino_tokenizers:
|
||||
name: OpenVINO tokenizers extension
|
||||
needs: [ Build, Docker, Smart_CI ]
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_tokenizers.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-arm'
|
||||
shell: bash
|
||||
container: '{"image": "${{ fromJSON(needs.docker.outputs.images).ov_build.ubuntu_20_04_arm64 }}", "volumes": ["/mount:/mount"]}'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04", "volumes": ["/mount:/mount"]}'
|
||||
affected-components: ${{ needs.smart_ci.outputs.affected_components }}
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).TOKENIZERS
|
||||
|
||||
CXX_Unit_Tests:
|
||||
name: C++ unit tests
|
||||
needs: [ Build, Docker, Smart_CI ]
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_cxx_unit_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-arm'
|
||||
image: ${{ fromJSON(needs.docker.outputs.images).ov_test.ubuntu_20_04_arm64 }}
|
||||
image: 'openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04'
|
||||
affected-components: ${{ needs.smart_ci.outputs.affected_components }}
|
||||
|
||||
Python_Unit_Tests:
|
||||
name: Python unit tests
|
||||
needs: [ Build, Docker, Smart_CI ]
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_python_unit_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-arm'
|
||||
container: '{"image": "${{ fromJSON(needs.docker.outputs.images).ov_test.ubuntu_20_04_arm64 }}", "volumes": ["/mount:/mount"]}'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04", "volumes": ["/mount:/mount"]}'
|
||||
affected-components: ${{ needs.smart_ci.outputs.affected_components }}
|
||||
|
||||
TensorFlow_Layer_Tests:
|
||||
name: TensorFlow Layer Tests
|
||||
needs: [ Build, Docker, Smart_CI, Openvino_tokenizers ]
|
||||
needs: [ Build, Smart_CI, Openvino_tokenizers ]
|
||||
uses: ./.github/workflows/job_tensorflow_layer_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-arm'
|
||||
shell: bash
|
||||
container: '{"image": "${{ fromJSON(needs.docker.outputs.images).ov_test.ubuntu_20_04_arm64 }}", "volumes": ["/mount:/mount"]}'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04", "volumes": ["/mount:/mount"]}'
|
||||
affected-components: ${{ needs.smart_ci.outputs.affected_components }}
|
||||
|
||||
CPU_Functional_Tests:
|
||||
name: CPU functional tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).CPU.test
|
||||
needs: [ Build, Docker, Smart_CI ]
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_cpu_functional_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-arm'
|
||||
image: ${{ fromJSON(needs.docker.outputs.images).ov_test.ubuntu_20_04_arm64 }}
|
||||
image: 'openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04'
|
||||
|
||||
TensorFlow_Models_Tests:
|
||||
name: TensorFlow Models tests
|
||||
if: ${{ 'false' }} # TODO: Enable once the dependencies are ready for arm (no tensorflow-text available for arm from PyPI)
|
||||
# if: fromJSON(needs.smart_ci.outputs.affected_components).TF_FE.test ||
|
||||
# fromJSON(needs.smart_ci.outputs.affected_components).TFL_FE.test
|
||||
needs: [ Build, Docker, Smart_CI, Openvino_tokenizers]
|
||||
needs: [ Build, Smart_CI, Openvino_tokenizers]
|
||||
uses: ./.github/workflows/job_tensorflow_models_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-arm'
|
||||
container: '{"image": "${{ fromJSON(needs.docker.outputs.images).ov_test.ubuntu_20_04_arm64 }}"}'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04"}'
|
||||
model_scope: 'precommit'
|
||||
|
||||
PyTorch_Models_Tests:
|
||||
name: PyTorch Models tests
|
||||
if: ${{ 'false' }} # TODO: Enable once the dependencies are ready for arm (no tensorflow-text available for arm from PyPI)
|
||||
# if: fromJSON(needs.smart_ci.outputs.affected_components).PyTorch_FE.test
|
||||
needs: [ Build, Docker, Smart_CI ]
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_pytorch_models_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-16-cores-arm'
|
||||
container: '{"image": "${{ fromJSON(needs.docker.outputs.images).ov_test.ubuntu_20_04_arm64 }}"}'
|
||||
container: '{"image": "openvinogithubactions.azurecr.io/dockerhub/ubuntu:20.04"}'
|
||||
event: ${{ github.event_name }}
|
||||
|
||||
Overall_Status:
|
||||
|
|
|
|||
|
|
@ -13,8 +13,6 @@ concurrency:
|
|||
group: ${{ github.event_name == 'push' && github.run_id || github.ref }}-linux-cc
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
env:
|
||||
PIP_CACHE_PATH: /mount/caches/pip/linux
|
||||
PYTHON_VERSION: '3.11'
|
||||
|
|
@ -24,11 +22,10 @@ jobs:
|
|||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
affected_components: "${{ steps.smart_ci.outputs.affected_components }}"
|
||||
changed_components: "${{ steps.smart_ci.outputs.changed_components }}"
|
||||
skip_workflow: "${{ steps.smart_ci.outputs.skip_workflow }}"
|
||||
steps:
|
||||
- name: checkout action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/actions/smart-ci
|
||||
|
||||
|
|
@ -45,43 +42,15 @@ jobs:
|
|||
skip_when_only_listed_labels_set: 'docs'
|
||||
skip_when_only_listed_files_changed: '*.md,*.rst,*.png,*.jpg,*.svg,*/layer_tests_summary/*,*/conformance/*'
|
||||
|
||||
- name: Show affected components
|
||||
run: |
|
||||
echo "${{ toJSON(steps.smart_ci.outputs.affected_components) }}"
|
||||
shell: bash
|
||||
|
||||
Docker:
|
||||
needs: Smart_CI
|
||||
runs-on: aks-linux-4-cores-16gb-docker-build
|
||||
container:
|
||||
image: openvinogithubactions.azurecr.io/docker_build:0.2
|
||||
volumes:
|
||||
- /mount:/mount
|
||||
outputs:
|
||||
images: "${{ steps.handle_docker.outputs.images }}"
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
|
||||
- uses: ./.github/actions/handle_docker
|
||||
id: handle_docker
|
||||
with:
|
||||
images: |
|
||||
ov_build/ubuntu_22_04_x64_cc
|
||||
ov_test/ubuntu_22_04_x64
|
||||
registry: 'openvinogithubactions.azurecr.io'
|
||||
dockerfiles_root_dir: '.github/dockerfiles'
|
||||
changed_components: ${{ needs.smart_ci.outputs.changed_components }}
|
||||
|
||||
Build:
|
||||
needs: [Docker, Smart_CI]
|
||||
needs: Smart_CI
|
||||
timeout-minutes: 150
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: aks-linux-16-cores-32gb
|
||||
container:
|
||||
image: ${{ fromJSON(needs.docker.outputs.images).ov_build.ubuntu_22_04_x64_cc }}
|
||||
image: openvinogithubactions.azurecr.io/dockerhub/ubuntu:22.04
|
||||
volumes:
|
||||
- /mount:/mount
|
||||
options: -e SCCACHE_AZURE_BLOB_CONTAINER -e SCCACHE_AZURE_CONNECTION_STRING
|
||||
|
|
@ -106,14 +75,22 @@ jobs:
|
|||
if: ${{ !needs.smart_ci.outputs.skip_workflow && github.event_name != 'merge_group' }}
|
||||
|
||||
steps:
|
||||
- name: Set apt retries
|
||||
run: echo 'Acquire::Retries "10";' > /etc/apt/apt.conf.d/80-retries
|
||||
|
||||
- name: Install git
|
||||
run: |
|
||||
apt-get update
|
||||
apt-get install --assume-yes --no-install-recommends git ca-certificates git-lfs
|
||||
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: ${{ env.OPENVINO_REPO }}
|
||||
submodules: 'true'
|
||||
|
||||
- name: Clone test models
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/testdata'
|
||||
path: ${{ env.MODELS_PATH }}
|
||||
|
|
@ -127,6 +104,32 @@ jobs:
|
|||
- name: System info
|
||||
uses: ./openvino/.github/actions/system_info
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
#
|
||||
|
||||
- name: Install build dependencies
|
||||
run: |
|
||||
bash ${OPENVINO_REPO}/install_build_dependencies.sh
|
||||
|
||||
# use clang as a default compiler
|
||||
apt --assume-yes install clang
|
||||
update-alternatives --install /usr/bin/cc cc /usr/bin/clang 100
|
||||
update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang++ 100
|
||||
|
||||
- name: Install sccache
|
||||
uses: mozilla-actions/sccache-action@v0.0.4
|
||||
with:
|
||||
version: "v0.7.5"
|
||||
|
||||
- name: Setup Python ${{ env.PYTHON_VERSION }}
|
||||
uses: ./openvino/.github/actions/setup_python
|
||||
with:
|
||||
version: ${{ env.PYTHON_VERSION }}
|
||||
pip-cache-path: ${{ env.PIP_CACHE_PATH }}
|
||||
should-setup-pip-paths: 'true'
|
||||
self-hosted-runner: 'true'
|
||||
|
||||
- name: Install python dependencies
|
||||
run: |
|
||||
# For running ONNX frontend unit tests
|
||||
|
|
@ -205,14 +208,11 @@ jobs:
|
|||
install_dependencies/install_openvino_dependencies.sh
|
||||
popd
|
||||
|
||||
cp -v ${OPENVINO_REPO}/temp/tbb/lib/lib* ${INSTALL_TEST_DIR}/tests
|
||||
pushd ${INSTALL_TEST_DIR}
|
||||
tar -czvf ${BUILD_DIR}/openvino_tests.tar.gz \
|
||||
tests/ov_cpu_func_tests \
|
||||
tests/libopenvino_template_extension.so \
|
||||
tests/libze_loader.so* \
|
||||
tests/libhwloc* \
|
||||
tests/libtbb* \
|
||||
tests/functional_test_utils/layer_tests_summary/*
|
||||
popd
|
||||
|
||||
|
|
@ -220,7 +220,7 @@ jobs:
|
|||
# Upload build artifacts and logs
|
||||
#
|
||||
- name: Upload build logs
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
if: always()
|
||||
with:
|
||||
name: build_logs
|
||||
|
|
@ -229,7 +229,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.BUILD_DIR }}/openvino_package.tar.gz
|
||||
|
|
@ -237,7 +237,7 @@ jobs:
|
|||
|
||||
- name: Upload selective build statistics package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_selective_build_stat
|
||||
path: ${{ env.BUILD_DIR }}/openvino_selective_build_stat.tar.gz
|
||||
|
|
@ -245,7 +245,7 @@ jobs:
|
|||
|
||||
- name: Upload OpenVINO tests package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.BUILD_DIR }}/openvino_tests.tar.gz
|
||||
|
|
@ -253,14 +253,14 @@ jobs:
|
|||
|
||||
CC_Build:
|
||||
name: Conditional Compilation
|
||||
needs: [Build, Docker]
|
||||
needs: Build
|
||||
timeout-minutes: 20
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
runs-on: aks-linux-16-cores-32gb
|
||||
container:
|
||||
image: ${{ fromJSON(needs.docker.outputs.images).ov_build.ubuntu_22_04_x64_cc }}
|
||||
image: openvinogithubactions.azurecr.io/dockerhub/ubuntu:22.04
|
||||
volumes:
|
||||
- /mount:/mount
|
||||
options: -e SCCACHE_AZURE_BLOB_CONTAINER -e SCCACHE_AZURE_CONNECTION_STRING
|
||||
|
|
@ -278,14 +278,20 @@ jobs:
|
|||
SCCACHE_AZURE_KEY_PREFIX: ubuntu22_x86_64_cc_Release
|
||||
|
||||
steps:
|
||||
- name: Set apt retries
|
||||
run: echo 'Acquire::Retries "10";' > /etc/apt/apt.conf.d/80-retries
|
||||
|
||||
- name: Install git
|
||||
run: apt-get update && apt-get install --assume-yes --no-install-recommends git ca-certificates git-lfs
|
||||
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: ${{ env.OPENVINO_REPO }}
|
||||
submodules: 'true'
|
||||
|
||||
- name: Clone test models
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/testdata'
|
||||
path: ${{ env.MODELS_PATH }}
|
||||
|
|
@ -293,7 +299,7 @@ jobs:
|
|||
ref: 'master'
|
||||
|
||||
- name: Download selective build statistics package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_selective_build_stat
|
||||
path: ${{ env.SELECTIVE_BUILD_STAT_DIR }}
|
||||
|
|
@ -302,6 +308,17 @@ jobs:
|
|||
run: tar -xvzf ${SELECTIVE_BUILD_STAT_DIR}/openvino_selective_build_stat.tar.gz -C ${SELECTIVE_BUILD_STAT_DIR}
|
||||
|
||||
#
|
||||
# Dependencies
|
||||
#
|
||||
|
||||
- name: Install build dependencies
|
||||
run: bash ${OPENVINO_REPO}/install_build_dependencies.sh
|
||||
|
||||
- name: Install sccache
|
||||
uses: mozilla-actions/sccache-action@v0.0.4
|
||||
with:
|
||||
version: "v0.7.5"
|
||||
#
|
||||
# Build
|
||||
#
|
||||
|
||||
|
|
@ -336,11 +353,11 @@ jobs:
|
|||
CPU_Functional_Tests:
|
||||
name: CPU functional tests
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).CPU.test
|
||||
needs: [ Docker, Build, Smart_CI ]
|
||||
needs: [ Build, Smart_CI ]
|
||||
uses: ./.github/workflows/job_cpu_functional_tests.yml
|
||||
with:
|
||||
runner: 'aks-linux-8-cores-32gb'
|
||||
image: ${{ fromJSON(needs.docker.outputs.images).ov_test.ubuntu_22_04_x64 }}
|
||||
image: 'openvinogithubactions.azurecr.io/dockerhub/ubuntu:22.04'
|
||||
|
||||
Overall_Status:
|
||||
name: ci/gha_overall_status_linux_cc
|
||||
|
|
|
|||
|
|
@ -16,8 +16,6 @@ concurrency:
|
|||
group: ${{ github.event_name == 'push' && github.run_id || github.ref }}-linux-riscv
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
Smart_CI:
|
||||
runs-on: ubuntu-latest
|
||||
|
|
@ -26,7 +24,7 @@ jobs:
|
|||
skip_workflow: "${{ steps.smart_ci.outputs.skip_workflow }}"
|
||||
steps:
|
||||
- name: checkout action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/actions/smart-ci
|
||||
|
||||
|
|
@ -77,7 +75,7 @@ jobs:
|
|||
run: apt-get update && apt-get install --assume-yes --no-install-recommends git ca-certificates
|
||||
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: 'openvino'
|
||||
|
||||
|
|
|
|||
|
|
@ -11,8 +11,6 @@ concurrency:
|
|||
group: ${{ github.event_name == 'push' && github.run_id || github.ref }}-linux-sanitizers
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
env:
|
||||
PIP_CACHE_PATH: /mount/caches/pip/linux
|
||||
PYTHON_VERSION: '3.11'
|
||||
|
|
@ -64,13 +62,13 @@ jobs:
|
|||
apt-get install --assume-yes --no-install-recommends git ca-certificates
|
||||
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: ${{ env.OPENVINO_REPO }}
|
||||
submodules: 'true'
|
||||
|
||||
- name: Clone OpenVINO Contrib
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/openvino_contrib'
|
||||
path: ${{ env.OPENVINO_CONTRIB_REPO }}
|
||||
|
|
@ -186,7 +184,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_package_${{ matrix.SANITIZER }}
|
||||
path: ${{ env.BUILD_DIR }}/openvino_package.tar.gz
|
||||
|
|
@ -194,7 +192,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino tests package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_tests_${{ matrix.SANITIZER }}
|
||||
path: ${{ env.BUILD_DIR }}/openvino_tests.tar.gz
|
||||
|
|
@ -230,13 +228,13 @@ jobs:
|
|||
run: echo 'Acquire::Retries "10";' > /etc/apt/apt.conf.d/80-retries
|
||||
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: ${{ format('openvino_package_{0}', matrix.SANITIZER) }}
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: ${{ format('openvino_tests_{0}', matrix.SANITIZER) }}
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
|
@ -266,7 +264,7 @@ jobs:
|
|||
apt update && apt --assume-yes install clang lld
|
||||
|
||||
- name: Fetch Sanitizer Suppression Lists
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
tests/lsan/suppressions.txt
|
||||
|
|
@ -403,7 +401,7 @@ jobs:
|
|||
--gtest_output=xml:${INSTALL_TEST_DIR}/TEST-OpImplTests.xml
|
||||
|
||||
- name: AUTO unit tests
|
||||
if: always()
|
||||
if: ${{ 'false' }} # Ticket: 134423
|
||||
run: |
|
||||
source ${INSTALL_DIR}/setupvars.sh
|
||||
${INSTALL_TEST_DIR}/ov_auto_unit_tests --gtest_print_time=1 \
|
||||
|
|
@ -462,7 +460,7 @@ jobs:
|
|||
${INSTALL_TEST_DIR}/ov_hetero_func_tests --gtest_print_time=1 --gtest_output=xml:${INSTALL_TEST_DIR}/TEST-OVHeteroFuncTests.xml --gtest_filter="*smoke*"
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
if: ${{ !cancelled() }}
|
||||
with:
|
||||
name: test-results-cpp
|
||||
|
|
|
|||
|
|
@ -29,12 +29,11 @@ concurrency:
|
|||
group: ${{ github.event_name == 'push' && github.run_id || github.ref }}-mac-main
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
env:
|
||||
PYTHON_VERSION: '3.11'
|
||||
|
||||
jobs:
|
||||
|
||||
Smart_CI:
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
|
|
@ -42,7 +41,7 @@ jobs:
|
|||
skip_workflow: "${{ steps.smart_ci.outputs.skip_workflow }}"
|
||||
steps:
|
||||
- name: checkout action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/actions/smart-ci
|
||||
|
||||
|
|
@ -80,13 +79,13 @@ jobs:
|
|||
BUILD_DIR: ${{ github.workspace }}/build
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: 'openvino'
|
||||
submodules: 'true'
|
||||
|
||||
- name: Clone OpenVINO Contrib
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/openvino_contrib'
|
||||
path: 'openvino_contrib'
|
||||
|
|
@ -131,7 +130,7 @@ jobs:
|
|||
#
|
||||
|
||||
- name: Setup ccache
|
||||
uses: hendrikmuhs/ccache-action@c92f40bee50034e84c763e33b317c77adaa81c92 # v1.2.13
|
||||
uses: hendrikmuhs/ccache-action@v1.2
|
||||
with:
|
||||
max-size: "2000M"
|
||||
# Should save cache only if run in the master branch of the base repo
|
||||
|
|
@ -181,8 +180,10 @@ jobs:
|
|||
- name: Cmake & Build - OpenVINO Contrib
|
||||
run: |
|
||||
cmake \
|
||||
-DBUILD_nvidia_plugin=OFF \
|
||||
-DBUILD_java_api=OFF \
|
||||
-DCUSTOM_OPERATIONS="calculate_grid;complex_mul;fft;grid_sample;sparse_conv;sparse_conv_transpose" \
|
||||
-DOPENVINO_EXTRA_MODULES=${{ env.OPENVINO_CONTRIB_REPO }}/modules/custom_operations \
|
||||
-DOPENVINO_EXTRA_MODULES=${{ env.OPENVINO_CONTRIB_REPO }}/modules \
|
||||
-S ${{ env.OPENVINO_REPO }} \
|
||||
-B ${{ env.BUILD_DIR }}
|
||||
cmake --build ${{ env.BUILD_DIR }} --parallel --config ${{ env.CMAKE_BUILD_TYPE }}
|
||||
|
|
@ -204,7 +205,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.BUILD_DIR }}/openvino_package.tar.gz
|
||||
|
|
@ -212,7 +213,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino tests package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.BUILD_DIR }}/openvino_tests.tar.gz
|
||||
|
|
@ -220,7 +221,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino js package
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).JS_API
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_js_package
|
||||
path: ${{ env.INSTALL_DIR_JS }}
|
||||
|
|
|
|||
|
|
@ -29,8 +29,6 @@ concurrency:
|
|||
group: ${{ github.event_name == 'push' && github.run_id || github.ref }}-mac-arm64
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
env:
|
||||
PYTHON_VERSION: '3.11'
|
||||
|
||||
|
|
@ -42,7 +40,7 @@ jobs:
|
|||
skip_workflow: "${{ steps.smart_ci.outputs.skip_workflow }}"
|
||||
steps:
|
||||
- name: checkout action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/actions/smart-ci
|
||||
|
||||
|
|
@ -80,13 +78,13 @@ jobs:
|
|||
BUILD_DIR: ${{ github.workspace }}/build
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: 'openvino'
|
||||
submodules: 'true'
|
||||
|
||||
- name: Clone OpenVINO Contrib
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/openvino_contrib'
|
||||
path: 'openvino_contrib'
|
||||
|
|
@ -131,7 +129,7 @@ jobs:
|
|||
#
|
||||
|
||||
- name: Setup ccache
|
||||
uses: hendrikmuhs/ccache-action@c92f40bee50034e84c763e33b317c77adaa81c92 # v1.2.13
|
||||
uses: hendrikmuhs/ccache-action@v1.2
|
||||
with:
|
||||
max-size: "2000M"
|
||||
# Should save cache only if run in the master branch of the base repo
|
||||
|
|
@ -181,8 +179,10 @@ jobs:
|
|||
- name: Cmake & Build - OpenVINO Contrib
|
||||
run: |
|
||||
cmake \
|
||||
-DBUILD_nvidia_plugin=OFF \
|
||||
-DBUILD_java_api=OFF \
|
||||
-DCUSTOM_OPERATIONS="calculate_grid;complex_mul;fft;grid_sample;sparse_conv;sparse_conv_transpose" \
|
||||
-DOPENVINO_EXTRA_MODULES=${{ env.OPENVINO_CONTRIB_REPO }}/modules/custom_operations \
|
||||
-DOPENVINO_EXTRA_MODULES=${{ env.OPENVINO_CONTRIB_REPO }}/modules \
|
||||
-S ${{ env.OPENVINO_REPO }} \
|
||||
-B ${{ env.BUILD_DIR }}
|
||||
cmake --build ${{ env.BUILD_DIR }} --parallel --config ${{ env.CMAKE_BUILD_TYPE }}
|
||||
|
|
@ -204,7 +204,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.BUILD_DIR }}/openvino_package.tar.gz
|
||||
|
|
@ -212,7 +212,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino tests package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.BUILD_DIR }}/openvino_tests.tar.gz
|
||||
|
|
@ -220,7 +220,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino js package
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).JS_API
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_js_package
|
||||
path: ${{ env.INSTALL_DIR_JS }}
|
||||
|
|
|
|||
|
|
@ -16,22 +16,20 @@ concurrency:
|
|||
group: ${{ github.workflow }}-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
Pylint-UT:
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5.1.0
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.10'
|
||||
|
||||
- name: Cache pip
|
||||
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: ~/.cache/pip
|
||||
key: ${{ runner.os }}-pip-${{ hashFiles('tools/mo/requirements*.txt') }}
|
||||
|
|
@ -55,4 +53,4 @@ jobs:
|
|||
|
||||
- name: Pylint-MO
|
||||
run: pylint -d C,R,W openvino/tools/mo
|
||||
working-directory: tools/mo
|
||||
working-directory: tools/mo
|
||||
|
|
@ -11,22 +11,20 @@ concurrency:
|
|||
group: ${{ github.workflow }}-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
Pylint-UT:
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5.1.0
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.10'
|
||||
|
||||
- name: Cache pip
|
||||
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: ~/.cache/pip
|
||||
key: ${{ runner.os }}-pip-${{ hashFiles('src/bindings/python/requirements*.txt') }}
|
||||
|
|
|
|||
|
|
@ -20,17 +20,15 @@ concurrency:
|
|||
group: ${{ github.workflow }}-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
linters:
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5.1.0
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.8'
|
||||
|
||||
|
|
@ -49,7 +47,7 @@ jobs:
|
|||
git diff > samples_diff.diff
|
||||
working-directory: samples/python
|
||||
|
||||
- uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
- uses: actions/upload-artifact@v4
|
||||
if: failure()
|
||||
with:
|
||||
name: samples_diff
|
||||
|
|
@ -67,7 +65,7 @@ jobs:
|
|||
git diff > pyopenvino_diff.diff
|
||||
working-directory: src/bindings/python/src/openvino
|
||||
|
||||
- uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
- uses: actions/upload-artifact@v4
|
||||
if: failure()
|
||||
with:
|
||||
name: pyopenvino_diff
|
||||
|
|
@ -85,7 +83,7 @@ jobs:
|
|||
git diff > wheel_diff.diff
|
||||
working-directory: src/bindings/python/wheel
|
||||
|
||||
- uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
- uses: actions/upload-artifact@v4
|
||||
if: failure()
|
||||
with:
|
||||
name: wheel_diff
|
||||
|
|
@ -113,3 +111,4 @@ jobs:
|
|||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ jobs:
|
|||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: '.github'
|
||||
|
||||
|
|
|
|||
|
|
@ -4,16 +4,15 @@ on:
|
|||
schedule:
|
||||
- cron: '0 0 * * *'
|
||||
|
||||
permissions: read-all
|
||||
permissions:
|
||||
issues: write
|
||||
pull-requests: write
|
||||
|
||||
jobs:
|
||||
stale:
|
||||
permissions:
|
||||
issues: write
|
||||
pull-requests: write
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/stale@28ca1036281a5e5922ead5184a1bbf96e5fc984e # v9.0.0
|
||||
- uses: actions/stale@v9
|
||||
with:
|
||||
stale-issue-message: 'This issue will be closed in a week because of 9 months of no activity.'
|
||||
stale-pr-message: 'This PR will be closed in a week because of 2 weeks of no activity.'
|
||||
|
|
|
|||
|
|
@ -13,8 +13,6 @@ concurrency:
|
|||
group: ${{ github.event_name == 'push' && github.run_id || github.ref }}-webassembly
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
Smart_CI:
|
||||
runs-on: ubuntu-latest
|
||||
|
|
@ -23,7 +21,7 @@ jobs:
|
|||
skip_workflow: "${{ steps.smart_ci.outputs.skip_workflow }}"
|
||||
steps:
|
||||
- name: checkout action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/actions/smart-ci
|
||||
|
||||
|
|
@ -66,13 +64,13 @@ jobs:
|
|||
run: apt-get update && apt-get install --assume-yes --no-install-recommends git ca-certificates
|
||||
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: 'openvino'
|
||||
submodules: 'true'
|
||||
|
||||
- name: Install sccache
|
||||
uses: mozilla-actions/sccache-action@2e7f9ec7921547d4b46598398ca573513895d0bd # v0.0.4
|
||||
uses: mozilla-actions/sccache-action@v0.0.4
|
||||
with:
|
||||
version: "v0.7.5"
|
||||
|
||||
|
|
|
|||
|
|
@ -16,8 +16,6 @@ env:
|
|||
PIP_CACHE_PATH: /mount/caches/pip/win
|
||||
PYTHON_VERSION: '3.11'
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
Smart_CI:
|
||||
runs-on: ubuntu-latest
|
||||
|
|
@ -26,7 +24,7 @@ jobs:
|
|||
skip_workflow: "${{ steps.smart_ci.outputs.skip_workflow }}"
|
||||
steps:
|
||||
- name: checkout action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/actions/smart-ci
|
||||
|
||||
|
|
@ -69,17 +67,18 @@ jobs:
|
|||
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: 'openvino'
|
||||
submodules: 'true'
|
||||
|
||||
- name: Clone OpenVINO Contrib
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/openvino_contrib'
|
||||
path: 'openvino_contrib'
|
||||
ref: 'master'
|
||||
# ref: 'master'
|
||||
ref: 3eeb2326e0d974f61a83f8e67d37e918ccfa1edd
|
||||
|
||||
#
|
||||
# Print system info
|
||||
|
|
@ -152,9 +151,7 @@ jobs:
|
|||
${{ runner.os }}-${{ runner.arch }}-ccache
|
||||
|
||||
- name: Configure Developer Command Prompt for Microsoft Visual C++
|
||||
uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
|
||||
with:
|
||||
toolset: 14.40
|
||||
uses: ilammy/msvc-dev-cmd@v1
|
||||
|
||||
- name: Set SSL_CERT_FILE for model downloading for unit tests
|
||||
run: echo SSL_CERT_FILE=$(python3 -m certifi) >> $env:GITHUB_ENV
|
||||
|
|
@ -163,6 +160,7 @@ jobs:
|
|||
run: |
|
||||
cmake -G "${{ env.CMAKE_GENERATOR }}" `
|
||||
-DENABLE_CPPLINT=OFF `
|
||||
-DBUILD_nvidia_plugin=OFF `
|
||||
-DBUILD_SHARED_LIBS=ON `
|
||||
-DENABLE_TESTS=ON `
|
||||
-DCMAKE_COMPILE_WARNING_AS_ERROR=ON `
|
||||
|
|
@ -170,7 +168,7 @@ jobs:
|
|||
-DENABLE_PYTHON=ON `
|
||||
-DCMAKE_DISABLE_FIND_PACKAGE_PkgConfig=ON `
|
||||
-DCUSTOM_OPERATIONS="calculate_grid;complex_mul;fft;grid_sample;sparse_conv;sparse_conv_transpose" `
|
||||
-DOPENVINO_EXTRA_MODULES="${{ env.OPENVINO_CONTRIB_REPO }}/modules/custom_operations;${{ env.OPENVINO_CONTRIB_REPO }}/modules/java_api" `
|
||||
-DOPENVINO_EXTRA_MODULES=${{ env.OPENVINO_CONTRIB_REPO }}/modules `
|
||||
-S ${{ env.OPENVINO_REPO }} `
|
||||
-B ${{ env.BUILD_DIR }}
|
||||
|
||||
|
|
@ -207,11 +205,24 @@ jobs:
|
|||
}
|
||||
Compress-Archive @compress
|
||||
|
||||
- name: Cmake & Build - OpenVINO Contrib
|
||||
if: ${{ 'false' }} # Ticket: 122441
|
||||
run: |
|
||||
cmake `
|
||||
-DBUILD_nvidia_plugin=OFF `
|
||||
-DCUSTOM_OPERATIONS="calculate_grid;complex_mul;fft;grid_sample;sparse_conv;sparse_conv_transpose" `
|
||||
-DOPENVINO_EXTRA_MODULES=${{ env.OPENVINO_CONTRIB_REPO }}/modules `
|
||||
-S ${{ env.OPENVINO_REPO }} `
|
||||
-B ${{ env.BUILD_DIR }}
|
||||
cmake --build ${{ env.BUILD_DIR }} --parallel --config ${{ env.CMAKE_BUILD_TYPE }} --verbose
|
||||
|
||||
- name: CMake configure, build and install - OpenVINO JS API
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).JS_API
|
||||
run: |
|
||||
run:
|
||||
cmake -DCPACK_GENERATOR=NPM -DENABLE_SYSTEM_TBB=OFF -UTBB* -S ${{ env.OPENVINO_REPO }} -B ${{ env.BUILD_DIR }}
|
||||
|
||||
cmake --build ${{ env.BUILD_DIR }} --parallel
|
||||
|
||||
cmake -DCMAKE_INSTALL_PREFIX=${{ env.INSTALL_DIR_JS }} -P ${{ env.BUILD_DIR }}/cmake_install.cmake
|
||||
|
||||
#
|
||||
|
|
@ -219,14 +230,14 @@ jobs:
|
|||
#
|
||||
|
||||
- name: Upload openvino package
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.BUILD_DIR }}/openvino_package.zip
|
||||
if-no-files-found: 'error'
|
||||
|
||||
- name: Upload openvino tests package
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.BUILD_DIR }}/openvino_tests.zip
|
||||
|
|
@ -234,7 +245,7 @@ jobs:
|
|||
|
||||
- name: Upload openvino js package
|
||||
if: fromJSON(needs.smart_ci.outputs.affected_components).JS_API
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_js_package
|
||||
path: ${{ env.INSTALL_DIR_JS }}
|
||||
|
|
@ -257,13 +268,13 @@ jobs:
|
|||
|
||||
steps:
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
|
@ -278,7 +289,7 @@ jobs:
|
|||
popd
|
||||
|
||||
- name: Fetch setup_python action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
|
|
@ -343,22 +354,22 @@ jobs:
|
|||
|
||||
steps:
|
||||
- name: Fetch OpenVINO JS sources
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
src/bindings/js
|
||||
path: 'openvino'
|
||||
|
||||
- name: Download OpenVINO js package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_js_package
|
||||
path: ${{ env.OPENVINO_JS_LIBS_DIR }}
|
||||
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: 20
|
||||
node-version: 18
|
||||
|
||||
- name: Configure OpenVINO JS
|
||||
working-directory: ${{ env.OPENVINO_JS_DIR }}/node
|
||||
|
|
@ -373,15 +384,6 @@ jobs:
|
|||
working-directory: ${{ env.OPENVINO_JS_DIR }}/node
|
||||
run: call npm test
|
||||
|
||||
- name: Create package dir
|
||||
working-directory: ${{ env.OPENVINO_JS_DIR }}
|
||||
run: mkdir project-uses-openvino-node
|
||||
- name: Test installation of openvino-node package
|
||||
working-directory: ${{ env.OPENVINO_JS_DIR }}/project-uses-openvino-node
|
||||
run: |
|
||||
npm i openvino-node
|
||||
node -e "const { addon: ov } = require('openvino-node'); console.log(ov);"
|
||||
|
||||
Openvino_tokenizers:
|
||||
name: OpenVINO tokenizers extension
|
||||
needs: [ Build, Smart_CI ]
|
||||
|
|
@ -409,13 +411,13 @@ jobs:
|
|||
|
||||
steps:
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
|
@ -430,7 +432,7 @@ jobs:
|
|||
popd
|
||||
|
||||
- name: Fetch setup_python action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
|
|
@ -567,7 +569,7 @@ jobs:
|
|||
run: python3 -m pytest -s ${{ env.INSTALL_TEST_DIR }}/ovc/unit_tests --junitxml=${{ env.INSTALL_TEST_DIR }}/TEST-OpenVinoConversion.xml
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
if: ${{ !cancelled() }}
|
||||
with:
|
||||
name: test-results-python
|
||||
|
|
@ -597,13 +599,13 @@ jobs:
|
|||
|
||||
steps:
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
|
@ -773,7 +775,7 @@ jobs:
|
|||
${{ env.INSTALL_TEST_DIR }}/ov_hetero_func_tests --gtest_print_time=1 --gtest_output=xml:${{ env.INSTALL_TEST_DIR }}/TEST-OVHeteroFuncTests.xml --gtest_filter="*smoke*"
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
if: ${{ !cancelled() }}
|
||||
with:
|
||||
name: test-results-cpp
|
||||
|
|
@ -797,13 +799,13 @@ jobs:
|
|||
if: fromJSON(needs.smart_ci.outputs.affected_components).CPU.test
|
||||
steps:
|
||||
- name: Download OpenVINO package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_package
|
||||
path: ${{ env.INSTALL_DIR }}
|
||||
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
|
@ -818,7 +820,7 @@ jobs:
|
|||
popd
|
||||
|
||||
- name: Fetch setup_python action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
|
|
@ -836,7 +838,7 @@ jobs:
|
|||
run: python3 -m pip install -r ${{ github.workspace }}\install\tests\functional_test_utils\layer_tests_summary\requirements.txt
|
||||
|
||||
- name: Restore tests execution time
|
||||
uses: actions/cache/restore@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
|
||||
uses: actions/cache/restore@v4
|
||||
with:
|
||||
path: ${{ env.PARALLEL_TEST_CACHE }}
|
||||
key: ${{ runner.os }}-tests-functional-cpu-stamp-${{ github.sha }}
|
||||
|
|
@ -850,14 +852,14 @@ jobs:
|
|||
timeout-minutes: 60
|
||||
|
||||
- name: Save tests execution time
|
||||
uses: actions/cache/save@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
|
||||
uses: actions/cache/save@v4
|
||||
if: github.ref_name == 'master'
|
||||
with:
|
||||
path: ${{ env.PARALLEL_TEST_CACHE }}
|
||||
key: ${{ runner.os }}-tests-functional-cpu-stamp-${{ github.sha }}
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
if: ${{ !cancelled() }}
|
||||
with:
|
||||
name: test-results-functional-cpu
|
||||
|
|
|
|||
|
|
@ -16,8 +16,6 @@ concurrency:
|
|||
group: ${{ github.event_name == 'push' && github.run_id || github.ref }}-windows-cc
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
env:
|
||||
PYTHON_VERSION: '3.11'
|
||||
|
||||
|
|
@ -29,7 +27,7 @@ jobs:
|
|||
skip_workflow: "${{ steps.smart_ci.outputs.skip_workflow }}"
|
||||
steps:
|
||||
- name: checkout action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: .github/actions/smart-ci
|
||||
|
||||
|
|
@ -52,7 +50,7 @@ jobs:
|
|||
defaults:
|
||||
run:
|
||||
shell: pwsh
|
||||
runs-on: aks-win-32-cores-128gb
|
||||
runs-on: aks-win-8-cores-64gb
|
||||
env:
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
CMAKE_GENERATOR: 'Ninja Multi-Config'
|
||||
|
|
@ -72,13 +70,13 @@ jobs:
|
|||
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: 'openvino'
|
||||
submodules: 'true'
|
||||
|
||||
- name: Clone test models
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/testdata'
|
||||
path: 'testdata'
|
||||
|
|
@ -151,9 +149,7 @@ jobs:
|
|||
${{ runner.os }}-${{ runner.arch }}-ccache
|
||||
|
||||
- name: Configure Developer Command Prompt for Microsoft Visual C++
|
||||
uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
|
||||
with:
|
||||
toolset: 14.40
|
||||
uses: ilammy/msvc-dev-cmd@v1
|
||||
|
||||
- name: Set SSL_CERT_FILE for model downloading for unit tests
|
||||
run: echo SSL_CERT_FILE=$(python3 -m certifi) >> $env:GITHUB_ENV
|
||||
|
|
@ -176,11 +172,10 @@ jobs:
|
|||
- name: Clean ccache stats
|
||||
run: '& ccache --zero-stats'
|
||||
|
||||
# If the build fails due to running out of RAM, please decrease the number of parallel jobs (--parallel n)
|
||||
- name: Cmake build - CC COLLECT
|
||||
run: |
|
||||
cmake --build ${{ env.BUILD_DIR }} --parallel 16 --config ${{ env.CMAKE_BUILD_TYPE }} && `
|
||||
cmake --build ${{ env.BUILD_DIR }} --parallel 16 --config ${{ env.CMAKE_BUILD_TYPE }} --target sea_itt_lib
|
||||
cmake --build ${{ env.BUILD_DIR }} --parallel 8 --config ${{ env.CMAKE_BUILD_TYPE }} && `
|
||||
cmake --build ${{ env.BUILD_DIR }} --parallel 8 --config ${{ env.CMAKE_BUILD_TYPE }} --target sea_itt_lib
|
||||
|
||||
- name: Show ccache stats
|
||||
run: '& ccache --show-stats'
|
||||
|
|
@ -247,7 +242,7 @@ jobs:
|
|||
|
||||
- name: Upload selective build statistics package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_selective_build_stat
|
||||
path: ${{ env.BUILD_DIR }}/openvino_selective_build_stat.zip
|
||||
|
|
@ -255,7 +250,7 @@ jobs:
|
|||
|
||||
- name: Upload OpenVINO tests package
|
||||
if: ${{ always() }}
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.BUILD_DIR }}/openvino_tests.zip
|
||||
|
|
@ -267,7 +262,7 @@ jobs:
|
|||
defaults:
|
||||
run:
|
||||
shell: pwsh
|
||||
runs-on: aks-win-32-cores-128gb
|
||||
runs-on: aks-win-8-cores-64gb
|
||||
env:
|
||||
CMAKE_BUILD_TYPE: 'Release'
|
||||
OPENVINO_REPO: "${{ github.workspace }}\\openvino"
|
||||
|
|
@ -278,13 +273,13 @@ jobs:
|
|||
|
||||
steps:
|
||||
- name: Clone OpenVINO
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: 'openvino'
|
||||
submodules: 'true'
|
||||
|
||||
- name: Clone test models
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'openvinotoolkit/testdata'
|
||||
path: 'testdata'
|
||||
|
|
@ -292,7 +287,7 @@ jobs:
|
|||
ref: 'master'
|
||||
|
||||
- name: Download selective build statistics package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_selective_build_stat
|
||||
path: ${{ env.SELECTIVE_BUILD_STAT_DIR }}
|
||||
|
|
@ -354,7 +349,7 @@ jobs:
|
|||
|
||||
steps:
|
||||
- name: Download OpenVINO tests package
|
||||
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: openvino_tests
|
||||
path: ${{ env.INSTALL_TEST_DIR }}
|
||||
|
|
@ -363,7 +358,7 @@ jobs:
|
|||
run: Expand-Archive ${{ env.INSTALL_TEST_DIR }}/openvino_tests.zip -DestinationPath "${{ env.INSTALL_TEST_DIR }}"
|
||||
|
||||
- name: Fetch setup_python action
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: |
|
||||
.github/actions/setup_python/action.yml
|
||||
|
|
@ -381,7 +376,7 @@ jobs:
|
|||
run: python3 -m pip install -r ${{ env.INSTALL_TEST_DIR }}/layer_tests_summary/requirements.txt
|
||||
|
||||
- name: Restore tests execution time
|
||||
uses: actions/cache/restore@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
|
||||
uses: actions/cache/restore@v4
|
||||
with:
|
||||
path: ${{ env.PARALLEL_TEST_CACHE }}
|
||||
key: ${{ runner.os }}-tests-functional-cpu-stamp-${{ github.sha }}
|
||||
|
|
@ -396,7 +391,7 @@ jobs:
|
|||
timeout-minutes: 60
|
||||
|
||||
- name: Upload Test Results
|
||||
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
||||
uses: actions/upload-artifact@v4
|
||||
if: ${{ !cancelled() }}
|
||||
with:
|
||||
name: test-results-functional-cpu
|
||||
|
|
|
|||
|
|
@ -16,8 +16,6 @@ on:
|
|||
- '.github/workflows/workflow_rerunner.yml'
|
||||
- '.github/scripts/workflow_rerun/**'
|
||||
|
||||
permissions: read-all
|
||||
|
||||
jobs:
|
||||
rerun:
|
||||
name: Rerun Workflow
|
||||
|
|
@ -30,7 +28,7 @@ jobs:
|
|||
checks: read
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: '.github/scripts/workflow_rerun'
|
||||
|
||||
|
|
@ -61,7 +59,7 @@ jobs:
|
|||
runs-on: aks-linux-2-cores-8gb
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
sparse-checkout: '.github/scripts/workflow_rerun'
|
||||
lfs: true
|
||||
|
|
|
|||
|
|
@ -33,14 +33,6 @@ if(POLICY CMP0135)
|
|||
cmake_policy(SET CMP0135 NEW)
|
||||
endif()
|
||||
|
||||
if(POLICY CMP0149)
|
||||
# VS generator looks for most recent Windows SDK, ignoring
|
||||
# CMAKE_SYSTEM_VERSION and allowing override by WindowsSDKVersion
|
||||
# environment variable. New in 3.27. This is to allow override
|
||||
# in the Windows CI builds.
|
||||
cmake_policy(SET CMP0149 NEW)
|
||||
endif()
|
||||
|
||||
project(OpenVINO DESCRIPTION "OpenVINO toolkit")
|
||||
|
||||
find_package(OpenVINODeveloperScripts REQUIRED
|
||||
|
|
@ -71,7 +63,7 @@ if(OV_GENERATOR_MULTI_CONFIG)
|
|||
string(REPLACE ";" " " config_types "${CMAKE_CONFIGURATION_TYPES}")
|
||||
message (STATUS "CMAKE_CONFIGURATION_TYPES ............. " ${config_types})
|
||||
unset(config_types)
|
||||
if(CMAKE_GENERATOR STREQUAL "Ninja Multi-Config")
|
||||
if(CMAKE_GENERATOR MATCHES "^Ninja Multi-Config$")
|
||||
message (STATUS "CMAKE_DEFAULT_BUILD_TYPE .............. " ${CMAKE_DEFAULT_BUILD_TYPE})
|
||||
endif()
|
||||
else()
|
||||
|
|
@ -86,8 +78,8 @@ endif()
|
|||
if(CMAKE_TOOLCHAIN_FILE)
|
||||
message (STATUS "CMAKE_TOOLCHAIN_FILE .................. " ${CMAKE_TOOLCHAIN_FILE})
|
||||
endif()
|
||||
if(NOT OV_LIBC_VERSION VERSION_EQUAL 0.0)
|
||||
message (STATUS "LIBC_VERSION .......................... " ${OV_LIBC_VERSION})
|
||||
if(NOT OV_GLIBC_VERSION VERSION_EQUAL 0.0)
|
||||
message (STATUS "GLIBC_VERSION ......................... " ${OV_GLIBC_VERSION})
|
||||
endif()
|
||||
|
||||
# remove file with exported targets to force its regeneration
|
||||
|
|
|
|||
|
|
@ -13,8 +13,8 @@
|
|||
Welcome to OpenVINO™, an open-source software toolkit for optimizing and deploying deep learning models.
|
||||
|
||||
- **Inference Optimization**: Boost deep learning performance in computer vision, automatic speech recognition, generative AI, natural language processing with large and small language models, and many other common tasks.
|
||||
- **Flexible Model Support**: Use models trained with popular frameworks such as TensorFlow, PyTorch, ONNX, Keras, and PaddlePaddle. Convert and deploy models without original frameworks.
|
||||
- **Broad Platform Compatibility**: Reduce resource demands and efficiently deploy on a range of platforms from edge to cloud. OpenVINO™ supports inference on CPU (x86, ARM), GPU (OpenCL capable, integrated and discrete) and AI accelerators (Intel NPU).
|
||||
- **Flexible Model Support**: Use models trained with popular frameworks such as TensorFlow, PyTorch, ONNX, Keras, and PaddlePaddle.
|
||||
- **Broad Platform Compatibility**: Reduce resource demands and efficiently deploy on a range of platforms from edge to cloud.
|
||||
- **Community and Ecosystem**: Join an active community contributing to the enhancement of deep learning performance across various domains.
|
||||
|
||||
Check out the [OpenVINO Cheat Sheet](https://docs.openvino.ai/2024/_static/download/OpenVINO_Quick_Start_Guide.pdf) for a quick reference.
|
||||
|
|
@ -100,9 +100,9 @@ Check out the [Awesome OpenVINO](https://github.com/openvinotoolkit/awesome-open
|
|||
|
||||
## Documentation
|
||||
|
||||
[User documentation](https://docs.openvino.ai/) contains detailed information about OpenVINO and guides you from installation through optimizing and deploying models for your AI applications.
|
||||
[**User documentation**](https://docs.openvino.ai/) contains detailed information about OpenVINO and guides you from installation through optimizing and deploying models for your AI applications.
|
||||
|
||||
[Developer documentation](./docs/dev/index.md) focuses on how OpenVINO [components](./docs/dev/index.md#openvino-components) work and describes [building](./docs/dev/build.md) and [contributing](./CONTRIBUTING.md) processes.
|
||||
[**Developer documentation**](./docs/dev/index.md) focuses on how OpenVINO [components](./docs/dev/index.md#openvino-components) work and describes [building](./docs/dev/build.md) and [contributing](./CONTRIBUTING.md) processes.
|
||||
|
||||
## Contribution and Support
|
||||
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ if(THREADING STREQUAL "OMP")
|
|||
VERSION_REGEX ".*_([a-z]*_([a-z0-9]+\\.)*[0-9]+).*"
|
||||
SHA256 "62c68646747fb10f19b53217cb04a1e10ff93606f992e6b35eb8c31187c68fbf"
|
||||
USE_NEW_LOCATION TRUE)
|
||||
elseif(LINUX AND X86_64 AND OPENVINO_GNU_LIBC)
|
||||
elseif(LINUX AND X86_64)
|
||||
RESOLVE_DEPENDENCY(OMP
|
||||
ARCHIVE_LIN "iomp.tgz"
|
||||
TARGET_PATH "${TEMP}/omp"
|
||||
|
|
@ -101,7 +101,7 @@ function(ov_download_tbb)
|
|||
ENVIRONMENT "TBBROOT"
|
||||
SHA256 "f42d084224cc2d643314bd483ad180b081774608844000f132859fca3e9bf0ce"
|
||||
USE_NEW_LOCATION TRUE)
|
||||
elseif(LINUX AND X86_64 AND OPENVINO_GNU_LIBC AND OV_LIBC_VERSION VERSION_GREATER_EQUAL 2.17)
|
||||
elseif(LINUX AND X86_64 AND OV_GLIBC_VERSION VERSION_GREATER_EQUAL 2.17)
|
||||
# build oneTBB 2021.2.1 with gcc 4.8 (glibc 2.17)
|
||||
RESOLVE_DEPENDENCY(TBB
|
||||
ARCHIVE_LIN "oneapi-tbb-2021.2.4-lin.tgz"
|
||||
|
|
@ -132,21 +132,21 @@ function(ov_download_tbb)
|
|||
ENVIRONMENT "TBBROOT"
|
||||
SHA256 "09fe7f5e7be589aa34ccd20fdfd7cad9e0afa89d1e74ecdb008a75d0af71d6e1"
|
||||
USE_NEW_LOCATION TRUE)
|
||||
elseif(LINUX AND AARCH64 AND OPENVINO_GNU_LIBC AND OV_LIBC_VERSION VERSION_GREATER_EQUAL 2.17)
|
||||
elseif(LINUX AND AARCH64 AND OV_GLIBC_VERSION VERSION_GREATER_EQUAL 2.17)
|
||||
# build oneTBB 2021.2.1 with gcc 4.8 (glibc 2.17)
|
||||
RESOLVE_DEPENDENCY(TBB
|
||||
ARCHIVE_LIN "oneapi-tbb-2021.2.5-lin-arm64.tgz"
|
||||
ARCHIVE_LIN "oneapi-tbb-2021.2.1-lin-arm64-20231012.tgz"
|
||||
TARGET_PATH "${TEMP}/tbb"
|
||||
ENVIRONMENT "TBBROOT"
|
||||
SHA256 "86b24e4db254136bf88f0a8195ae478494e34db109e08569b1c059b174494865"
|
||||
SHA256 "cbb239cbda7ea2937cec7008c12fe628dd44488e1eafd9630f8814f9eb2c13e2"
|
||||
USE_NEW_LOCATION TRUE)
|
||||
elseif(APPLE AND AARCH64)
|
||||
# build oneTBB 2021.2.1 with export MACOSX_DEPLOYMENT_TARGET=11.0
|
||||
RESOLVE_DEPENDENCY(TBB
|
||||
ARCHIVE_MAC "oneapi-tbb-2021.2.5-mac-arm64.tgz"
|
||||
ARCHIVE_MAC "oneapi-tbb-2021.2.4-mac-arm64.tgz"
|
||||
TARGET_PATH "${TEMP}/tbb"
|
||||
ENVIRONMENT "TBBROOT"
|
||||
SHA256 "bb1f84b1dcc50787f35c99b4b6ecea733d3068ca3467b5ebd2e369c4f7eccb53"
|
||||
SHA256 "5e4581b95648d1c5d8f0742badecf48a9529feab6bc55ac94b526eddaf6a18c9"
|
||||
USE_NEW_LOCATION TRUE)
|
||||
else()
|
||||
message(WARNING "Prebuilt TBB is not available on current platform")
|
||||
|
|
@ -203,7 +203,7 @@ function(ov_download_tbbbind_2_5)
|
|||
ENVIRONMENT "TBBBIND_2_5_ROOT"
|
||||
SHA256 "49ae93b13a13953842ff9ae8d01681b269b5b0bc205daf18619ea9a828c44bee"
|
||||
USE_NEW_LOCATION TRUE)
|
||||
elseif(LINUX AND X86_64 AND OPENVINO_GNU_LIBC AND OV_LIBC_VERSION VERSION_GREATER_EQUAL 2.17)
|
||||
elseif(LINUX AND X86_64)
|
||||
RESOLVE_DEPENDENCY(TBBBIND_2_5
|
||||
ARCHIVE_LIN "tbbbind_2_5_static_lin_v4.tgz"
|
||||
TARGET_PATH "${TEMP}/tbbbind_2_5"
|
||||
|
|
|
|||
|
|
@ -179,6 +179,10 @@ else()
|
|||
endif()
|
||||
add_definitions(-DOV_BUILD_POSTFIX=\"${OV_BUILD_POSTFIX}\")
|
||||
|
||||
# for BW compatibility; removed before 2024.0
|
||||
set(IE_BUILD_POSTFIX ${OV_BUILD_POSTFIX})
|
||||
add_definitions(-DIE_BUILD_POSTFIX=\"${IE_BUILD_POSTFIX}\")
|
||||
|
||||
ov_set_if_not_defined(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${OUTPUT_ROOT}/${BIN_FOLDER})
|
||||
ov_set_if_not_defined(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${OUTPUT_ROOT}/${BIN_FOLDER})
|
||||
ov_set_if_not_defined(CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY ${OUTPUT_ROOT}/${BIN_FOLDER})
|
||||
|
|
@ -219,8 +223,6 @@ set(CMAKE_POLICY_DEFAULT_CMP0111 NEW)
|
|||
set(CMAKE_POLICY_DEFAULT_CMP0127 NEW)
|
||||
# CMake 3.24+ :prefers to set the timestamps of all extracted contents to the time of the extraction
|
||||
set(CMAKE_POLICY_DEFAULT_CMP0135 NEW)
|
||||
# CMake 3.27+ :Visual Studio Generators select latest Windows SDK by default.
|
||||
set(CMAKE_POLICY_DEFAULT_CMP0149 NEW)
|
||||
|
||||
set(CMAKE_WARN_DEPRECATED OFF CACHE BOOL "Don't warn about obsolete cmake versions in 3rdparty")
|
||||
set(CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION ON CACHE BOOL "Warn about absolute paths in destination")
|
||||
|
|
|
|||
|
|
@ -3,20 +3,6 @@
|
|||
#
|
||||
|
||||
if(WIN32)
|
||||
# CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION is only set when
|
||||
# Visual Studio generators are used, but we need it
|
||||
# when we use Ninja as well
|
||||
if(NOT DEFINED CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION)
|
||||
if(DEFINED ENV{WindowsSDKVersion})
|
||||
string(REPLACE "\\" "" WINDOWS_SDK_VERSION $ENV{WindowsSDKVersion})
|
||||
set(CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION ${WINDOWS_SDK_VERSION})
|
||||
message(STATUS "Use ${CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION} Windows SDK version")
|
||||
else()
|
||||
message(FATAL_ERROR "WindowsSDKVersion environment variable is not set,\
|
||||
can't find Windows SDK version. Try to use vcvarsall.bat script")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
set(PROGRAMFILES_ENV "ProgramFiles\(X86\)")
|
||||
|
||||
# check that PROGRAMFILES_ENV is defined, because in case of cross-compilation for Windows
|
||||
|
|
|
|||
|
|
@ -255,10 +255,7 @@ function(ov_abi_free_target target)
|
|||
# To guarantee OpenVINO can be used with gcc versions 7 through 12.2
|
||||
# - https://gcc.gnu.org/onlinedocs/gcc/C_002b_002b-Dialect-Options.html
|
||||
# - https://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html
|
||||
# Since gcc 13.0 abi=18
|
||||
# Version 18, which first appeard in G++ 13, fixes manglings of lambdas that have additional context.
|
||||
# which means we became not compatible
|
||||
if(CMAKE_COMPILER_IS_GNUCXX AND NOT MINGW64 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 13.0)
|
||||
if(CMAKE_COMPILER_IS_GNUCXX AND NOT MINGW64)
|
||||
target_compile_options(${target} PRIVATE $<$<COMPILE_LANGUAGE:CXX>:-Wabi=11>)
|
||||
endif()
|
||||
endfunction()
|
||||
|
|
|
|||
|
|
@ -111,8 +111,8 @@ if(DEFINED SANITIZER_COMPILER_FLAGS)
|
|||
# https://stackoverflow.com/questions/68571138/asan-dynamic-runtime-is-missing-on-ubuntu-18, https://bugs.llvm.org/show_bug.cgi?id=51271
|
||||
if(BUILD_SHARED_LIBS AND ENABLE_SANITIZER AND OV_COMPILER_IS_CLANG)
|
||||
execute_process(COMMAND ${CMAKE_CXX_COMPILER} --print-file-name libclang_rt.asan-x86_64.so
|
||||
OUTPUT_VARIABLE OV_LIBASAN_FILEPATH)
|
||||
get_filename_component(LIBASAN_DIRNAME ${OV_LIBASAN_FILEPATH} PATH)
|
||||
OUTPUT_VARIABLE LIBASAN_DIRNAME)
|
||||
get_filename_component(LIBASAN_DIRNAME ${LIBASAN_DIRNAME} PATH)
|
||||
set(SANITIZER_LINKER_FLAGS "${SANITIZER_LINKER_FLAGS},-rpath=${LIBASAN_DIRNAME}")
|
||||
endif()
|
||||
|
||||
|
|
|
|||
|
|
@ -226,3 +226,11 @@ function(ov_coverage_merge)
|
|||
|
||||
add_dependencies(ov_coverage_${OV_COVERAGE_OUTPUT}_info ${dependencies})
|
||||
endfunction()
|
||||
|
||||
# deprecated
|
||||
|
||||
if(NOT TARGET ie_coverage)
|
||||
add_custom_target(ie_coverage)
|
||||
set_target_properties(ie_coverage PROPERTIES FOLDER coverage)
|
||||
add_dependencies(ie_coverage ov_coverage)
|
||||
endif()
|
||||
|
|
|
|||
|
|
@ -81,8 +81,7 @@ function(cross_compiled_file TARGET)
|
|||
## that is arch ID
|
||||
set(_arch ${_it})
|
||||
if(_arch MATCHES ${_CURRENT_ARCH_FILTER})
|
||||
# make non/less-optimized version coming first
|
||||
list(INSERT _CUR_ARCH_SET 0 ${_arch})
|
||||
list(APPEND _CUR_ARCH_SET ${_arch})
|
||||
list(APPEND _FULL_ARCH_SET ${_arch})
|
||||
endif()
|
||||
else()
|
||||
|
|
|
|||
|
|
@ -71,7 +71,7 @@ function(ov_native_compile_external_project)
|
|||
endif()
|
||||
|
||||
if(OV_GENERATOR_MULTI_CONFIG)
|
||||
if(CMAKE_GENERATOR STREQUAL "Ninja Multi-Config")
|
||||
if(CMAKE_GENERATOR MATCHES "^Ninja Multi-Config$")
|
||||
list(APPEND ARG_CMAKE_ARGS "-DCMAKE_CONFIGURATION_TYPES=${CMAKE_DEFAULT_BUILD_TYPE}")
|
||||
list(APPEND ARG_CMAKE_ARGS "-DCMAKE_DEFAULT_BUILD_TYPE=${CMAKE_DEFAULT_BUILD_TYPE}")
|
||||
endif()
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# custom OpenVINO values
|
||||
CppMethod: '^(operator\W+|[a-z_\d]+|signaling_NaN|quiet_NaN|OPENVINO_OP)$'
|
||||
ClassName: '^([A-Z][\w]+|b?float16|float8_e4m3|float8_e5m2|float4_e2m1|numeric_limits|ngraph_error|stopwatch|unsupported_op)$'
|
||||
ClassName: '^([A-Z][\w]+|b?float16|float8_e4m3|float8_e5m2|numeric_limits|ngraph_error|stopwatch|unsupported_op)$'
|
||||
StructName: '^([A-Z][\w]+|element_type_traits|hash|oi_pair|stat)$'
|
||||
FunctionName: '^(operator\W+|[a-z_\d]+)|PrintTo$'
|
||||
Namespace: '^([a-z\d_]*|InferenceEngine)$'
|
||||
|
|
@ -18,7 +18,7 @@ VariableReference: '^\w+$'
|
|||
|
||||
EnumName: '^[A-Z][\w]+$'
|
||||
# excepts element_type
|
||||
EnumConstantName: '^([A-Z\d_]+|undefined|dynamic|boolean|bf16|f16|f32|f64|i4|i8|i16|i32|i64|u1|u2|u3|u4|u6|u8|u16|u32|u64|nf4|f8e4m3|f8e5m2|f4e2m1|string|asymmetric|align_corners|round_prefer_floor|round_prefer_ceil|floor|ceil|simple|nearest|linear|linear_onnx|cubic|area|scales|sizes|half_pixel|tf_half_pixel_for_nn|pytorch_half_pixel|asymetric)$'
|
||||
EnumConstantName: '^([A-Z\d_]+|undefined|dynamic|boolean|bf16|f16|f32|f64|i4|i8|i16|i32|i64|u1|u2|u3|u4|u6|u8|u16|u32|u64|nf4|f8e4m3|f8e5m2|string|asymmetric|align_corners|round_prefer_floor|round_prefer_ceil|floor|ceil|simple|nearest|linear|linear_onnx|cubic|area|scales|sizes|half_pixel|tf_half_pixel_for_nn|pytorch_half_pixel|asymetric)$'
|
||||
# TODO: align
|
||||
UsingDeclaration: '^.*$'
|
||||
TypedefName: '^.*$'
|
||||
|
|
|
|||
|
|
@ -11,11 +11,13 @@ endif()
|
|||
macro(ov_option variable description value)
|
||||
option(${variable} "${description}" ${value})
|
||||
list(APPEND OV_OPTIONS ${variable})
|
||||
list(APPEND IE_OPTIONS ${variable})
|
||||
endmacro()
|
||||
|
||||
macro(ov_dependent_option variable description def_value condition fallback_value)
|
||||
cmake_dependent_option(${variable} "${description}" ${def_value} "${condition}" ${fallback_value})
|
||||
list(APPEND OV_OPTIONS ${variable})
|
||||
list(APPEND IE_OPTIONS ${variable})
|
||||
endmacro()
|
||||
|
||||
macro(ov_option_enum variable description value)
|
||||
|
|
@ -29,6 +31,7 @@ macro(ov_option_enum variable description value)
|
|||
endif()
|
||||
|
||||
list(APPEND OV_OPTIONS ${variable})
|
||||
list(APPEND IE_OPTIONS ${variable})
|
||||
|
||||
set(${variable} ${value} CACHE STRING "${description}")
|
||||
set_property(CACHE ${variable} PROPERTY STRINGS ${OPTION_ENUM_ALLOWED_VALUES})
|
||||
|
|
|
|||
|
|
@ -117,60 +117,13 @@ endif()
|
|||
|
||||
get_property(OV_GENERATOR_MULTI_CONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
|
||||
|
||||
function(ov_detect_libc_type)
|
||||
include(CheckCXXSourceCompiles)
|
||||
check_cxx_source_compiles("
|
||||
# ifndef _GNU_SOURCE
|
||||
# define _GNU_SOURCE
|
||||
# include <features.h>
|
||||
# ifndef __USE_GNU
|
||||
# define CMAKE_OPENVINO_MUSL_LIBC
|
||||
# endif
|
||||
# undef _GNU_SOURCE /* don't contaminate other includes unnecessarily */
|
||||
# else
|
||||
# include <features.h>
|
||||
# ifndef __USE_GNU
|
||||
# define CMAKE_OPENVINO_MUSL_LIBC
|
||||
# endif
|
||||
# endif
|
||||
# ifndef CMAKE_OPENVINO_MUSL_LIBC
|
||||
# error \"OpenVINO GNU LIBC\"
|
||||
# endif
|
||||
|
||||
int main() {
|
||||
return 0;
|
||||
}"
|
||||
OPENVINO_MUSL_LIBC)
|
||||
|
||||
if(OPENVINO_MUSL_LIBC)
|
||||
set(OPENVINO_MUSL_LIBC ON PARENT_SCOPE)
|
||||
else()
|
||||
set(OPENVINO_GNU_LIBC ON PARENT_SCOPE)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
if(LINUX)
|
||||
ov_detect_libc_type()
|
||||
endif()
|
||||
|
||||
function(ov_get_compiler_definition definition var)
|
||||
if(NOT LINUX)
|
||||
message(FATAL_ERROR "Internal error: 'ov_get_definition' must be used only on Linux")
|
||||
endif()
|
||||
|
||||
get_directory_property(_user_defines COMPILE_DEFINITIONS)
|
||||
foreach(_user_define IN LISTS _user_defines)
|
||||
# older cmake versions keep -D at the beginning, trim it
|
||||
string(REPLACE "-D" "" _user_define "${_user_define}")
|
||||
list(APPEND _ov_user_flags "-D${_user_define}")
|
||||
endforeach()
|
||||
string(REPLACE " " ";" _user_cxx_flags "${CMAKE_CXX_FLAGS}")
|
||||
foreach(_user_flag IN LISTS _user_cxx_flags)
|
||||
list(APPEND _ov_user_flags ${_user_flag})
|
||||
endforeach()
|
||||
|
||||
execute_process(COMMAND echo "#include <string>"
|
||||
COMMAND "${CMAKE_CXX_COMPILER}" ${_ov_user_flags} -x c++ - -E -dM
|
||||
COMMAND "${CMAKE_CXX_COMPILER}" -x c++ - -E -dM ${CMAKE_CXX_FLAGS}
|
||||
COMMAND grep -E "^#define ${definition} "
|
||||
OUTPUT_VARIABLE output_value
|
||||
ERROR_VARIABLE error_message
|
||||
|
|
@ -188,26 +141,19 @@ function(ov_get_compiler_definition definition var)
|
|||
endif()
|
||||
endfunction()
|
||||
|
||||
function(ov_libc_version)
|
||||
function(ov_glibc_version)
|
||||
# cmake needs to look at glibc version only when we build for Linux on Linux
|
||||
if(LINUX)
|
||||
if(OPENVINO_GNU_LIBC)
|
||||
ov_get_compiler_definition("__GLIBC__" _ov_glibc_major)
|
||||
ov_get_compiler_definition("__GLIBC_MINOR__" _ov_glibc_minor)
|
||||
ov_get_compiler_definition("__GLIBC__" _ov_glibc_major)
|
||||
ov_get_compiler_definition("__GLIBC_MINOR__" _ov_glibc_minor)
|
||||
|
||||
set(OV_LIBC_VERSION "${_ov_glibc_major}.${_ov_glibc_minor}" PARENT_SCOPE)
|
||||
elseif(OPENVINO_MUSL_LIBC)
|
||||
# TODO: implement proper detection
|
||||
set(OV_LIBC_VERSION "1.1" PARENT_SCOPE)
|
||||
else()
|
||||
message(FATAL_ERROR "Undefined libc type")
|
||||
endif()
|
||||
set(OV_GLIBC_VERSION "${_ov_glibc_major}.${_ov_glibc_minor}" PARENT_SCOPE)
|
||||
else()
|
||||
set(OV_LIBC_VERSION "0.0" PARENT_SCOPE)
|
||||
set(OV_GLIBC_VERSION "0.0" PARENT_SCOPE)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
ov_libc_version()
|
||||
ov_glibc_version()
|
||||
|
||||
#
|
||||
# Detects default value for _GLIBCXX_USE_CXX11_ABI for current compiler
|
||||
|
|
|
|||
|
|
@ -125,7 +125,7 @@ endif()\n")
|
|||
|
||||
# detect where OPENVINO_EXTRA_MODULES contains folders with CMakeLists.txt
|
||||
# other folders are supposed to have sub-folders with CMakeLists.txt
|
||||
foreach(module_path IN LISTS OPENVINO_EXTRA_MODULES)
|
||||
foreach(module_path IN LISTS OPENVINO_EXTRA_MODULES IE_EXTRA_MODULES)
|
||||
get_filename_component(module_path "${module_path}" ABSOLUTE)
|
||||
if(EXISTS "${module_path}/CMakeLists.txt")
|
||||
list(APPEND extra_modules "${module_path}")
|
||||
|
|
|
|||
|
|
@ -162,11 +162,11 @@ else()
|
|||
set(ENABLE_SYSTEM_FLATBUFFERS_DEFAULT ON)
|
||||
endif()
|
||||
|
||||
# use system TBB only for Debian / RPM packages
|
||||
if(CPACK_GENERATOR MATCHES "^(DEB|RPM|CONDA-FORGE|BREW|CONAN|VCPKG)$")
|
||||
set(ENABLE_SYSTEM_TBB_DEFAULT ${ENABLE_SYSTEM_LIBS_DEFAULT})
|
||||
else()
|
||||
# users wants to use his own TBB version, specific either via env vars or cmake options
|
||||
if(DEFINED ENV{TBBROOT} OR DEFINED ENV{TBB_DIR} OR DEFINED TBB_DIR OR DEFINED TBBROOT)
|
||||
set(ENABLE_SYSTEM_TBB_DEFAULT OFF)
|
||||
else()
|
||||
set(ENABLE_SYSTEM_TBB_DEFAULT ${ENABLE_SYSTEM_LIBS_DEFAULT})
|
||||
endif()
|
||||
|
||||
ov_dependent_option (ENABLE_SYSTEM_TBB "Enables use of system TBB" ${ENABLE_SYSTEM_TBB_DEFAULT}
|
||||
|
|
|
|||
|
|
@ -93,7 +93,6 @@ macro(ov_cpack_settings)
|
|||
2023.3.0 2023.3.1 2023.3.2 2023.3.3 2023.3.4 2023.3.5
|
||||
2024.0.0
|
||||
2024.1.0
|
||||
2024.2.0
|
||||
)
|
||||
|
||||
ov_check_conflicts_versions(conflicting_versions)
|
||||
|
|
|
|||
|
|
@ -81,7 +81,6 @@ macro(ov_cpack_settings)
|
|||
2023.3.0 2023.3.1 2023.3.2 2023.3.3 2023.3.4 2023.3.5
|
||||
2024.0.0
|
||||
2024.1.0
|
||||
2024.2.0
|
||||
)
|
||||
|
||||
ov_check_conflicts_versions(conflicting_versions)
|
||||
|
|
|
|||
|
|
@ -92,16 +92,9 @@
|
|||
# `OpenVINO_VERSION_PATCH`
|
||||
# Patch version component
|
||||
#
|
||||
# OpenVINO build configuration variables:
|
||||
#
|
||||
# `OpenVINO_GLIBCXX_USE_CXX11_ABI`
|
||||
# Linux only: defines _GLIBCXX_USE_CXX11_ABI used to compiled OpenVINO
|
||||
#
|
||||
|
||||
@PACKAGE_INIT@
|
||||
|
||||
set(OpenVINO_GLIBCXX_USE_CXX11_ABI "@OV_GLIBCXX_USE_CXX11_ABI@")
|
||||
|
||||
#
|
||||
# Common functions
|
||||
#
|
||||
|
|
@ -480,11 +473,6 @@ set(_OV_ENABLE_OPENVINO_BUILD_SHARED "@BUILD_SHARED_LIBS@")
|
|||
if(NOT TARGET openvino)
|
||||
set(_ov_as_external_package ON)
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/OpenVINOTargets.cmake")
|
||||
|
||||
# since OpenVINO is compiled with _GLIBCXX_USE_CXX11_ABI=0
|
||||
if(NOT OpenVINO_GLIBCXX_USE_CXX11_ABI STREQUAL "")
|
||||
add_definitions(-D_GLIBCXX_USE_CXX11_ABI=${OpenVINO_GLIBCXX_USE_CXX11_ABI})
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(NOT _OV_ENABLE_OPENVINO_BUILD_SHARED)
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ endif()
|
|||
get_property(_OV_GENERATOR_MULTI_CONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
|
||||
if(_OV_GENERATOR_MULTI_CONFIG)
|
||||
list(APPEND ov_options CMAKE_CONFIGURATION_TYPES)
|
||||
if(CMAKE_GENERATOR STREQUAL "Ninja Multi-Config")
|
||||
if(CMAKE_GENERATOR MATCHES "^Ninja Multi-Config$")
|
||||
list(APPEND ov_options CMAKE_DEFAULT_BUILD_TYPE)
|
||||
endif()
|
||||
else()
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ endif()
|
|||
get_property(_OV_GENERATOR_MULTI_CONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
|
||||
if(_OV_GENERATOR_MULTI_CONFIG)
|
||||
list(APPEND ov_options CMAKE_CONFIGURATION_TYPES)
|
||||
if(CMAKE_GENERATOR STREQUAL "Ninja Multi-Config")
|
||||
if(CMAKE_GENERATOR MATCHES "^Ninja Multi-Config$")
|
||||
list(APPEND ov_options CMAKE_DEFAULT_BUILD_TYPE)
|
||||
endif()
|
||||
else()
|
||||
|
|
|
|||
|
|
@ -33,7 +33,6 @@ function(build_docs)
|
|||
set(DOXYGEN_MAPPING_SCRIPT "${SCRIPTS_DIR}/create_mapping.py")
|
||||
set(DOCS_MAPPING_SCRIPT "${SCRIPTS_DIR}/create_doc_mapping.py")
|
||||
set(BREATHE_APIDOC_SCRIPT "${SCRIPTS_DIR}/apidoc.py")
|
||||
set(OV_INSTALLATION_SCRIPT "${SCRIPTS_DIR}/install_appropriate_openvino_version.py")
|
||||
|
||||
# Doxygen/Sphinx setup
|
||||
set(DOXYGEN_XML_OUTPUT "${DOCS_BUILD_DIR}/xml")
|
||||
|
|
@ -63,9 +62,7 @@ function(build_docs)
|
|||
|
||||
if(${ENABLE_PYTHON_API})
|
||||
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "STARTED preprocessing OpenVINO Python API")
|
||||
list(APPEND commands COMMAND ${Python3_EXECUTABLE} ${OV_INSTALLATION_SCRIPT}
|
||||
--ov_dir=${SPHINX_SETUP_DIR}
|
||||
--python=${Python3_EXECUTABLE})
|
||||
list(APPEND commands COMMAND ${Python3_EXECUTABLE} -m pip install openvino)
|
||||
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "FINISHED preprocessing OpenVINO Python API")
|
||||
endif()
|
||||
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue