@@ -20,25 +20,20 @@ jobs:
2020 shell : bash -el {0}
2121
2222 env :
23- python-ver : ' 3.12'
24- CHANNELS : ' -c dppy/label/dev -c intel -c conda-forge --override-channels'
25- NO_INTEL_CHANNELS : ' -c dppy/label/dev -c conda-forge --override-channels'
26- # Install the latest oneAPI compiler to work around an issue
27- INSTALL_ONE_API : ' yes'
23+ environment-file : ' environments/environment.yml'
24+ build-with-oneapi-env : ' environments/build_with_oneapi.yml'
25+ coverage-env : ' environments/coverage.yml'
26+ oneapi-pkgs-env : ' '
27+ # Enable env when it's required to use only conda packages without OneAPI installation
28+ # oneapi-pkgs-env: 'environments/oneapi_pkgs.yml'
2829
2930 steps :
3031 - name : Cancel Previous Runs
3132 uses : styfle/cancel-workflow-action@85880fa0301c86cca9da44039ee3bb12d3bedbfa # 0.12.1
3233 with :
3334 access_token : ${{ github.token }}
3435
35- - name : Checkout repo
36- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
37- with :
38- fetch-depth : 0
39-
4036 - name : Add Intel repository
41- if : env.INSTALL_ONE_API == 'yes'
4237 run : |
4338 wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
4439 cat GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB | gpg --dearmor | sudo tee /usr/share/keyrings/oneapi-archive-keyring.gpg > /dev/null
4742 sudo apt update
4843
4944 - name : Install latest Intel OneAPI
50- if : env.INSTALL_ONE_API == 'yes'
5145 run : |
5246 sudo apt install hwloc \
5347 intel-oneapi-mkl \
6054 - name : Install Lcov
6155 run : |
6256 sudo apt-get install lcov
57+ sudo gem install coveralls-lcov
58+
59+ - name : Checkout repo
60+ uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
61+ with :
62+ fetch-depth : 0
63+
64+ - name : Install conda-merge tool
65+ uses : BSFishy/pip-action@8f2d471d809dc20b6ada98c91910b6ae6243f318 # v1
66+ with :
67+ packages : conda-merge
68+
69+ - name : Merge conda env files
70+ run : |
71+ conda-merge ${{ env.build-with-oneapi-env }} ${{ env.coverage-env }} ${{ env.oneapi-pkgs-env }} > ${{ env.environment-file }}
72+ cat ${{ env.environment-file }}
6373
6474 - name : Setup miniconda
6575 id : setup_miniconda
6878 with :
6979 miniforge-version : latest
7080 use-mamba : ' true'
71- channels : conda-forge
7281 conda-remove-defaults : ' true'
73- python-version : ${{ env.python-ver }}
82+ environment-file : ' ${{ env.environment-file }}'
7483 activate-environment : ' coverage'
7584
7685 - name : ReSetup miniconda
@@ -79,27 +88,10 @@ jobs:
7988 with :
8089 miniforge-version : latest
8190 use-mamba : ' true'
82- channels : conda-forge
8391 conda-remove-defaults : ' true'
84- python-version : ${{ env.python-ver }}
92+ environment-file : ' ${{ env.environment-file }}'
8593 activate-environment : ' coverage'
8694
87- # Sometimes `mamba install ...` fails due to slow download speed rate, so disable the check in mamba
88- - name : Disable speed limit check in mamba
89- run : echo "MAMBA_NO_LOW_SPEED_LIMIT=1" >> $GITHUB_ENV
90-
91- - name : Install dpnp dependencies
92- if : env.INSTALL_ONE_API == 'yes'
93- run : |
94- mamba install cython llvm cmake">=3.21" scikit-build ninja pytest pytest-cov coverage[toml] \
95- dpctl">=0.18.0dev0" ${{ env.NO_INTEL_CHANNELS }}
96-
97- - name : Install dpnp dependencies
98- if : env.INSTALL_ONE_API != 'yes'
99- run : |
100- mamba install cython llvm cmake">=3.21" scikit-build ninja pytest pytest-cov coverage[toml] \
101- dpctl">=0.18.0dev0" dpcpp_linux-64 mkl-devel-dpcpp tbb-devel onedpl-devel ${{ env.CHANNELS }}
102-
10395 - name : Conda info
10496 run : |
10597 mamba info
@@ -122,12 +114,7 @@ jobs:
122114
123115 - name : Total number of coverage attempts
124116 run : |
125- echo "Total number of coverage attempts made: ${{ steps.build_coverage.outputs.total_attempts }}"
126-
127- - name : Install coverall dependencies
128- run : |
129- sudo gem install coveralls-lcov
130- pip install coveralls==4.0.1
117+ echo "Total number of coverage attempts: ${{ steps.build_coverage.outputs.total_attempts }}"
131118
132119 - name : Upload coverage data to coveralls.io
133120 run : |
@@ -144,9 +131,13 @@ jobs:
144131
145132 coveralls :
146133 name : Indicate completion to coveralls.io
134+
147135 needs : generate-coverage
136+
148137 runs-on : ubuntu-latest
138+
149139 container : python:3-slim
140+
150141 steps :
151142 - name : Finished
152143 run : |
0 commit comments