ros2 / ci

ROS 2 CI Infrastructure
http://ci.ros2.org/
Apache License 2.0
48 stars 30 forks source link

Install flake8 on noble from noble-proposed #765

Closed claraberendsen closed 4 months ago

claraberendsen commented 4 months ago

Description

This PR configures ubuntu distro proposed repository as a source for installing packages that have not been updated in the upstream distribution. In particular installs flake8 from noble-proposed instead of noble.

clalancette commented 4 months ago

I've rebased this on the latest now that I merged in #764. I also simplified it; we should only need to do this action for noble. Here is a quick CI run on Jammy and Noble to see that it installs what we expect:

clalancette commented 4 months ago

All right. I've done some additional work here to ensure that we only install python3-flake8 from proposed. This is still not enough to make this work on noble; we need the rest of the changes from https://github.com/ros2/ci/pull/761 as well. But this is one step closer, so I still think we should get this in.

clalancette commented 4 months ago

Here is simple CI, only on Ubuntu. Jammy is expected to succeed, Noble is expected to fail, but it should at least install python3-flake8 7.0.0:

claraberendsen commented 4 months ago

@nuclearsandwich Here is the outcome of the research. It seems that the default value for the priority of proposed was 100, which didn't serve our use case. I've decided to add a priority negative to the proposed source, that way according to how apt interprets priority

  P < 0
           prevents the version from being installed

would make it so that proposed has to be explicitly asked for in order to install from that source. Here is a run with the latest changes.

Build Status

clalancette commented 4 months ago

CI:

clalancette commented 4 months ago

I'm going ahead and merging this one, so we can make further progress on other changes needed here.