Skip to content

Commit 8597d9a

Browse files
authored
[GHA] Install pigz on macOS (openvinotoolkit#27003)
### Details: - macOS tar doesn't support -I argument, reworked flows with universal tar command ### Tickets: - *154627*
1 parent 1693821 commit 8597d9a

21 files changed

+101
-61
lines changed

.github/workflows/coverity.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ jobs:
112112
- name: Pack Artefacts
113113
run: |
114114
pushd ${BUILD_DIR}
115-
tar -C ${BUILD_DIR} -I pigz -cvf openvino.tgz cov-int
115+
tar -cvf - cov-int | pigz > openvino.tgz
116116
popd
117117
118118
- name: Submit artefacts

.github/workflows/dev_cpu_linux_snippets_libxsmm.yml

+6-6
Original file line numberDiff line numberDiff line change
@@ -158,11 +158,11 @@ jobs:
158158
run: |
159159
160160
pushd ${INSTALL_DIR}
161-
tar -I pigz -cvf ${BUILD_DIR}/openvino_package.tar.gz *
161+
tar -cvf - * | pigz > ${BUILD_DIR}/openvino_package.tar.gz
162162
popd
163163
164164
pushd ${INSTALL_TEST_DIR}
165-
tar -I pigz -cvf ${BUILD_DIR}/openvino_tests.tar.gz *
165+
tar -cvf - * | pigz > ${BUILD_DIR}/openvino_tests.tar.gz
166166
popd
167167
168168
#
@@ -230,11 +230,11 @@ jobs:
230230
- name: Extract OpenVINO packages
231231
run: |
232232
pushd $INSTALL_DIR
233-
tar -I pigz -xf openvino_package.tar.gz -C $INSTALL_DIR
233+
pigz -dc openvino_package.tar.gz | tar -xf - -C ${INSTALL_DIR}
234234
popd
235235
236236
pushd $INSTALL_TEST_DIR
237-
tar -I pigz -xf openvino_tests.tar.gz -C $INSTALL_DIR
237+
pigz -dc openvino_tests.tar.gz | tar -xf - -C ${INSTALL_DIR}
238238
popd
239239
240240
- name: Snippets func tests
@@ -287,11 +287,11 @@ jobs:
287287
- name: Extract OpenVINO packages
288288
run: |
289289
pushd $INSTALL_DIR
290-
tar -I pigz -xf openvino_package.tar.gz -C $INSTALL_DIR
290+
pigz -dc openvino_package.tar.gz | tar -xf - -C ${INSTALL_DIR}
291291
popd
292292
293293
pushd $INSTALL_TEST_DIR
294-
tar -I pigz -xf openvino_tests.tar.gz -C $INSTALL_DIR
294+
pigz -dc openvino_tests.tar.gz | tar -xf - -C ${INSTALL_DIR}
295295
popd
296296
297297
- name: Fetch setup_python action

.github/workflows/job_build_linux.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -182,15 +182,15 @@ jobs:
182182
working-directory: ${{ env.BUILD_DIR }}
183183

184184
- name: Pack openvino_package
185-
run: tar -I pigz -cvf ${BUILD_DIR}/openvino_package.tar.gz *
185+
run: tar -cvf - * | pigz > ${BUILD_DIR}/openvino_package.tar.gz
186186
working-directory: ${{ env.INSTALL_DIR }}
187187

188188
- name: Pack openvino_developer_package
189-
run: tar -I pigz -cvf ${BUILD_DIR}/openvino_developer_package.tar.gz *
189+
run: tar -cvf - * | pigz > ${BUILD_DIR}/openvino_developer_package.tar.gz
190190
working-directory: ${{ env.DEVELOPER_PACKAGE_DIR }}
191191

192192
- name: Pack openvino_tests
193-
run: tar -I pigz -cvf ${BUILD_DIR}/openvino_tests.tar.gz *
193+
run: tar -cvf - * | pigz > ${BUILD_DIR}/openvino_tests.tar.gz
194194
working-directory: ${{ env.INSTALL_TEST_DIR }}
195195

196196
- name: Build Debian packages

.github/workflows/job_cpu_functional_tests.yml

+7-3
Original file line numberDiff line numberDiff line change
@@ -55,15 +55,19 @@ jobs:
5555
echo "INSTALL_TEST_DIR=$GITHUB_WORKSPACE/install/tests" >> "$GITHUB_ENV"
5656
echo "PARALLEL_TEST_SCRIPT=$GITHUB_WORKSPACE/install/tests/functional_test_utils/layer_tests_summary/run_parallel.py" >> "$GITHUB_ENV"
5757
echo "PARALLEL_TEST_CACHE=$GITHUB_WORKSPACE/install/tests/test_cache.lst" >> "$GITHUB_ENV"
58-
58+
59+
- name: Install OpenVINO dependencies (mac)
60+
if: runner.os == 'macOS'
61+
run: brew install pigz
62+
5963
- name: Extract OpenVINO packages
6064
run: |
6165
pushd $INSTALL_DIR
62-
tar -I pigz -xf openvino_package.tar.gz -C $INSTALL_DIR
66+
pigz -dc openvino_package.tar.gz | tar -xf - -C ${INSTALL_DIR}
6367
popd
6468
6569
pushd $INSTALL_TEST_DIR
66-
tar -I pigz -xf openvino_tests.tar.gz -C $INSTALL_DIR
70+
pigz -dc openvino_tests.tar.gz | tar -xf - -C ${INSTALL_DIR}
6771
popd
6872
6973
- name: Fetch setup_python action

.github/workflows/job_cxx_unit_tests.yml

+6-2
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,10 @@ jobs:
6060
echo "INSTALL_TEST_DIR=$GITHUB_WORKSPACE/install/tests" >> "$GITHUB_ENV"
6161
echo "SETUPVARS_COMMAND=${{ env.SOURCE_COMMAND }} $GITHUB_WORKSPACE/install/${{ env.SETUPVARS }}" >> "$GITHUB_ENV"
6262
63+
- name: Install OpenVINO dependencies (mac)
64+
if: runner.os == 'macOS'
65+
run: brew install pigz
66+
6367
- name: Setup Variables (Windows)
6468
if: ${{ runner.os == 'Windows' }}
6569
run: Add-Content -Path $env:GITHUB_ENV -Value "SETUPVARS_COMMAND=${{ env.SOURCE_COMMAND }} ${{ github.workspace }}/install/${{ env.SETUPVARS }}"
@@ -68,10 +72,10 @@ jobs:
6872
if: ${{ runner.os != 'Windows' }}
6973
run: |
7074
pushd $INSTALL_DIR
71-
tar -I pigz -xf openvino_package.tar.gz -C $INSTALL_DIR
75+
pigz -dc openvino_package.tar.gz | tar -xf - -C ${INSTALL_DIR}
7276
popd
7377
pushd $INSTALL_TEST_DIR
74-
tar -I pigz -xf openvino_tests.tar.gz -C $INSTALL_DIR
78+
pigz -dc openvino_tests.tar.gz | tar -xf - -C ${INSTALL_DIR}
7579
popd
7680
7781
- name: Extract OpenVINO packages (Windows)

.github/workflows/job_gpu_tests.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -59,10 +59,10 @@ jobs:
5959
- name: Extract OpenVINO packages
6060
run: |
6161
pushd $INSTALL_DIR
62-
tar -I pigz -xf openvino_package.tar.gz -C $INSTALL_DIR
62+
pigz -dc openvino_package.tar.gz | tar -xf - -C ${INSTALL_DIR}
6363
popd
6464
pushd $INSTALL_TEST_DIR
65-
tar -I pigz -xf openvino_tests.tar.gz -C $INSTALL_DIR
65+
pigz -dc openvino_tests.tar.gz | tar -xf - -C ${INSTALL_DIR}
6666
popd
6767
6868
- name: Install dependencies (Linux)

.github/workflows/job_jax_models_tests.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ jobs:
6060
6161
- name: Extract OpenVINO packages and tests
6262
run: |
63-
tar -I pigz -xf openvino_tests.tar.gz -C ${INSTALL_DIR}
63+
pigz -dc openvino_tests.tar.gz | tar -xf - -C ${INSTALL_DIR}
6464
working-directory: ${{ env.INSTALL_DIR }}
6565

6666
- name: Fetch setup_python action

.github/workflows/job_onnx_models_tests.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ jobs:
6464
6565
- name: Extract OpenVINO packages and tests
6666
run: |
67-
tar -I pigz -xf openvino_tests.tar.gz -C ${INSTALL_DIR}
67+
pigz -dc openvino_tests.tar.gz | tar -xf - -C ${INSTALL_DIR}
6868
working-directory: ${{ env.INSTALL_DIR }}
6969

7070
# Issue 148922

.github/workflows/job_onnx_runtime.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ jobs:
5959
- name: Extract OpenVINO package
6060
run: |
6161
pushd ${INSTALL_DIR}
62-
tar -I pigz -xf openvino_package.tar.gz -C ${INSTALL_DIR}
62+
pigz -dc openvino_package.tar.gz | tar -xf - -C ${INSTALL_DIR}
6363
popd
6464
6565
- name: Fetch ONNX runtime version and skip tests list

.github/workflows/job_python_unit_tests.yml

+6-2
Original file line numberDiff line numberDiff line change
@@ -66,9 +66,13 @@ jobs:
6666
echo "INSTALL_TEST_DIR=$GITHUB_WORKSPACE/install/tests" >> "$GITHUB_ENV"
6767
echo "LAYER_TESTS_INSTALL_DIR=$GITHUB_WORKSPACE/install/tests/layer_tests" >> "$GITHUB_ENV"
6868
69-
- name: Extract OpenVINO artifacts
69+
- name: Install OpenVINO dependencies (mac)
70+
if: runner.os == 'macOS'
71+
run: brew install pigz
72+
73+
- name: Extract OpenVINO packages
7074
run: |
71-
tar -I pigz -xf openvino_tests.tar.gz -C ${INSTALL_DIR}
75+
pigz -dc openvino_tests.tar.gz | tar -xf - -C ${INSTALL_DIR}
7276
working-directory: ${{ env.INSTALL_DIR }}
7377

7478
- name: Fetch setup_python action

.github/workflows/job_pytorch_layer_tests.yml

+7-3
Original file line numberDiff line numberDiff line change
@@ -65,11 +65,15 @@ jobs:
6565
echo "INSTALL_DIR=$GITHUB_WORKSPACE/install" >> "$GITHUB_ENV"
6666
echo "INSTALL_TEST_DIR=$GITHUB_WORKSPACE/install/tests" >> "$GITHUB_ENV"
6767
echo "LAYER_TESTS_INSTALL_DIR=$GITHUB_WORKSPACE/install/tests/layer_tests" >> "$GITHUB_ENV"
68-
69-
- name: Extract OpenVINO artifacts (Linux, macOS)
68+
69+
- name: Install OpenVINO dependencies (mac)
70+
if: runner.os == 'macOS'
71+
run: brew install pigz
72+
73+
- name: Extract OpenVINO packages (Linux, macOS)
7074
if: runner.os != 'Windows'
7175
run: |
72-
tar -I pigz -xf openvino_tests.tar.gz -C ${INSTALL_DIR}
76+
pigz -dc openvino_tests.tar.gz | tar -xf - -C ${INSTALL_DIR}
7377
working-directory: ${{ env.INSTALL_DIR }}
7478

7579
- name: Extract OpenVINO artifacts (Windows)

.github/workflows/job_pytorch_models_tests.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ jobs:
7373
7474
- name: Extract OpenVINO artifacts
7575
run: |
76-
tar -I pigz -xf openvino_tests.tar.gz -C ${INSTALL_DIR}
76+
pigz -dc openvino_tests.tar.gz | tar -xf - -C ${INSTALL_DIR}
7777
working-directory: ${{ env.INSTALL_DIR }}
7878

7979
- name: Fetch setup_python action

.github/workflows/job_samples_tests.yml

+7-7
Original file line numberDiff line numberDiff line change
@@ -54,17 +54,17 @@ jobs:
5454
echo "INSTALL_DIR=$GITHUB_WORKSPACE/install" >> "$GITHUB_ENV"
5555
echo "INSTALL_TEST_DIR=$GITHUB_WORKSPACE/install/tests" >> "$GITHUB_ENV"
5656
echo "BUILD_DIR=$GITHUB_WORKSPACE/build" >> "$GITHUB_ENV"
57+
58+
- name: Install OpenVINO dependencies (mac)
59+
if: runner.os == 'macOS'
60+
run: brew install coreutils pigz
5761

58-
- name: Extract OpenVINO packages, wheels and tests
62+
- name: Extract OpenVINO packages and tests
5963
run: |
60-
tar -I pigz -xf openvino_package.tar.gz -C ${INSTALL_DIR}
61-
tar -I pigz -xf openvino_tests.tar.gz -C ${INSTALL_DIR}
64+
pigz -dc openvino_package.tar.gz | tar -xf - -C ${INSTALL_DIR}
65+
pigz -dc openvino_tests.tar.gz | tar -xf - -C ${INSTALL_DIR}
6266
working-directory: ${{ env.INSTALL_DIR }}
6367

64-
- name: Install OpenVINO dependencies (mac)
65-
if: runner.os == 'macOS'
66-
run: brew install coreutils
67-
6868
- name: Fetch setup_python action
6969
# Python is already installed on Ubuntu within Dockerfile
7070
if: runner.os != 'Linux'

.github/workflows/job_tensorflow_layer_tests.yml

+6-2
Original file line numberDiff line numberDiff line change
@@ -66,10 +66,14 @@ jobs:
6666
echo "INSTALL_TEST_DIR=$GITHUB_WORKSPACE/install/tests" >> "$GITHUB_ENV"
6767
echo "LAYER_TESTS_INSTALL_DIR=$GITHUB_WORKSPACE/install/tests/layer_tests" >> "$GITHUB_ENV"
6868
69-
- name: Extract OpenVINO artifacts (Linux and macOS)
69+
- name: Install OpenVINO dependencies (mac)
70+
if: runner.os == 'macOS'
71+
run: brew install pigz
72+
73+
- name: Extract OpenVINO packages (Linux, macOS)
7074
if: runner.os != 'Windows'
7175
run: |
72-
tar -I pigz -xf openvino_tests.tar.gz -C ${INSTALL_DIR}
76+
pigz -dc openvino_tests.tar.gz | tar -xf - -C ${INSTALL_DIR}
7377
working-directory: ${{ env.INSTALL_DIR }}
7478

7579
- name: Extract OpenVINO artifacts (Windows)

.github/workflows/job_tensorflow_models_tests.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ jobs:
6565
6666
- name: Extract OpenVINO artifacts (Linux and macOS)
6767
run: |
68-
tar -I pigz -xf openvino_tests.tar.gz -C .
68+
pigz -dc openvino_tests.tar.gz | tar -xf - -C ${INSTALL_DIR}
6969
working-directory: ${{ env.INSTALL_DIR }}
7070

7171
- name: Fetch setup_python action

.github/workflows/job_tokenizers.yml

+4
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,10 @@ jobs:
5858
.github/actions/setup_python
5959
.github/actions/cache
6060
install_build_dependencies.sh
61+
62+
- name: Install OpenVINO dependencies (mac)
63+
if: runner.os == 'macOS'
64+
run: brew install pigz
6165

6266
- name: Setup Python ${{ env.PYTHON_VERSION }}
6367
uses: ./.github/actions/setup_python

.github/workflows/linux_conditional_compilation.yml

+7-6
Original file line numberDiff line numberDiff line change
@@ -200,23 +200,23 @@ jobs:
200200
- name: Pack Artifacts
201201
run: |
202202
pushd ${SELECTIVE_BUILD_STAT_DIR}
203-
tar -I pigz -cvf ${BUILD_DIR}/openvino_selective_build_stat.tar.gz *
203+
tar -cvf - * | pigz > ${BUILD_DIR}/openvino_selective_build_stat.tar.gz
204204
popd
205205
206206
pushd ${INSTALL_DIR}
207-
tar -I pigz -cvf ${BUILD_DIR}/openvino_package.tar.gz \
208-
install_dependencies/install_openvino_dependencies.sh
207+
tar -cvf - install_dependencies/install_openvino_dependencies.sh | pigz > ${BUILD_DIR}/openvino_package.tar.gz
209208
popd
210209
211210
cp -v ${OPENVINO_REPO}/temp/tbb/lib/lib* ${INSTALL_TEST_DIR}/tests
212211
pushd ${INSTALL_TEST_DIR}
213-
tar -I pigz -cvf ${BUILD_DIR}/openvino_tests.tar.gz \
212+
tar -cvf - \
214213
tests/ov_cpu_func_tests \
215214
tests/libopenvino_template_extension.so \
216215
tests/libze_loader.so* \
217216
tests/libhwloc* \
218217
tests/libtbb* \
219-
tests/functional_test_utils/layer_tests_summary/*
218+
tests/functional_test_utils/layer_tests_summary/* \
219+
| pigz > ${BUILD_DIR}/openvino_tests.tar.gz
220220
popd
221221
222222
#
@@ -302,7 +302,8 @@ jobs:
302302
path: ${{ env.SELECTIVE_BUILD_STAT_DIR }}
303303

304304
- name: Extract selective build statistics package
305-
run: tar -I pigz -xvf ${SELECTIVE_BUILD_STAT_DIR}/openvino_selective_build_stat.tar.gz -C ${SELECTIVE_BUILD_STAT_DIR}
305+
run: |
306+
pigz -dc ${SELECTIVE_BUILD_STAT_DIR}/openvino_selective_build_stat.tar.gz | tar -xf - -C ${SELECTIVE_BUILD_STAT_DIR}
306307
307308
#
308309
# Build

.github/workflows/linux_sanitizers.yml

+4-4
Original file line numberDiff line numberDiff line change
@@ -175,11 +175,11 @@ jobs:
175175
- name: Pack Artifacts
176176
run: |
177177
pushd ${INSTALL_DIR}
178-
tar -I pigz -cvf ${BUILD_DIR}/openvino_package.tar.gz *
178+
tar -cvf - * | pigz > ${BUILD_DIR}/openvino_package.tar.gz
179179
popd
180180
181181
pushd ${INSTALL_TEST_DIR}
182-
tar -I pigz -cvf ${BUILD_DIR}/openvino_tests.tar.gz *
182+
tar -cvf - * | pigz > ${BUILD_DIR}/openvino_tests.tar.gz
183183
popd
184184
185185
#
@@ -257,10 +257,10 @@ jobs:
257257
- name: Extract OpenVINO packages
258258
run: |
259259
pushd $INSTALL_DIR
260-
tar -I pigz -xf openvino_package.tar.gz -C $INSTALL_DIR
260+
pigz -dc openvino_package.tar.gz | tar -xf - -C ${INSTALL_DIR}
261261
popd
262262
pushd $INSTALL_TEST_DIR
263-
tar -I pigz -xf openvino_tests.tar.gz -C $INSTALL_DIR
263+
pigz -dc openvino_tests.tar.gz | tar -xf - -C ${INSTALL_DIR}
264264
popd
265265
266266
- name: Install dependencies (Linux)

.github/workflows/mac.yml

+12-5
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@ jobs:
7777
INSTALL_DIR: ${{ github.workspace }}/openvino_install
7878
INSTALL_DIR_JS: ${{ github.workspace }}/openvino_install/js
7979
INSTALL_TEST_DIR: ${{ github.workspace }}/tests_install
80+
INSTALL_WHEELS_DIR: ${{ github.workspace }}/install/wheels
8081
BUILD_DIR: ${{ github.workspace }}/build
8182
if: "!needs.smart_ci.outputs.skip_workflow"
8283
steps:
@@ -104,7 +105,7 @@ jobs:
104105
#
105106

106107
- name: Install build dependencies
107-
run: brew install coreutils ninja scons
108+
run: brew install coreutils ninja scons pigz
108109

109110
- name: Setup Python ${{ env.PYTHON_VERSION }}
110111
uses: ./openvino/.github/actions/setup_python
@@ -167,16 +168,15 @@ jobs:
167168
run: |
168169
cmake -DCMAKE_INSTALL_PREFIX=${{ env.INSTALL_DIR }} -P ${{ env.BUILD_DIR }}/cmake_install.cmake
169170
cmake -DCMAKE_INSTALL_PREFIX=${{ env.INSTALL_TEST_DIR }} -DCOMPONENT=tests -P ${{ env.BUILD_DIR }}/cmake_install.cmake
170-
cmake -DCMAKE_INSTALL_PREFIX=${{ env.INSTALL_DIR }} -DCOMPONENT=python_wheels -P ${{ env.BUILD_DIR }}/cmake_install.cmake
171+
cmake -DCMAKE_INSTALL_PREFIX=${{ env.INSTALL_WHEELS_DIR }} -DCOMPONENT=python_wheels -P ${{ env.BUILD_DIR }}/cmake_install.cmake
171172
172173
- name: Pack Artifacts
173174
run: |
174175
pushd ${{ env.INSTALL_DIR }}
175-
tar -I pigz -cvf ${{ env.BUILD_DIR }}/openvino_package.tar.gz *
176+
tar -cvf - * | pigz > ${{ env.BUILD_DIR }}/openvino_package.tar.gz
176177
popd
177-
178178
pushd ${{ env.INSTALL_TEST_DIR }}
179-
tar -I pigz -cvf ${{ env.BUILD_DIR }}/openvino_tests.tar.gz *
179+
tar -cvf - * | pigz > ${{ env.BUILD_DIR }}/openvino_tests.tar.gz
180180
popd
181181
182182
- name: Cmake & Build - OpenVINO Contrib
@@ -210,6 +210,13 @@ jobs:
210210
name: openvino_package
211211
path: ${{ env.BUILD_DIR }}/openvino_package.tar.gz
212212
if-no-files-found: 'error'
213+
214+
- name: Upload openvino wheels
215+
uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
216+
with:
217+
name: openvino_wheels
218+
path: ${{ env.INSTALL_WHEELS_DIR }}/wheels/*.whl
219+
if-no-files-found: 'error'
213220

214221
- name: Upload openvino tests package
215222
if: ${{ always() }}

0 commit comments

Comments
 (0)