forked from ilastik/ilastik
-
Notifications
You must be signed in to change notification settings - Fork 0
125 lines (121 loc) · 4.2 KB
/
core-conda-bld.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
name: conda-package
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
conda-noarch-build:
runs-on: ubuntu-latest
outputs:
version: ${{ steps.version.outputs.version }}
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: conda-incubator/setup-miniconda@v3
with:
auto-update-conda: true
auto-activate-base: true
activate-environment: ""
channel-priority: strict
miniforge-variant: Mambaforge
use-mamba: true
- name: install xvfb/deps
run: |
sudo apt-get update
sudo apt-get install -yy libgl1-mesa-dev xvfb curl
- name: install common conda dependencies
run: mamba install -n base -c conda-forge mamba boa setuptools_scm -y
- uses: actions/cache@v4
with:
path: |
pkgs/noarch
pkgs/channeldata.json
key: ${{ github.sha }}-packages
- id: version
shell: bash -l {0}
run: |
vers=$( python setup.py --version )
echo "version=${vers}" >> $GITHUB_OUTPUT
- name: linux conda build test
shell: bash -l {0}
run: |
mkdir -p ./pkgs/noarch
conda mambabuild -c conda-forge conda-recipe --no-test --output-folder ./pkgs
test-conda-packages:
needs: [conda-noarch-build]
strategy:
fail-fast: false
matrix:
os: [macos-latest, windows-latest, ubuntu-latest]
ilastik_variant: ["ilastik-core", "ilastik", "ilastik-gpu"]
exclude:
- os: macos-latest
ilastik_variant: "ilastik-gpu"
include:
- ilastik_variant: "ilastik-core"
build_prefix: "py_"
runs-on: ${{ matrix.os }}
env:
ILASTIK_PACKAGE_NAME: ${{ matrix.ilastik_variant }}-${{ needs.conda-noarch-build.outputs.version }}-${{ matrix.build_prefix }}0.tar.bz2
steps:
# necessary on windows: https://github.com/actions/cache/issues/591#issuecomment-845132253
- name: "Use GNU tar instead BSD tar"
if: matrix.os == 'windows-latest'
shell: cmd
run: echo C:\Program Files\Git\usr\bin>>"%GITHUB_PATH%"
- uses: al-cheb/[email protected]
with:
minimum-size: 12GB
disk-root: "C:"
if: |
matrix.os == 'windows-latest' &&
matrix.ilastik_variant == 'ilastik-gpu'
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: conda-incubator/setup-miniconda@v3
with:
auto-update-conda: true
auto-activate-base: true
activate-environment: ""
channel-priority: strict
miniforge-variant: Mambaforge
use-mamba: true
- name: install xvfb/deps
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get update
sudo apt-get install -yy mesa-utils libgl1-mesa-dev xvfb curl
- name: install common conda dependencies
run: mamba install -n base -c conda-forge boa setuptools_scm -y
- uses: actions/cache@v4
with:
path: |
pkgs/noarch
pkgs/channeldata.json
key: ${{ github.sha }}-packages
enableCrossOsArchive: true
- name: linux test
if: matrix.os == 'ubuntu-latest'
shell: bash -l {0}
run: |
xvfb-run --server-args="-screen 0 1024x768x24" conda mambabuild --test --override-channels \
-c ./pkgs -c pytorch -c nvidia -c ilastik-forge -c conda-forge \
./pkgs/noarch/${ILASTIK_PACKAGE_NAME}
- name: osx test
if: matrix.os == 'macos-latest'
shell: bash -l {0}
run: |
VOLUMINA_SHOW_3D_WIDGET=0 conda mambabuild --test --override-channels \
-c ./pkgs -c pytorch -c nvidia -c ilastik-forge -c conda-forge \
./pkgs/noarch/${ILASTIK_PACKAGE_NAME}
- name: windows test
if: matrix.os == 'windows-latest'
shell: cmd /C CALL {0}
run: |
set VOLUMINA_SHOW_3D_WIDGET=0
conda mambabuild --test --override-channels ^
-c .\pkgs -c pytorch -c nvidia -c ilastik-forge -c conda-forge ^
.\pkgs\noarch\%ILASTIK_PACKAGE_NAME%