From 70f86d9bbe8ec120bd9fa61e727837431b1ff1da Mon Sep 17 00:00:00 2001 From: etotmeni Date: Wed, 18 Aug 2021 05:54:57 -0500 Subject: [PATCH 1/5] Add workflow for win --- .github/workflows/conda-package.yml | 43 +++++++++++++++-------------- 1 file changed, 23 insertions(+), 20 deletions(-) diff --git a/.github/workflows/conda-package.yml b/.github/workflows/conda-package.yml index 406aaf1095..265bb1ad4c 100644 --- a/.github/workflows/conda-package.yml +++ b/.github/workflows/conda-package.yml @@ -8,50 +8,53 @@ env: jobs: build: - runs-on: ubuntu-latest + runs-on: ${{ matrix.os }} strategy: matrix: + os: [ubuntu-latest, windows-latest] + include: + - os: ubuntu-latest + pkgs_dirs: ~/.conda/pkgs + condarc: ~/.condarc + conda-bld: /usr/share/miniconda/conda-bld/linux-64/ + - os: windows-latest + pkgs_dirs: C:\Users\runneradmin\.conda\pkgs + condarc: C:\Users\runneradmin\.condarc + conda-bld: C:\Miniconda\conda-bld\ python: [3.8] steps: - uses: actions/checkout@v2 with: fetch-depth: 0 + - uses: conda-incubator/setup-miniconda@v2 + with: + auto-activate-base: true + activate-environment: "" - name: Set pkgs_dirs run: | - echo "pkgs_dirs: [~/.conda/pkgs]" >> ~/.condarc + echo "pkgs_dirs: [${{ matrix.pkgs_dirs }}]" >> ${{ matrix.condarc }} - name: Cache conda packages uses: actions/cache@v2 env: CACHE_NUMBER: 0 # Increase to reset cache with: - path: ~/.conda/pkgs + path: ${{ matrix.pkgs_dirs }} key: - ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-${{hashFiles('**/meta.yaml') }} + ${{ matrix.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-${{hashFiles('**/meta.yaml') }} restore-keys: | - ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}- - ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}- + ${{ matrix.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}- + ${{ matrix.os }}-conda-${{ env.CACHE_NUMBER }}- - - name: Add conda to system path - run: echo $CONDA/bin >> $GITHUB_PATH - name: Install conda-build run: conda install conda-build - name: Build conda package - run: | - CHANNELS="-c intel -c defaults --override-channels" - VERSIONS="--python ${{ matrix.python }}" - TEST="--no-test" - - conda build \ - $TEST \ - $VERSIONS \ - $CHANNELS \ - conda-recipe + run: conda build --no-test --python ${{ matrix.python }} -c intel -c defaults --override-channels conda-recipe - name: Upload artifact uses: actions/upload-artifact@v2 with: - name: ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }} - path: /usr/share/miniconda/conda-bld/linux-64/${{ env.PACKAGE_NAME }}-*.tar.bz2 + name: ${{ env.PACKAGE_NAME }} ${{ matrix.os }} Python ${{ matrix.python }} + path: ${{ matrix.conda-bld }}${{ env.PACKAGE_NAME }}-*.tar.bz2 test: needs: build From fea099112383a137f1fbc64ae9e1058dbcc6d164 Mon Sep 17 00:00:00 2001 From: etotmeni Date: Tue, 24 Aug 2021 05:43:45 -0500 Subject: [PATCH 2/5] .github/workflows/conda-package.yml --- .github/workflows/conda-package.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/conda-package.yml b/.github/workflows/conda-package.yml index 265bb1ad4c..3941b84dc9 100644 --- a/.github/workflows/conda-package.yml +++ b/.github/workflows/conda-package.yml @@ -20,7 +20,7 @@ jobs: - os: windows-latest pkgs_dirs: C:\Users\runneradmin\.conda\pkgs condarc: C:\Users\runneradmin\.condarc - conda-bld: C:\Miniconda\conda-bld\ + conda-bld: C:\Miniconda\conda-bld\win-64\ python: [3.8] steps: - uses: actions/checkout@v2 From 76dfd8e7f819905325b893d1606aee861989af4b Mon Sep 17 00:00:00 2001 From: etotmeni Date: Tue, 31 Aug 2021 06:22:28 -0500 Subject: [PATCH 3/5] Add win tests + some fixes --- .github/workflows/conda-package.yml | 76 ++++++++++++++++++++++++++--- 1 file changed, 68 insertions(+), 8 deletions(-) diff --git a/.github/workflows/conda-package.yml b/.github/workflows/conda-package.yml index 3941b84dc9..536a1acc93 100644 --- a/.github/workflows/conda-package.yml +++ b/.github/workflows/conda-package.yml @@ -41,11 +41,10 @@ jobs: with: path: ${{ matrix.pkgs_dirs }} key: - ${{ matrix.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-${{hashFiles('**/meta.yaml') }} + ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-${{hashFiles('**/meta.yaml') }} restore-keys: | - ${{ matrix.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}- - ${{ matrix.os }}-conda-${{ env.CACHE_NUMBER }}- - + ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}- + ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}- - name: Install conda-build run: conda install conda-build - name: Build conda package @@ -53,10 +52,10 @@ jobs: - name: Upload artifact uses: actions/upload-artifact@v2 with: - name: ${{ env.PACKAGE_NAME }} ${{ matrix.os }} Python ${{ matrix.python }} + name: ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }} path: ${{ matrix.conda-bld }}${{ env.PACKAGE_NAME }}-*.tar.bz2 - test: + test_linux: needs: build runs-on: ${{ matrix.runner }} @@ -89,7 +88,6 @@ jobs: conda index $GITHUB_WORKSPACE/channel # Test channel conda search $PACKAGE_NAME -c $GITHUB_WORKSPACE/channel --override-channels - - name: Collect dependencies run: | CHANNELS="-c $GITHUB_WORKSPACE/channel ${{ env.CHANNELS }}" @@ -108,7 +106,6 @@ jobs: restore-keys: | ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}- - - name: Install dpctl run: | CHANNELS="-c $GITHUB_WORKSPACE/channel ${{ env.CHANNELS }}" @@ -122,6 +119,69 @@ jobs: # clinfo -l python -m pytest --pyargs $MODULE_NAME + test_windows: + needs: build + runs-on: ${{ matrix.runner }} + + strategy: + matrix: + python: [3.8] + experimental: [false] + runner: [windows-latest] + include: + - python: 3.8 + experimental: true + runner: [self-hosted, gen9] + continue-on-error: ${{ matrix.experimental }} + env: + CHANNELS: -c intel -c defaults --override-channels + + steps: + - name: Download artifact + uses: actions/download-artifact@v2 + with: + name: ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }} + - uses: conda-incubator/setup-miniconda@v2 + with: + auto-activate-base: true + activate-environment: "" + - name: Install conda-build + run: conda install conda-build + - name: Create conda channel + run: | + mkdir -p $GITHUB_WORKSPACE/channel/win-64 + mv ${{ env.PACKAGE_NAME }}-*.tar.bz2 ${{ env.GITHUB_WORKSPACE }}/channel/win-64 + conda index ${{ env.GITHUB_WORKSPACE }}/channel + # Test channel + conda search ${{ env.PACKAGE_NAME }} -c ${{ env.GITHUB_WORKSPACE }}/channel --override-channels + - name: Collect dependencies + run: conda install ${{ env.PACKAGE_NAME }} python=${{ matrix.python }} -c ${{ env.GITHUB_WORKSPACE }}/channel ${{ env.CHANNELS }} --only-deps --dry-run > lockfile + - name: Set pkgs_dirs + run: | + echo "pkgs_dirs: [C:\Users\runneradmin\.conda\pkgs]" >> C:\Users\runneradmin\.condarc + - name: Cache conda packages + uses: actions/cache@v2 + env: + CACHE_NUMBER: 0 # Increase to reset cache + with: + path: C:\Users\runneradmin\.conda\pkgs + key: + ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-${{hashFiles('lockfile') }} + restore-keys: | + ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}- + ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}- + - name: Install opencl_rt + run: conda install opencl_rt -c intel --override-channels + - name: Install dpctl + run: | + conda install ${{ env.PACKAGE_NAME }} pytest python=${{ matrix.python }} -c ${{ env.GITHUB_WORKSPACE }}/channel ${{ env.CHANNELS }} + # Test installed packages + conda list + - name: Add library + run: echo "OCL_ICD_FILENAMES=C:\Miniconda\Library\lib\intelocl64.dll" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append + - name: Run tests + run: python -m pytest --pyargs ${{ env.MODULE_NAME }} + upload: needs: test if: ${{ github.ref == 'refs/heads/master' }} From ff565acaee4234d8432a1b4c56fc81f974ffcde6 Mon Sep 17 00:00:00 2001 From: etotmeni Date: Tue, 31 Aug 2021 07:01:05 -0500 Subject: [PATCH 4/5] add upload win --- .github/workflows/conda-package.yml | 30 +++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/.github/workflows/conda-package.yml b/.github/workflows/conda-package.yml index 536a1acc93..d9ceebb5dd 100644 --- a/.github/workflows/conda-package.yml +++ b/.github/workflows/conda-package.yml @@ -182,8 +182,8 @@ jobs: - name: Run tests run: python -m pytest --pyargs ${{ env.MODULE_NAME }} - upload: - needs: test + upload_linux: + needs: test_linux if: ${{ github.ref == 'refs/heads/master' }} runs-on: ubuntu-latest strategy: @@ -206,3 +206,29 @@ jobs: run: | conda install anaconda-client anaconda --token $ANACONDA_TOKEN upload --user dppy --label dev ${PACKAGE_NAME}-*.tar.bz2 + + upload_windows: + needs: test_windows + if: ${{ github.ref == 'refs/heads/master' }} + runs-on: windows-latest + strategy: + matrix: + python: [3.8] + steps: + - name: Download artifact + uses: actions/download-artifact@v2 + with: + name: ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }} + - uses: conda-incubator/setup-miniconda@v2 + with: + auto-activate-base: true + activate-environment: "" + - name: Install anaconda-client + run: conda install anaconda-client + + - name: Upload + env: + ANACONDA_TOKEN: ${{ secrets.ANACONDA_TOKEN }} + run: | + conda install anaconda-client + anaconda --token ${{ env.ANACONDA_TOKEN }} upload --user dppy --label dev ${{ env.PACKAGE_NAME }}-*.tar.bz2 From 61cad0a5ff1ddc57214279135c7d07cc30163ec8 Mon Sep 17 00:00:00 2001 From: etotmeni Date: Tue, 31 Aug 2021 08:19:49 -0500 Subject: [PATCH 5/5] Del self-hosted win --- .github/workflows/conda-package.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/workflows/conda-package.yml b/.github/workflows/conda-package.yml index d9ceebb5dd..fab2721f11 100644 --- a/.github/workflows/conda-package.yml +++ b/.github/workflows/conda-package.yml @@ -128,10 +128,6 @@ jobs: python: [3.8] experimental: [false] runner: [windows-latest] - include: - - python: 3.8 - experimental: true - runner: [self-hosted, gen9] continue-on-error: ${{ matrix.experimental }} env: CHANNELS: -c intel -c defaults --override-channels