@@ -20,21 +20,26 @@ jobs:
2020 if : github.event.pull_request.draft == false
2121 runs-on : ubuntu-latest
2222 container :
23- image : ghcr.io/faasm/faabric:0.21 .0
23+ image : ghcr.io/faasm/faabric:0.22 .0
2424 env :
2525 DEPLOYMENT_TYPE : gha-ci
2626 steps :
2727 - name : " Check-out code"
2828 uses : actions/checkout@v4
29- - uses : faasm/conan-cache-action@v3
30- - name : " Build Conan CMake deps to be shared by all runs"
31- run : ./bin/inv_wrapper.sh dev.cmake --build Debug --clean
29+ - uses : faasm/conan-cache-action@main
30+ with :
31+ build-type : Debug
32+ from : faabric
33+ - name : " Build Conan deps to be shared by all runs"
34+ run : |
35+ ./bin/inv_wrapper.sh dev.conan --build Debug
36+ ./bin/inv_wrapper.sh dev.conan --build Release
3237
3338 docs :
3439 if : github.event.pull_request.draft == false
3540 runs-on : ubuntu-latest
3641 container :
37- image : ghcr.io/faasm/faabric:0.21 .0
42+ image : ghcr.io/faasm/faabric:0.22 .0
3843 steps :
3944 - name : " Check out code"
4045 uses : actions/checkout@v4
4550 if : github.event.pull_request.draft == false
4651 runs-on : ubuntu-latest
4752 container :
48- image : ghcr.io/faasm/faabric:0.21 .0
53+ image : ghcr.io/faasm/faabric:0.22 .0
4954 steps :
5055 - name : " Check out code"
5156 uses : actions/checkout@v4
@@ -65,17 +70,22 @@ jobs:
6570 REDIS_QUEUE_HOST : redis
6671 REDIS_STATE_HOST : redis
6772 container :
68- image : ghcr.io/faasm/faabric:0.21 .0
73+ image : ghcr.io/faasm/faabric:0.22 .0
6974 options : --privileged
7075 services :
7176 redis :
7277 image : redis
7378 steps :
7479 - name : " Check-out code"
7580 uses : actions/checkout@v4
76- - uses : faasm/conan-cache-action@v3
81+ - uses : faasm/conan-cache-action@main
82+ with :
83+ build-type : Debug
84+ from : faabric
7785 - name : " Ping redis"
7886 run : redis-cli -h redis ping
87+ - name : " Run conan"
88+ run : ./bin/inv_wrapper.sh dev.conan --build=Debug
7989 - name : " Run cmake for tests"
8090 run : ./bin/inv_wrapper.sh dev.cmake --clean --build=Debug --coverage
8191 - name : " Build tests"
@@ -98,23 +108,35 @@ jobs:
98108 strategy :
99109 fail-fast : false
100110 matrix :
101- sanitiser : [None, Address, Thread , Undefined]
111+ sanitiser : [None, Thread, Address , Undefined]
102112 env :
103113 DEPLOYMENT_TYPE : gha-ci
104114 REDIS_QUEUE_HOST : redis
105115 REDIS_STATE_HOST : redis
106116 container :
107- image : ghcr.io/faasm/faabric:0.21 .0
117+ image : ghcr.io/faasm/faabric:0.22 .0
108118 options : --privileged
109119 services :
110120 redis :
111121 image : redis
112122 steps :
113123 - name : " Check-out code"
114124 uses : actions/checkout@v4
115- - uses : faasm/conan-cache-action@v3
125+ - uses : faasm/conan-cache-action@main
126+ with :
127+ build-type : Debug
128+ from : faabric
116129 - name : " Ping redis"
117130 run : redis-cli -h redis ping
131+ # For sanitised builds, we need to also re-build all Conan dependencies
132+ # so that they are also sanitized. Otherwise this causes unexpected
133+ # crashes.
134+ - name : " Re-build conan deps"
135+ if : ${{ matrix.sanitiser != 'None' }}
136+ run : ./bin/inv_wrapper.sh dev.conan --clean --build=Debug --sanitiser ${{ matrix.sanitiser }}
137+ - name : " Run conan"
138+ if : ${{ matrix.sanitiser == 'None' }}
139+ run : ./bin/inv_wrapper.sh dev.conan --build=Debug --sanitiser ${{ matrix.sanitiser }}
118140 - name : " Run cmake for tests"
119141 run : ./bin/inv_wrapper.sh dev.cmake --clean --build=Debug --sanitiser ${{ matrix.sanitiser }}
120142 - name : " Build tests"
@@ -133,8 +155,10 @@ jobs:
133155 # --- Code update ---
134156 - name : " Check out code"
135157 uses : actions/checkout@v4
136- - name : " Conan cache"
137- uses : faasm/conan-cache-action@v3
158+ - uses : faasm/conan-cache-action@main
159+ with :
160+ build-type : Debug
161+ from : faabric
138162 - name : " Build distributed tests"
139163 run : ./dist-test/build.sh
140164 - name : " Run the distributed tests"
@@ -156,22 +180,27 @@ jobs:
156180 REDIS_QUEUE_HOST : redis
157181 REDIS_STATE_HOST : redis
158182 container :
159- image : ghcr.io/faasm/faabric:0.21 .0
183+ image : ghcr.io/faasm/faabric:0.22 .0
160184 services :
161185 redis :
162186 image : redis
163187 steps :
164188 - name : " Check-out code"
165189 uses : actions/checkout@v4
166- - uses : faasm/conan-cache-action@v3
190+ - uses : faasm/conan-cache-action@main
167191 with :
168- build-type : " release"
192+ build-type : Release
193+ from : faabric
194+ - name : " Run conan"
195+ run : ./bin/inv_wrapper.sh dev.conan --build=Release
169196 - name : " Run cmake shared"
170197 run : ./bin/inv_wrapper.sh dev.cmake --clean --shared --build=Release
171198 - name : " Build Faabric shared library"
172199 run : ./bin/inv_wrapper.sh dev.cc faabric --shared
173200 - name : " Install Faabric shared library"
174201 run : ./bin/inv_wrapper.sh dev.install faabric --shared
202+ - name : " Re-run conan (needed for examples)"
203+ run : ./bin/inv_wrapper.sh dev.conan --build=Release
175204 - name : " Build examples"
176205 run : ./bin/inv_wrapper.sh examples
177206 - name : " Run example to check"
0 commit comments