Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate from Travis to GitHub Actions #396

Merged
merged 2 commits into from
Mar 26, 2021
Merged

Conversation

tylerjw
Copy link
Member

@tylerjw tylerjw commented Mar 25, 2021

Description

This is finally here. There two features of this that are temporary. First clang-tidy filtering is implemented in my PR to industrial_ci here: ros-industrial/industrial_ci#649. I'd appreciate any reviews of that to get it merged and cleaned up. But until that happens we can use my fork.

Secondly, preparing the code coverage report is being done by a script. Eventually after this PR on industrial_ci is merged we won't need that script.

Lastly, this PR is here on the repo itself (and not from my fork) so the Actions jobs will run here.

Thank you @rhaschke for helping me get this here. I'll make a copy of this over on moveit1 also.

Also, this disables a test in moveit_servo. That test has become flaky recently and I don't know why. I'm disabling it here so it doesn't get in the way. I will work on re-enabling and debugging it in the future.

@tylerjw tylerjw changed the title Migrage from Travis to GitHub Actions Migrate from Travis to GitHub Actions Mar 25, 2021
@tylerjw tylerjw force-pushed the migrate-to-github-actions branch 2 times, most recently from b1f46e9 to b8c8f5b Compare March 25, 2021 05:30
Copy link
Contributor

@rhaschke rhaschke left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this great work. I have some open questions, though.

.github/workflows/industrial_ci_action.yml Outdated Show resolved Hide resolved
.github/workflows/industrial_ci_action.yml Show resolved Hide resolved
.github/workflows/industrial_ci_action.yml Show resolved Hide resolved
.github/workflows/industrial_ci_action.yml Show resolved Hide resolved
.github/workflows/industrial_ci_action.yml Show resolved Hide resolved
.github/workflows/industrial_ci_action.yml Show resolved Hide resolved
Comment on lines -2 to -5
moveit2:
type: git
url: https://github.com/ros-planning/moveit2
version: main
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see your point of only listing upstream stuff here. But, removing the main source will probably invalidate our build-from-source instructions, which essentially reads like this: "Fetch moveit2.repos and build." They should be adapted then.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll prepare a PR for that. This being here breaks the CI system because it creates a vcs error when it tries to import this file and moveit2 is already there.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What about vcs import --skip-existing?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This caused the docker images to not have moveit2 source code, I think we should revert and apply @henningkayser suggestion, @rhaschke @tylerjw what do you think .?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As @tylerjw already pointed out, vcs import is performed by industrial_ci. What about adding the MoveIt source explicitly in the docker image?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Because the docker build is running from the repo you should be able to use the docker COPY command to get the moveit repo in docker. See this line in the nav2 docker file: https://github.com/ros-planning/navigation2/blob/e13459441dd4895450b2f2073f73bf340823fcfe/Dockerfile#L26

@codecov
Copy link

codecov bot commented Mar 25, 2021

Codecov Report

Merging #396 (1a1a8c8) into main (2620f7b) will decrease coverage by 0.38%.
The diff coverage is 25.00%.

Impacted file tree graph

@@            Coverage Diff             @@
##             main     #396      +/-   ##
==========================================
- Coverage   53.37%   52.99%   -0.37%     
==========================================
  Files         210      210              
  Lines       18814    22511    +3697     
==========================================
+ Hits        10040    11928    +1888     
- Misses       8774    10583    +1809     
Impacted Files Coverage Δ
.../planning/plan_execution/src/plan_with_sensing.cpp 12.97% <25.00%> (-3.90%) ⬇️
..._core/collision_detection/src/collision_common.cpp 42.86% <0.00%> (-57.14%) ⬇️
...moveit/move_group_interface/move_group_interface.h 75.00% <0.00%> (-25.00%) ⬇️
...parameterization/model_based_state_space_factory.h 75.00% <0.00%> (-25.00%) ⬇️
...moveit/ompl_interface/detail/constraints_library.h 10.00% <0.00%> (-23.33%) ⬇️
moveit_ros/moveit_servo/src/servo_calcs.cpp 62.64% <0.00%> (-17.48%) ⬇️
moveit_ros/moveit_servo/src/servo.cpp 58.07% <0.00%> (-11.93%) ⬇️
...del/include/moveit/robot_model/joint_model_group.h 89.34% <0.00%> (-10.66%) ⬇️
moveit_ros/moveit_servo/src/servo_parameters.cpp 67.25% <0.00%> (-10.07%) ⬇️
...clude/moveit/occupancy_map_monitor/occupancy_map.h 8.34% <0.00%> (-8.33%) ⬇️
... and 173 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 3f048b3...1a1a8c8. Read the comment docs.

Copy link
Contributor

@rhaschke rhaschke left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

More comments.

.github/workflows/industrial_ci_action.yml Outdated Show resolved Hide resolved
.github/workflows/industrial_ci_action.yml Outdated Show resolved Hide resolved
.github/workflows/industrial_ci_action.yml Outdated Show resolved Hide resolved
.github/workflows/industrial_ci_action.yml Outdated Show resolved Hide resolved
with:
files: ${{ env.BASEDIR }}/coverage.info
- name: prepare target_ws for cache
if: ${{ always() && ! env.CCOV }}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's the meaning of always() here? Seems to be redundant.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Always causes this to run even when previous steps failed (such as tests in industrial_ci).

.github/workflows/industrial_ci_action.yml Show resolved Hide resolved
@tylerjw
Copy link
Member Author

tylerjw commented Mar 25, 2021

This one has been updated per feedback and is ready for another review @rhaschke.

@tylerjw
Copy link
Member Author

tylerjw commented Mar 25, 2021

Rebased and pushed as there was a different change merged.

Copy link
Member

@henningkayser henningkayser left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rebased and pushed as there was a different change merged.

Sorry ;)

... PoseTracking is also flaky, you might need to disable that one as well.

IKFAST_TEST: true
CLANG_TIDY: true
env:
DOCKER_IMAGE: moveit/moveit2:${{ matrix.env.IMAGE }}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nice

.github/workflows/industrial_ci_action.yml Show resolved Hide resolved
Comment on lines -2 to -5
moveit2:
type: git
url: https://github.com/ros-planning/moveit2
version: main
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What about vcs import --skip-existing?

@@ -7,6 +7,8 @@ on:
workflow_dispatch:
pull_request:
push:
branches:
- main
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this include other branches as well, for instance feature/hybrid-planning after that one has been rebased?

Copy link
Member Author

@tylerjw tylerjw Mar 25, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't know there were other branches that might be rebased on main. I'll add that one.

@tylerjw
Copy link
Member Author

tylerjw commented Mar 25, 2021

@henningkayser

What about vcs import --skip-existing?

no, because I'm not calling vcs import, industrial_ci is.

@tylerjw tylerjw force-pushed the migrate-to-github-actions branch 2 times, most recently from 977a72f to 7fd8848 Compare March 25, 2021 21:28
@tylerjw
Copy link
Member Author

tylerjw commented Mar 25, 2021

Sorry ;)

... PoseTracking is also flaky, you might need to disable that one as well.

I disabled it too for now. I'll create issues for the flaky tests in servo.

#397

@tylerjw
Copy link
Member Author

tylerjw commented Mar 25, 2021

@henningkayser The newest failure seems maybe related to one of the things you merged test_launch_move_group_ompl_constraints

Do you think that caused it? Any ideas on how to fix this?

@tylerjw
Copy link
Member Author

tylerjw commented Mar 25, 2021

I pushed changes suggested by @JafarAbdi. Hopefully this fixes the newly broken test.

@tylerjw
Copy link
Member Author

tylerjw commented Mar 26, 2021

It is still failing, @henningkayser @JafarAbdi any ideas?

@JafarAbdi
Copy link
Member

@tylerjw Trajectory execution timeouts, can you change the following values in this file

"trajectory_execution.allowed_execution_duration_scaling": 1.5,
"trajectory_execution.allowed_goal_duration_margin": 1.0,
"trajectory_execution.allowed_start_tolerance": 0.01,

tylerjw and others added 2 commits March 25, 2021 18:36
@rhaschke rhaschke merged commit ef63fe6 into main Mar 26, 2021
@delete-merged-branch delete-merged-branch bot deleted the migrate-to-github-actions branch March 26, 2021 07:14
@tylerjw tylerjw restored the migrate-to-github-actions branch March 26, 2021 13:57
@tylerjw tylerjw deleted the migrate-to-github-actions branch March 26, 2021 13:57
MikeWrock pushed a commit to MikeWrock/moveit2 that referenced this pull request Aug 15, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants