Skip to content

Commit 2610eb6

Browse files
committed
ci: update docker image adding pybind as a system dependency
1 parent 6eca741 commit 2610eb6

File tree

4 files changed

+18
-67
lines changed

4 files changed

+18
-67
lines changed

.build-tools/containers/buildenv/Dockerfile

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,5 +18,10 @@ RUN git clone -b v0.3.28 --single-branch --depth 1 https://github.com/OpenMathLi
1818
sudo make PREFIX=/usr/local install && \
1919
sudo rm -rf ${HOME}/OpenBLAS
2020

21-
21+
RUN sudo apt-get install -y python3.10-dev
22+
COPY requirements.txt $HOME
23+
RUN source $HOME/.venv/bin/activate && pip install --upgrade pip && pip install -r $HOME/requirements.txt && rm $HOME/requirements.txt
24+
25+
RUN sudo sed -i '/^\[instrumentation\]/,/^\[/{s/version *= *"ovni"/version = "none"/}' /usr/local/share/nosv.toml
26+
2227
WORKDIR $HOME
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
pybind11==3.0.1

.github/workflows/master-test-workflow.yml

Lines changed: 5 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -40,46 +40,19 @@ jobs:
4040
with:
4141
submodules: 'true'
4242

43-
- name: Build Pybind11
44-
run: |
45-
sudo apt-get update
46-
sudo apt-get install -y python3-pytest
47-
48-
cd extern/pybind11
49-
mkdir -p build
50-
cd build
51-
cmake .. -DPython_EXECUTABLE=/usr/bin/python3
52-
make check -j"$(nproc)"
53-
54-
mkdir -p mock_install/share/pkgconfig
55-
cat <<EOF > mock_install/share/pkgconfig/pybind11.pc
56-
prefix=$(pwd)/..
57-
includedir=\${prefix}/include
58-
59-
Name: pybind11
60-
Description: Seamless operability between C++11 and Python
61-
Version: 2.13.6
62-
Cflags: -I\${includedir}
63-
EOF
64-
65-
echo "PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$(pwd)/mock_install/share/pkgconfig" >> $GITHUB_ENV
66-
6743
- name: Dry-run compilation
68-
run: source /home/hicr/.bashrc && meson setup build -Dbuildtype=debug -Db_coverage=true -DdistributedEngine=mpi,lpf,none -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true -DexecutionStateType=nosv,boost -DprocessingUnitType=nosv,pthreads -DbuildPyTaskR=true && meson compile -C build
44+
shell: bash
45+
run: source /home/hicr/.bashrc && meson setup --wipe build -Dbuildtype=debug -Db_coverage=true -DdistributedEngines=mpi,lpf,none -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true -DexecutionStateType=nosv,boost -DprocessingUnitType=nosv,pthreads -DbuildPyTaskR=true -DbuildInstrumentation=false && meson compile -C build
6946

70-
- name: Setup
71-
run: source /home/hicr/.bashrc && meson setup build -Dbuildtype=debug -Db_coverage=true -DdistributedEngine=mpi,none -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true -DexecutionStateType=nosv,boost -DprocessingUnitType=nosv,pthreads -DbuildPyTaskR=true
72-
73-
- name: Compile
74-
run: source /home/hicr/.bashrc && meson compile -C build
75-
7647
- name: Running tests and creating coverage report
7748
shell: bash
7849
env:
7950
LD_PRELOAD: /usr/local/lib/libnosv.so
8051
run: |
8152
echo "Running Tests..."
8253
source /home/hicr/.bashrc
54+
meson setup build -Dbuildtype=debug -Db_coverage=true -DdistributedEngines=mpi,none -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true -DexecutionStateType=nosv,boost -DprocessingUnitType=nosv,pthreads -DbuildPyTaskR=true -DbuildInstrumentation=false
55+
meson compile -C build
8356
meson test -C build
8457
echo "Creating coverage report..."
8558
ninja -C build coverage
@@ -88,3 +61,4 @@ jobs:
8861
with:
8962
name: meson-logs-${{ inputs.arch }}
9063
path: build/meson-logs/
64+

.github/workflows/pr-development-workflow.yml

Lines changed: 6 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -230,16 +230,16 @@ jobs:
230230
run: |
231231
docker run --name taskr --shm-size=1024M --privileged -v $PWD:/home/hicr/taskr -w /home/hicr/taskr -td ${{ env.DOCKERIMAGE }}:${{ inputs.arch }}-latest bash
232232
233-
- name: Setup
234-
run: docker exec -u hicr taskr bash -c "meson setup build -Dbuildtype=debug -Db_coverage=true -DdistributedEngine=mpi,lpf,none -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true -DexecutionStateType=nosv,boost -DprocessingUnitType=nosv,pthreads -DbuildPyTaskR=true"
233+
- name: Dry-run compilation
234+
run: docker exec -u hicr taskr bash -c "meson setup build -Dbuildtype=debug -Db_coverage=true -DdistributedEngines=mpi,lpf,none -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true -DexecutionStateType=nosv,boost -DprocessingUnitType=nosv,pthreads -DbuildPyTaskR=true -DbuildInstrumentation=false && meson compile -C build"
235235

236236
- name: Compile
237237
run: docker exec -u hicr taskr bash -c "meson compile -C build"
238238

239239
- name: Running tests and creating coverage report
240240
run: |
241241
echo "Running Tests..."
242-
docker exec -u hicr taskr bash -c "source /home/hicr/.bashrc && meson test -C build"
242+
docker exec -u hicr taskr bash -c "meson setup build -Dbuildtype=debug -Db_coverage=true -DdistributedEngines=mpi,none -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true -DexecutionStateType=nosv,boost -DprocessingUnitType=nosv,pthreads -DbuildPyTaskR=true -DbuildInstrumentation=false && meson compile -C build && meson test -C build"
243243
echo "Creating coverage report..."
244244
docker exec -u hicr taskr bash -c "ninja -C build coverage"
245245
docker stop taskr
@@ -270,46 +270,17 @@ jobs:
270270
with:
271271
submodules: 'true'
272272

273-
- name: Build Pybind11
274-
run: |
275-
sudo apt-get update
276-
sudo apt-get install -y python3-pytest
277-
278-
cd extern/pybind11
279-
mkdir -p build
280-
cd build
281-
cmake .. -DPython_EXECUTABLE=/usr/bin/python3
282-
make check -j"$(nproc)"
283-
284-
mkdir -p mock_install/share/pkgconfig
285-
cat <<EOF > mock_install/share/pkgconfig/pybind11.pc
286-
prefix=$(pwd)/..
287-
includedir=\${prefix}/include
288-
289-
Name: pybind11
290-
Description: Seamless operability between C++11 and Python
291-
Version: 2.13.6
292-
Cflags: -I\${includedir}
293-
EOF
294-
295-
echo "PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$(pwd)/mock_install/share/pkgconfig" >> $GITHUB_ENV
296-
297273
- name: Dry-run compilation
298-
run: source /home/hicr/.bashrc && meson setup build -Dbuildtype=debug -Db_coverage=true -DdistributedEngine=mpi,lpf,none -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true -DexecutionStateType=nosv,boost -DprocessingUnitType=nosv,pthreads -DbuildPyTaskR=true && meson compile -C build
274+
run: source /home/hicr/.bashrc && meson setup build -Dbuildtype=debug -Db_coverage=true -DdistributedEngines=mpi,lpf,none -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true -DexecutionStateType=nosv,boost -DprocessingUnitType=nosv,pthreads -DbuildPyTaskR=true -DbuildInstrumentation=false && meson compile -C build
299275

300-
- name: Setup
301-
run: source /home/hicr/.bashrc && meson setup build -Dbuildtype=debug -Db_coverage=true -DdistributedEngine=mpi,none -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true -DexecutionStateType=nosv,boost -DprocessingUnitType=nosv,pthreads -DbuildPyTaskR=true
302-
303-
- name: Compile
304-
run: source /home/hicr/.bashrc && meson compile -C build
305-
306276
- name: Running tests and creating coverage report
307277
shell: bash
308278
env:
309279
LD_PRELOAD: /usr/local/lib/libnosv.so
310280
run: |
311-
echo "Running Tests..."
312281
source /home/hicr/.bashrc
282+
meson setup build -Dbuildtype=debug -Db_coverage=true -DdistributedEngine=mpi,none -DbuildTests=true -DbuildExamples=true -DcompileWarningsAsErrors=true -DexecutionStateType=nosv,boost -DprocessingUnitType=nosv,pthreads -DbuildPyTaskR=true -DbuildInstrumentation=false
283+
meson compile -C build
313284
meson test -C build
314285
echo "Creating coverage report..."
315286
ninja -C build coverage

0 commit comments

Comments
 (0)