Autonomous-Motorsports-Purdue / AMP_ASSv1

The first iteration of the Autonomous Software Stack (ASS) for the AMP go-kart.
11 stars 2 forks source link

Continuous Integration Pipeline #32

Open zghera opened 2 years ago

zghera commented 2 years ago

Description

Create a CI pipeline to ensure ASS builds with new PRs and Pushes.

Sub-tasks

Other Useful Information

Once Successfully implemented, should look into other types CI, including, but not limited to:

alanssitis commented 2 years ago

[Updated Issue description] List of documentation that I've found helpful:

Have been able to create an action attempting to build ROS, here's the link of an action executing in my fork: https://github.com/alanssitis/AMP_ASSv1/runs/4971991693?check_suite_focus=true

Issues that need to be worked on:

This that should be looked at:

zghera commented 2 years ago

Nice work so far!! A few things:

[Updated Issue description]

Feel free to add these links and any other details you think are important to the top-level issue description. Ideally, I think this should contain all the critical info for people to reference if they come back to look at an issue. The comments below simply serve as a sort of timeline of progress made and discussion.

Creating a launch file that runs the simulation that has very strict parameters and has expected set behavior in order to run a test in the CI

For this, what do you mean by having "expected set behavior"? Do you need it to output something to stdout so you can check if things look like what you expect? What are your requirements for this more specifically?

alanssitis commented 2 years ago

Looks like our current ROS version cannot be "directly" tested as is due to Ubuntu 16.04 not having any available runners. There are two possibilities:

I personally would prefer upgrading the ROS distro since the alternative can have issues and overlap with other possible tests and can make it harder to test the behavior we want appropriately. Also, given how much work we plan on doing, it might be worth upgrading right now in order to have the ability to use Python3 for other projects. This is a very good upside given that Python2 is not supported any more and most documentation and ROS packages are for Python3.

zghera commented 2 years ago

Okay, let's move this conversation over to #26 then.