diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 00000000000..2f58c820c32 --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,55 @@ +name: CMake/C++ CI + +on: + push: + branches: + - master + pull_request: + branches: + - master + +jobs: +# install-dependencies: +# runs-on: [self-hosted, linux] +# steps: +# - name: install dependencies +# run: | +# sudo apt-get -y update +# sudo apt install -y build-essential ninja-build clang +# sudo apt install -y cmake ccache +# sudo apt install -y qt5-default +# sudo apt install -y libboost-atomic-dev libboost-all-dev +# sudo apt install -y python2.7-dev python-numpy python-scipy +# sudo apt install -y libpng-dev libjpeg-dev libtiff-dev zlib1g-dev libglew-dev + build: +# needs: [install-dependencies] + # ideally I'd like this to run in custom docker image instead of running directly in the self-hosted vm: + runs-on: [self-hosted, linux] # [self-hosted docker://bmarques68/sofa-ubuntu:18.04] + steps: + # Chechout the project's repo: + - uses: actions/checkout@v1 + + # when running on a self-hosted vm with preinstalled deps this dependency step is not necessary of course...: + - name: configure SOFA + run: | + mkdir -p ../build + cd ../build + cmake ../sofa -G Ninja -DCMAKE_CXX_COMPILER="/usr/bin/clang++" -DSOFA_BUILD_METIS=ON -DPLUGIN_SOFASPARSESOLVER=ON -DPLUGIN_SOFAPYTHON=ON -DCMAKE_INSTALL_PREFIX="~/SOFA" + + - name: build SOFA + run: | + cd ../build + ninja + ninja install + + run-tests: + needs: [build] + runs-on: [self-hosted, linux] + steps: + - name: run-tests + run: | + cd ../build/bin + for f in *_test + do + ./$f + done diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml new file mode 100644 index 00000000000..581d3945272 --- /dev/null +++ b/.github/workflows/tests.yml @@ -0,0 +1,17 @@ +name: test-workflow + +on: + push: + branches: + - master + pull_request: + branches: + - master + +jobs: + plop: + runs-on: [self-hosted, linux] + needs: [build] + steps: + - name: plop + run: echo "pouet pouet"