diff --git a/delphyne_demos/.flake8 b/.flake8 similarity index 100% rename from delphyne_demos/.flake8 rename to .flake8 diff --git a/.github/dependencies.repos b/.github/dependencies.repos index 632083d..2aaa0f5 100644 --- a/.github/dependencies.repos +++ b/.github/dependencies.repos @@ -3,7 +3,39 @@ repositories: type: git url: https://github.com/ToyotaResearchInstitute/ament_cmake_doxygen version: main - pybind11: + drake_vendor: type: git - url: https://github.com/RobotLocomotion/pybind11.git - version: c39ede1eedd4f39aa167d7b30b53ae45967c39b7 + url: https://github.com/maliput/drake_vendor + version: main + maliput: + type: git + url: https://github.com/maliput/maliput + version: main + maliput_dragway: + type: git + url: https://github.com/maliput/maliput_dragway + version: main + maliput_drake: + type: git + url: https://github.com/maliput/maliput_drake + version: main + maliput_malidrive: + type: git + url: https://github.com/maliput/maliput_malidrive + version: main + maliput_multilane: + type: git + url: https://github.com/maliput/maliput_multilane + version: main + maliput_py: + type: git + url: https://github.com/maliput/maliput_py + version: main + delphyne: + type: git + url: https://github.com/maliput/delphyne + version: main + delphyne_gui: + type: git + url: https://github.com/maliput/delphyne_gui + version: main diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ba6b70e..540671b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,6 +1,7 @@ name: Compile and test on: + push: pull_request: branches: - main @@ -19,76 +20,21 @@ jobs: image: ubuntu:20.04 steps: # setup-ros first since it installs git, which is needed to fetch all branches from actions/checkout - - uses: ros-tooling/setup-ros@0.2.1 + - uses: ros-tooling/setup-ros@v0.3 env: ACTIONS_ALLOW_UNSECURE_COMMANDS: true - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: path: ${{ env.ROS_WS }}/src/${{ env.PACKAGE_NAME }} - # clone private dependencies - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/maliput - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/maliput - token: ${{ secrets.MALIPUT_TOKEN }} - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/maliput_py - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/maliput_py - token: ${{ secrets.MALIPUT_TOKEN }} - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/maliput_malidrive - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/maliput_malidrive - token: ${{ secrets.MALIPUT_TOKEN }} - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/maliput_dragway - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/maliput_dragway - token: ${{ secrets.MALIPUT_TOKEN }} - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/maliput_multilane - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/maliput_multilane - token: ${{ secrets.MALIPUT_TOKEN }} - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/delphyne - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/delphyne - token: ${{ secrets.MALIPUT_TOKEN }} - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/delphyne_gui - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/delphyne_gui - token: ${{ secrets.MALIPUT_TOKEN }} - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/maliput_drake - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/maiput_drake - token: ${{ secrets.MALIPUT_TOKEN }} - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/drake-vendor - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/drake_vendor - token: ${{ secrets.MALIPUT_TOKEN }} - - name: check if dependencies have a matching branch - shell: bash - working-directory: ${{ env.ROS_WS }}/src - run: ./${PACKAGE_NAME}/.github/try_vcs_checkout ${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}} . # clone public dependencies - name: vcs import shell: bash working-directory: ${{ env.ROS_WS }} run: vcs import src < src/${PACKAGE_NAME}/.github/dependencies.repos + - name: check if dependencies have a matching branch + shell: bash + working-directory: ${{ env.ROS_WS }}/src + run: ./${PACKAGE_NAME}/.github/try_vcs_checkout ${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}} . - run: colcon graph shell: bash working-directory: ${{ env.ROS_WS }} @@ -97,7 +43,7 @@ jobs: working-directory: ${{ env.ROS_WS }} run: | rosdep update; - rosdep install -i -y --rosdistro ${ROS_DISTRO} --skip-keys "pybind11" --from-paths src + rosdep install -i -y --rosdistro ${ROS_DISTRO} --from-paths src - name: install drake shell: bash working-directory: ${{ env.ROS_WS }}/src/drake_vendor @@ -110,7 +56,7 @@ jobs: . /opt/ros/${ROS_DISTRO}/setup.bash; colcon build --packages-up-to ${PACKAGE_NAME} \ --event-handlers=console_direct+ \ - --cmake-args -DBUILD_TESTING=OFF -DBUILD_DOCS=OFF; + --cmake-args -DBUILD_TESTING=ON -DBUILD_DOCS=OFF; # Build maliput libraries. - name: colcon build maliput backends shell: bash @@ -119,7 +65,7 @@ jobs: . /opt/ros/${ROS_DISTRO}/setup.bash; colcon build --packages-up-to maliput_dragway maliput_multilane maliput_malidrive \ --event-handlers=console_direct+ \ - --cmake-args -DBUILD_TESTING=OFF -DBUILD_DOCS=OFF; + --cmake-args -DBUILD_TESTING=ON -DBUILD_DOCS=OFF; # Build tests for current package. - name: colcon build tests shell: bash @@ -138,3 +84,30 @@ jobs: . install/setup.bash; colcon test --packages-select ${PACKAGE_NAME} --event-handlers=console_direct+; colcon test-result --verbose; + # Build documentation. + - name: colcon build ament_cmake_doxygen + shell: bash + working-directory: ${{ env.ROS_WS }} + run: | + . /opt/ros/${ROS_DISTRO}/setup.bash; + colcon build --packages-select ament_cmake_doxygen --event-handlers=console_direct+; + - name: colcon build doxygen documentation + shell: bash + working-directory: ${{ env.ROS_WS }} + run: | + . /opt/ros/${ROS_DISTRO}/setup.bash; + . install/setup.bash; + colcon build --packages-up-to ${PACKAGE_NAME} --packages-skip ament_cmake_doxygen \ + --event-handlers=console_direct+ \ + --cmake-args -DBUILD_TESTING=ON -DBUILD_DOCS=ON; + # Test doxygen documentation. + - name: colcon test doxygen documentation + shell: bash + working-directory: ${{ env.ROS_WS }} + run: | + . /opt/ros/${ROS_DISTRO}/setup.bash; + . install/setup.bash; + colcon test --packages-select ${PACKAGE_NAME} \ + --ctest-args ' -R' ' delphyne_demos_doxygen_warnings' \ + --event-handlers=console_direct+; + colcon test-result --verbose; diff --git a/.github/workflows/sanitizers.yml b/.github/workflows/sanitizers.yml index 9f05c37..506ff09 100644 --- a/.github/workflows/sanitizers.yml +++ b/.github/workflows/sanitizers.yml @@ -34,71 +34,12 @@ jobs: LDFLAGS: -fuse-ld=lld-8 steps: # setup-ros first since it installs git, which is needed to fetch all branches from actions/checkout - - uses: ros-tooling/setup-ros@0.2.1 + - uses: ros-tooling/setup-ros@v0.3 env: ACTIONS_ALLOW_UNSECURE_COMMANDS: true - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: path: ${{ env.ROS_WS }}/src/${{ env.PACKAGE_NAME }} - # clone private dependencies - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/maliput - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/maliput - token: ${{ secrets.MALIPUT_TOKEN }} - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/maliput_py - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/maliput_py - token: ${{ secrets.MALIPUT_TOKEN }} - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/maliput_malidrive - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/maliput_malidrive - token: ${{ secrets.MALIPUT_TOKEN }} - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/maliput_dragway - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/maliput_dragway - token: ${{ secrets.MALIPUT_TOKEN }} - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/maliput_multilane - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/maliput_multilane - token: ${{ secrets.MALIPUT_TOKEN }} - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/delphyne - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/delphyne - token: ${{ secrets.MALIPUT_TOKEN }} - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/delphyne_gui - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/delphyne_gui - token: ${{ secrets.MALIPUT_TOKEN }} - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/maliput_drake - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/maliput_drake - token: ${{ secrets.MALIPUT_TOKEN }} - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/drake-vendor - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/drake_vendor - token: ${{ secrets.MALIPUT_TOKEN }} - - name: check if dependencies have a matching branch - shell: bash - working-directory: ${{ env.ROS_WS }}/src - run: ./${PACKAGE_NAME}/.github/try_vcs_checkout ${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}} . - name: clang 8 install shell: bash run: ${{ env.ROS_WS }}/src/${PACKAGE_NAME}/.github/clang_suite_installation.sh @@ -107,6 +48,10 @@ jobs: shell: bash working-directory: ${{ env.ROS_WS }} run: vcs import src < src/${PACKAGE_NAME}/.github/dependencies.repos + - name: check if dependencies have a matching branch + shell: bash + working-directory: ${{ env.ROS_WS }}/src + run: ./${PACKAGE_NAME}/.github/try_vcs_checkout ${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}} . - run: colcon graph shell: bash working-directory: ${{ env.ROS_WS }} @@ -115,7 +60,7 @@ jobs: working-directory: ${{ env.ROS_WS }} run: | rosdep update; - rosdep install -i -y --rosdistro ${ROS_DISTRO} --skip-keys "pybind11" --from-paths src + rosdep install -i -y --rosdistro ${ROS_DISTRO} --from-paths src - name: install drake shell: bash working-directory: ${{ env.ROS_WS }}/src/drake_vendor diff --git a/.github/workflows/scan_build.yml b/.github/workflows/scan_build.yml index 20548ff..94f59bd 100644 --- a/.github/workflows/scan_build.yml +++ b/.github/workflows/scan_build.yml @@ -23,47 +23,12 @@ jobs: LDFLAGS: -fuse-ld=lld-8 steps: # setup-ros first since it installs git, which is needed to fetch all branches from actions/checkout - - uses: ros-tooling/setup-ros@0.2.1 + - uses: ros-tooling/setup-ros@v0.3 env: ACTIONS_ALLOW_UNSECURE_COMMANDS: true - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: path: ${{ env.ROS_WS }}/src/${{ env.PACKAGE_NAME }} - # clone private dependencies - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/maliput - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/maliput - token: ${{ secrets.MALIPUT_TOKEN }} - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/maliput_py - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/maliput_py - token: ${{ secrets.MALIPUT_TOKEN }} - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/delphyne - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/delphyne - token: ${{ secrets.MALIPUT_TOKEN }} - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/delphyne_gui - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/delphyne_gui - token: ${{ secrets.MALIPUT_TOKEN }} - - uses: actions/checkout@v2 - with: - repository: ToyotaResearchInstitute/drake-vendor - fetch-depth: 0 - path: ${{ env.ROS_WS }}/src/drake_vendor - token: ${{ secrets.MALIPUT_TOKEN }} - - name: check if dependencies have a matching branch - shell: bash - working-directory: ${{ env.ROS_WS }}/src - run: ./${PACKAGE_NAME}/.github/try_vcs_checkout ${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}} . - name: clang 8 install shell: bash run: ${{ env.ROS_WS }}/src/${PACKAGE_NAME}/.github/clang_suite_installation.sh @@ -72,6 +37,10 @@ jobs: shell: bash working-directory: ${{ env.ROS_WS }} run: vcs import src < src/${PACKAGE_NAME}/.github/dependencies.repos + - name: check if dependencies have a matching branch + shell: bash + working-directory: ${{ env.ROS_WS }}/src + run: ./${PACKAGE_NAME}/.github/try_vcs_checkout ${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}} . - run: colcon graph shell: bash working-directory: ${{ env.ROS_WS }} @@ -80,7 +49,7 @@ jobs: working-directory: ${{ env.ROS_WS }} run: | rosdep update; - rosdep install -i -y --rosdistro ${ROS_DISTRO} --skip-keys "pybind11" --from-paths src + rosdep install -i -y --rosdistro ${ROS_DISTRO} --from-paths src - name: install drake shell: bash working-directory: ${{ env.ROS_WS }}/src/drake_vendor diff --git a/delphyne_demos/CHANGELOG.rst b/CHANGELOG.rst similarity index 100% rename from delphyne_demos/CHANGELOG.rst rename to CHANGELOG.rst diff --git a/delphyne_demos/CMakeLists.txt b/CMakeLists.txt similarity index 100% rename from delphyne_demos/CMakeLists.txt rename to CMakeLists.txt diff --git a/delphyne_demos/cmake/SanitizersConfig.cmake b/cmake/SanitizersConfig.cmake similarity index 100% rename from delphyne_demos/cmake/SanitizersConfig.cmake rename to cmake/SanitizersConfig.cmake diff --git a/delphyne_demos/README.md b/delphyne_demos/README.md deleted file mode 100644 index 85d3017..0000000 --- a/delphyne_demos/README.md +++ /dev/null @@ -1 +0,0 @@ -# delphyne_demos \ No newline at end of file diff --git a/delphyne_demos/demos/CMakeLists.txt b/demos/CMakeLists.txt similarity index 100% rename from delphyne_demos/demos/CMakeLists.txt rename to demos/CMakeLists.txt diff --git a/delphyne_demos/demos/__init__.py b/demos/__init__.py similarity index 100% rename from delphyne_demos/demos/__init__.py rename to demos/__init__.py diff --git a/delphyne_demos/demos/city.py b/demos/city.py similarity index 100% rename from delphyne_demos/demos/city.py rename to demos/city.py diff --git a/delphyne_demos/demos/crash.py b/demos/crash.py similarity index 100% rename from delphyne_demos/demos/crash.py rename to demos/crash.py diff --git a/delphyne_demos/demos/dragway.py b/demos/dragway.py similarity index 100% rename from delphyne_demos/demos/dragway.py rename to demos/dragway.py diff --git a/delphyne_demos/demos/gazoo.py b/demos/gazoo.py similarity index 100% rename from delphyne_demos/demos/gazoo.py rename to demos/gazoo.py diff --git a/delphyne_demos/demos/helpers.py b/demos/helpers.py similarity index 100% rename from delphyne_demos/demos/helpers.py rename to demos/helpers.py diff --git a/delphyne_demos/demos/keyboard_handler.py b/demos/keyboard_handler.py similarity index 100% rename from delphyne_demos/demos/keyboard_handler.py rename to demos/keyboard_handler.py diff --git a/delphyne_demos/demos/keyop.py b/demos/keyop.py similarity index 100% rename from delphyne_demos/demos/keyop.py rename to demos/keyop.py diff --git a/delphyne_demos/demos/mali.py b/demos/mali.py similarity index 100% rename from delphyne_demos/demos/mali.py rename to demos/mali.py diff --git a/delphyne_demos/demos/mobil_perf.py b/demos/mobil_perf.py similarity index 100% rename from delphyne_demos/demos/mobil_perf.py rename to demos/mobil_perf.py diff --git a/delphyne_demos/demos/realtime.py b/demos/realtime.py similarity index 100% rename from delphyne_demos/demos/realtime.py rename to demos/realtime.py diff --git a/delphyne_demos/demos/roads.py b/demos/roads.py similarity index 100% rename from delphyne_demos/demos/roads.py rename to demos/roads.py diff --git a/delphyne_demos/demos/scriptlets.py b/demos/scriptlets.py similarity index 100% rename from delphyne_demos/demos/scriptlets.py rename to demos/scriptlets.py diff --git a/delphyne_demos/demos/trip_integration.py b/demos/trip_integration.py similarity index 100% rename from delphyne_demos/demos/trip_integration.py rename to demos/trip_integration.py diff --git a/delphyne_demos/doc/Doxyfile.overlay.in b/doc/Doxyfile.overlay.in similarity index 100% rename from delphyne_demos/doc/Doxyfile.overlay.in rename to doc/Doxyfile.overlay.in diff --git a/delphyne_demos/examples/CMakeLists.txt b/examples/CMakeLists.txt similarity index 100% rename from delphyne_demos/examples/CMakeLists.txt rename to examples/CMakeLists.txt diff --git a/delphyne_demos/examples/README.md b/examples/README.md similarity index 100% rename from delphyne_demos/examples/README.md rename to examples/README.md diff --git a/delphyne_demos/examples/delphyne_city b/examples/delphyne_city similarity index 100% rename from delphyne_demos/examples/delphyne_city rename to examples/delphyne_city diff --git a/delphyne_demos/examples/delphyne_crash b/examples/delphyne_crash similarity index 100% rename from delphyne_demos/examples/delphyne_crash rename to examples/delphyne_crash diff --git a/delphyne_demos/examples/delphyne_dragway b/examples/delphyne_dragway similarity index 100% rename from delphyne_demos/examples/delphyne_dragway rename to examples/delphyne_dragway diff --git a/delphyne_demos/examples/delphyne_gazoo b/examples/delphyne_gazoo similarity index 100% rename from delphyne_demos/examples/delphyne_gazoo rename to examples/delphyne_gazoo diff --git a/delphyne_demos/examples/delphyne_keyop b/examples/delphyne_keyop similarity index 100% rename from delphyne_demos/examples/delphyne_keyop rename to examples/delphyne_keyop diff --git a/delphyne_demos/examples/delphyne_mali b/examples/delphyne_mali similarity index 100% rename from delphyne_demos/examples/delphyne_mali rename to examples/delphyne_mali diff --git a/delphyne_demos/examples/delphyne_mobil_perf b/examples/delphyne_mobil_perf similarity index 100% rename from delphyne_demos/examples/delphyne_mobil_perf rename to examples/delphyne_mobil_perf diff --git a/delphyne_demos/examples/delphyne_realtime b/examples/delphyne_realtime similarity index 100% rename from delphyne_demos/examples/delphyne_realtime rename to examples/delphyne_realtime diff --git a/delphyne_demos/examples/delphyne_roads b/examples/delphyne_roads similarity index 100% rename from delphyne_demos/examples/delphyne_roads rename to examples/delphyne_roads diff --git a/delphyne_demos/examples/delphyne_scriptlets b/examples/delphyne_scriptlets similarity index 100% rename from delphyne_demos/examples/delphyne_scriptlets rename to examples/delphyne_scriptlets diff --git a/delphyne_demos/examples/delphyne_trip_integration b/examples/delphyne_trip_integration similarity index 100% rename from delphyne_demos/examples/delphyne_trip_integration rename to examples/delphyne_trip_integration diff --git a/delphyne_demos/package.xml b/package.xml similarity index 92% rename from delphyne_demos/package.xml rename to package.xml index 2884507..79abb19 100644 --- a/delphyne_demos/package.xml +++ b/package.xml @@ -5,7 +5,7 @@ 1.0.0 Delphyne Demos Daniel Stonier - BSD 3-Clause + BSD 3-Clause ament_cmake_doxygen diff --git a/delphyne_demos/test/CMakeLists.txt b/test/CMakeLists.txt similarity index 100% rename from delphyne_demos/test/CMakeLists.txt rename to test/CMakeLists.txt diff --git a/delphyne_demos/tools/reformat_code.sh b/tools/reformat_code.sh similarity index 96% rename from delphyne_demos/tools/reformat_code.sh rename to tools/reformat_code.sh index 23355dd..f398ea4 100755 --- a/delphyne_demos/tools/reformat_code.sh +++ b/tools/reformat_code.sh @@ -45,7 +45,7 @@ export PATH=$PATH:/home/$USER/.local/bin declare -i CLANGFORMATFAILED=0 pushd $REPO_DIR -ament_clang_format --config=./../.clang-format --reformat || CLANGFORMATFAILED=1 +ament_clang_format --config=./.clang-format --reformat || CLANGFORMATFAILED=1 popd if [ "$CLANGFORMATFAILED" -ne "0" ]; then