-
Notifications
You must be signed in to change notification settings - Fork 22
81 lines (77 loc) · 2.44 KB
/
build-cloe.yaml
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
---
name: Build Cloe
on:
push:
branches:
- master
- develop
- "release/**"
paths-ignore:
- "*.md"
- ".gitignore"
- "LICENSE"
- "dist/**"
- "docs/**"
- "ui/**"
pull_request:
paths-ignore:
- "*.md"
- ".gitignore"
- "LICENSE"
- "dist/**"
- "docs/**"
- "ui/**"
jobs:
build-cloe:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os:
- "ubuntu-20.04"
- "ubuntu-22.04"
conan_profile:
- "cloe-normal"
package_target:
# 1. Build each test configuration in Conan cache and run all tests
- "export-vendor export-all smoketest-deps smoketest"
# 2. Build cloe super-package in editable mode and run tests
- "export-vendor editable all smoketest TEST_CONANFILES=tests/conanfile_superbuild.py"
# 3. TODO: Build individual packages in editable mode and run tests
# This cannot be currently enabled because of a Conan deficiency in v1.
# Once all build tooling is based on Conan v2, we can re-enable this use-case.
# Until then, use the previous target for this use-case.
# - "export-vendor editable-select build-all smoketest TEST_CONANFILES=tests/conanfile_deployment.py"
env:
CONAN_NON_INTERACTIVE: "yes"
DEBIAN_FRONTEND: noninteractive
LC_ALL: C.UTF-8
LANG: C.UTF-8
steps:
- name: Checkout repository
uses: actions/checkout@v3
with:
fetch-depth: 0
- run: echo "$HOME/.local/bin" >> $GITHUB_PATH
- name: Install system dependencies
run: |
sudo apt-get update &&
sudo apt-get install -y make locales &&
sudo make -f Makefile.setup \
DEBIAN_FRONTEND=noninteractive \
APT_ARGS="--no-install-recommends -y" \
install-system-deps \
&&
sudo locale-gen
- name: Install Python dependencies
run: |
sudo pip3 install --upgrade pip &&
make -f Makefile.setup PIP_INSTALL_ARGS="" install-python-deps
- name: Configure Conan
run: |
make setup-conan
conan config set general.default_profile=${{ matrix.conan_profile }}
conan config set general.default_build_profile=${{ matrix.conan_profile }}
make export-cli
- name: Build cloe
run: |
make ${{ matrix.package_target }}