diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6687a8f4b..2fae0ce86 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -12,10 +12,47 @@ on: # * is a special character in YAML so you have to quote this string # Execute a "nightly" build at 2 AM UTC - cron: '0 2 * * *' - - + + jobs: - build: + docker-build: + name: '[docker:${{ matrix.project_tags }}@${{ matrix.docker_image }}@${{ matrix.build_type }}]' + runs-on: ubuntu-latest + strategy: + matrix: + build_type: [Debug] + project_tags: [Stable, Unstable] + cmake_generator: + - "Ninja" + docker_image: + - "ubuntu:focal" + - "debian:stable" + # Workaround for https://github.com/robotology/robotology-superbuild/issues/383 + # - "debian:sid" + container: + image: ${{ matrix.docker_image }} + + steps: + - uses: actions/checkout@master + + - name: Dependencies [Docker] + run: | + chmod +x ./.ci/install_debian.sh + ./.ci/install_debian.sh + + - name: Configure [Docker] + run: | + mkdir -p build + cd build + # Octave is disabled as a workaround for https://github.com/robotology/robotology-superbuild/issues/384 + cmake -G"${{ matrix.cmake_generator }}" -DROBOTOLOGY_USES_GAZEBO:BOOL=ON -DROBOTOLOGY_USES_OCTAVE:BOOL=OFF -DROBOTOLOGY_USES_PYTHON:BOOL=ON -DROBOTOLOGY_ENABLE_ROBOT_TESTING:BOOL=ON -DROBOTOLOGY_ENABLE_DYNAMICS:BOOL=ON -DROBOTOLOGY_ENABLE_HUMAN_DYNAMICS:BOOL=ON -DROBOTOLOGY_ENABLE_ICUB_HEAD:BOOL=ON -DROBOTOLOGY_ENABLE_ICUB_BASIC_DEMOS:BOOL=ON -DNON_INTERACTIVE_BUILD:BOOL=TRUE -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DROBOTOLOGY_PROJECT_TAGS=${{ matrix.project_tags }} .. + + - name: Build [Docker] + run: | + cd build + cmake --build . --config ${{ matrix.build_type }} + + normal-build: name: '[${{ matrix.project_tags }}@${{ matrix.os }}@${{ matrix.build_type }}]' runs-on: ${{ matrix.os }} strategy: