-
Notifications
You must be signed in to change notification settings - Fork 141
53 lines (47 loc) · 1.73 KB
/
linux-build-test-gc.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
# Linux: Build the package with graph-cut support and runs the graphcut tests
# This test is kept separate, as the graphcut functionality is optional and unstable
# Triggered whenever a PR into the main or a Release* branch is opened
# Triggered for each new published release
# Note: the dependency libboost_python will always be installed against the OS's main python version,
# independent of the python version set-up. They are 22.04 = 3.10 and 20.04 = 3.8.
name: Build and test (w graphcut)
on:
release:
types: [published]
pull_request:
branches: [ "master", "Release*" ]
permissions:
contents: read
jobs:
test-ubuntu-22_04:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: Set up Python 3.10
uses: actions/setup-python@v5
with:
python-version: 3.10
- name: Install system dependencies for graphcut functionality
run: sudo apt-get install -y libboost-python-dev build-essential
- name: Install with test dependencies
run: |
python -m pip install --upgrade pip
python -m pip install -v .[test]
- name: Test with pytest (graphcut test only)
run: cd tests && pytest graphcut_/*
test-ubuntu-20_04:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v4
- name: Set up Python 3.8
uses: actions/setup-python@v5
with:
python-version: 3.8
- name: Install system dependencies for graphcut functionality
run: sudo apt-get install -y libboost-python-dev build-essential
- name: Install with test dependencies
run: |
python -m pip install --upgrade pip
python -m pip install -v .[test]
- name: Test with pytest (graphcut test only)
run: cd tests && pytest graphcut_/*