1818jobs :
1919 build_linux :
2020 runs-on : ubuntu-latest
21+
2122 strategy :
2223 matrix :
2324 python : ["3.9", "3.10", "3.11", "3.12"]
25+
2426 steps :
2527 - name : Cancel Previous Runs
26283436 - name : Set pkgs_dirs
3537 run : |
3638 echo "pkgs_dirs: [~/.conda/pkgs]" >> ~/.condarc
39+
3740 - name : Cache conda packages
3841 uses : actions/cache@v4
3942 env :
4851
4952 - name : Add conda to system path
5053 run : echo $CONDA/bin >> $GITHUB_PATH
54+
5155 - name : Install conda-build
5256 run : conda install conda-build
57+
5358 - name : Build conda package
5459 run : |
5560 CHANNELS="-c conda-forge -c https://software.repos.intel.com/python/conda --override-channels"
6166 $VERSIONS \
6267 $CHANNELS \
6368 conda-recipe
69+
6470 - name : Upload artifact
65716672 with :
7581 python : ['3.9', '3.10', '3.11', '3.12']
7682 env :
7783 conda-bld : C:\Miniconda\conda-bld\win-64\
84+
7885 steps :
7986 - name : Cancel Previous Runs
80878693 fetch-depth : 0
8794 - uses : conda-incubator/setup-miniconda@v3
8895 with :
96+ conda-remove-defaults : true
8997 auto-activate-base : true
9098 activate-environment : " "
9199
@@ -100,10 +108,13 @@ jobs:
100108 restore-keys : |
101109 ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-
102110 ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-
111+
103112 - name : Install conda-build
104113 run : conda install conda-build
114+
105115 - name : Build conda package
106116 run : conda build --no-test --python ${{ matrix.python }} -c https://software.repos.intel.com/python/conda -c conda-forge --override-channels conda-recipe
117+
107118 - name : Upload artifact
108119109120 with :
@@ -128,10 +139,13 @@ jobs:
128139 uses : actions/download-artifact@v4
129140 with :
130141 name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }}
142+
131143 - name : Add conda to system path
132144 run : echo $CONDA/bin >> $GITHUB_PATH
145+
133146 - name : Install conda-build
134147 run : conda install conda-build
148+
135149 - name : Create conda channel
136150 run : |
137151 mkdir -p $GITHUB_WORKSPACE/channel/linux-64
@@ -141,16 +155,19 @@ jobs:
141155 # Test channel
142156 conda search $PACKAGE_NAME -c $GITHUB_WORKSPACE/channel --override-channels --info --json > $GITHUB_WORKSPACE/ver.json
143157 cat ver.json
158+
144159 - name : Collect dependencies
145160 run : |
146161 . $CONDA/etc/profile.d/conda.sh
147162 CHANNELS="-c $GITHUB_WORKSPACE/channel ${{ env.CHANNELS }}"
148163 export PACKAGE_VERSION=$(python -c "${VER_SCRIPT1} ${VER_SCRIPT2}")
149164 conda create -n ${{ env.TEST_ENV_NAME }} $PACKAGE_NAME=${PACKAGE_VERSION} python=${{ matrix.python }} $CHANNELS --only-deps --dry-run > lockfile
150165 cat lockfile
166+
151167 - name : Set pkgs_dirs
152168 run : |
153169 echo "pkgs_dirs: [~/.conda/pkgs]" >> ~/.condarc
170+
154171 - name : Cache conda packages
155172 uses : actions/cache@v4
156173 env :
@@ -171,6 +188,7 @@ jobs:
171188 conda create -n ${{ env.TEST_ENV_NAME }} $PACKAGE_NAME=${PACKAGE_VERSION} pytest python=${{ matrix.python }} $CHANNELS
172189 # Test installed packages
173190 conda list
191+
174192 - name : Run tests
175193 run : |
176194 . $CONDA/etc/profile.d/conda.sh
@@ -197,11 +215,13 @@ jobs:
197215 name : ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }}
198216 - uses : conda-incubator/setup-miniconda@v3
199217 with :
218+ conda-remove-defaults : true
200219 auto-activate-base : true
201220 activate-environment : " "
221+
202222 - name : Install conda-build
203- # Needed to be able to run conda index
204223 run : conda install conda-build
224+
205225 - name : Create conda channel
206226 run : |
207227 mkdir ${{ env.GITHUB_WORKSPACE }}\channel\win-64
@@ -210,6 +230,7 @@ jobs:
210230 # Test channel
211231 conda search ${{ env.PACKAGE_NAME }} -c ${{ env.GITHUB_WORKSPACE }}/channel --override-channels --info --json > ${{ env.GITHUB_WORKSPACE }}\ver.json
212232 more ${{ env.GITHUB_WORKSPACE }}\ver.json
233+
213234 - name : Collect dependencies
214235 shell : cmd
215236 run : |
@@ -221,6 +242,7 @@ jobs:
221242 )
222243 conda create -n ${{ env.TEST_ENV_NAME }} ${{ env.PACKAGE_NAME }}=%PACKAGE_VERSION% python=${{ matrix.python }} -c ${{ env.GITHUB_WORKSPACE }}/channel ${{ env.CHANNELS }} --only-deps --dry-run > lockfile
223244 more lockfile
245+
224246 - name : Cache conda packages
225247 uses : actions/cache@v4
226248 env :
@@ -232,6 +254,7 @@ jobs:
232254 restore-keys : |
233255 ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-
234256 ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-
257+
235258 # add intel-openmp as an explicit dependency
236259 # to avoid it being missed when package version is specified exactly
237260 - name : Install mkl-service
@@ -247,6 +270,7 @@ jobs:
247270 conda create -n ${{ env.TEST_ENV_NAME }} ${{ env.PACKAGE_NAME }}=%PACKAGE_VERSION% %WORKAROUND_DEPENDENCIES% pytest python=${{ matrix.python }} -c ${{ env.GITHUB_WORKSPACE }}/channel ${{ env.CHANNELS }}
248271 # Test installed packages
249272 conda list
273+
250274 - name : Run tests
251275 run : |
252276 conda activate -n ${{ env.TEST_ENV_NAME }}
0 commit comments