Skip to content

Commit

Permalink
Merge pull request #457 from pazeshun/lock-melodic-rosdep
Browse files Browse the repository at this point in the history
Use snapshot of rosdep list on melodic
  • Loading branch information
k-okada authored Jan 15, 2024
2 parents 21eff91 + 8d36659 commit b972f7e
Show file tree
Hide file tree
Showing 5 changed files with 30 additions and 3 deletions.
2 changes: 1 addition & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ before_script:
- if [[ ${ROS_DISTRO} > "hydro" ]] && [[ ${ROS_DISTRO} < "noetic" ]]; then export BEFORE_SCRIPT="sudo -E apt-get -y -qq install python-dev python-numpy; sudo -H pip install fcn chainercv chainer==6.7.0 protobuf==3.17.3;${BEFORE_SCRIPT}"; fi # FIXME fcn, chainercv, and chainer cannot be installed via rosdep install using pip 9.0.3 ('sudo -H pip install -U fcn/chainercv/chainer' and its upgrade-strategy is eager) on Python 2. That command tries to upgrade all dependencies, but upgrading chainer and protobuf fails because they release incompatible versions to Python2 (https://github.com/chainer/chainer/issues/8545, https://github.com/protocolbuffers/protobuf/issues/8984)
- if [ ${ROS_DISTRO} == "noetic" ]; then export BEFORE_SCRIPT="sed -ie \"/gazebo/ d\" \${CI_SOURCE_PATH}/package.xml;${BEFORE_SCRIPT}"; fi # FIXME gazebo is not released in noetic
- if [ ${ROS_DISTRO} == "noetic" ]; then export BEFORE_SCRIPT="touch ros_tutorials/turtlesim/CATKIN_IGNORE; ${BEFORE_SCRIPT}"; fi # qt5/moc does not work on docker (https://stackoverflow.com/questions/56319830/error-when-building-qt-app-in-a-recent-docker)
- mkdir .travis; mv *.sh *.py *.conf .travis/ # need to move, since directory starting from . is ignoreed by catkin build
- mkdir .travis; mv *.sh *.py *.conf rosdep_snapshots .travis/ # need to move, since directory starting from . is ignoreed by catkin build
- export BEFORE_SCRIPT="rm -fr jsk_travis/CATKIN_IGNORE; git clone https://github.com/ros/ros_tutorials -b ${ROS_DISTRO}-devel;${BEFORE_SCRIPT}"
- if [ "${USE_CATKIN_MAKE}" == "true" ] ;then sed -i 's@catkin build -i -v --limit-status-rate 0.001@catkin_make@' .travis/travis.sh; fi
- if [ "${USE_CATKIN_MAKE}" == "true" ] ;then sed -i 's@catkin run_tests --no-deps --limit-status-rate 0.001@catkin_make run_tests@' .travis/travis.sh; fi
Expand Down
2 changes: 1 addition & 1 deletion action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -190,7 +190,7 @@ runs:
if [ "${ROS_DISTRO}" == "hydro" ]; then export BEFORE_SCRIPT="sed -ie \"/-pip/ d\" \${CI_SOURCE_PATH}/package.xml;${BEFORE_SCRIPT}"; fi # FIXME hydro does not have python >= 2.7.9, so it fails on pip install
if [ "${ROS_DISTRO}" == "noetic" ]; then export BEFORE_SCRIPT="sed -ie \"/gazebo/ d\" \${CI_SOURCE_PATH}/package.xml;${BEFORE_SCRIPT}"; fi # FIXME gazebo is not released in noetic
if [ "${ROS_DISTRO}" == "noetic" ]; then export BEFORE_SCRIPT="touch ros_tutorials/turtlesim/CATKIN_IGNORE; ${BEFORE_SCRIPT}"; fi # qt5/moc does not work on docker (https://stackoverflow.com/questions/56319830/error-when-building-qt-app-in-a-recent-docker)
mkdir .travis; mv *.sh *.py *.conf .travis/ # need to move, since directory starting from . is ignoreed by catkin build
mkdir .travis; mv *.sh *.py *.conf rosdep_snapshots .travis/ # need to move, since directory starting from . is ignoreed by catkin build
export BEFORE_SCRIPT="rm -fr jsk_travis/CATKIN_IGNORE; git clone https://github.com/ros/ros_tutorials -b ${ROS_DISTRO}-devel;${BEFORE_SCRIPT}"
if [ "${USE_CATKIN_MAKE}" == "true" ] ;then sed -i 's@catkin build -i -v --limit-status-rate 0.001@catkin_make@' .travis/travis.sh; fi
if [ "${USE_CATKIN_MAKE}" == "true" ] ;then sed -i 's@catkin run_tests --no-deps --limit-status-rate 0.001@catkin_make run_tests@' .travis/travis.sh; fi
Expand Down
12 changes: 12 additions & 0 deletions rosdep_snapshots/30-bionic.list
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# This list targets a snapshot of rosdistro (before https://github.com/ros/rosdistro/pull/39174 was merged) for post-EOL use on Bionic

# os-specific listings first
yaml https://raw.githubusercontent.com/ros/rosdistro/e0a9ff920317daff3b6f177e1325e27f498063c1/rosdep/osx-homebrew.yaml osx

# generic
yaml https://raw.githubusercontent.com/ros/rosdistro/e0a9ff920317daff3b6f177e1325e27f498063c1/rosdep/base.yaml
yaml https://raw.githubusercontent.com/ros/rosdistro/e0a9ff920317daff3b6f177e1325e27f498063c1/rosdep/python.yaml
yaml https://raw.githubusercontent.com/ros/rosdistro/e0a9ff920317daff3b6f177e1325e27f498063c1/rosdep/ruby.yaml
gbpdistro https://raw.githubusercontent.com/ros/rosdistro/e0a9ff920317daff3b6f177e1325e27f498063c1/releases/fuerte.yaml fuerte

# newer distributions (Groovy, Hydro, ...) must not be listed anymore, they are being fetched from the rosdistro index.yaml instead
12 changes: 12 additions & 0 deletions rosdep_snapshots/30-xenial.list
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# This list targets a snapshot of rosdistro for post-EOL use on Xenial

# os-specific listings first
yaml https://raw.githubusercontent.com/ros/rosdistro/d234db9d9c888e052a5bf05f6092eaaca45c0527/rosdep/osx-homebrew.yaml osx

# generic
yaml https://raw.githubusercontent.com/ros/rosdistro/d234db9d9c888e052a5bf05f6092eaaca45c0527/rosdep/base.yaml
yaml https://raw.githubusercontent.com/ros/rosdistro/d234db9d9c888e052a5bf05f6092eaaca45c0527/rosdep/python.yaml
yaml https://raw.githubusercontent.com/ros/rosdistro/d234db9d9c888e052a5bf05f6092eaaca45c0527/rosdep/ruby.yaml
gbpdistro https://raw.githubusercontent.com/ros/rosdistro/d234db9d9c888e052a5bf05f6092eaaca45c0527/releases/fuerte.yaml fuerte

# newer distributions (Groovy, Hydro, ...) must not be listed anymore, they are being fetched from the rosdistro index.yaml instead
5 changes: 4 additions & 1 deletion travis.sh
Original file line number Diff line number Diff line change
Expand Up @@ -296,7 +296,10 @@ fi
# https://github.com/ros/rosdistro/pull/31570#issuecomment-1000497517
if [[ "$ROS_DISTRO" =~ "hydro"|"indigo"|"jade"|"kinetic"|"lunar" ]]; then
sudo rm /etc/ros/rosdep/sources.list.d/20-default.list
sudo wget https://gist.githubusercontent.com/cottsay/b27a46e53b8f7453bf9ff637d32ea283/raw/476b3714bb90cfbc6b8b9d068162fc6408fa7f76/30-xenial.list -O /etc/ros/rosdep/sources.list.d/30-xenial.list
sudo cp $(dirname "${BASH_SOURCE[0]}")/rosdep_snapshots/30-xenial.list /etc/ros/rosdep/sources.list.d
elif [[ "$ROS_DISTRO" == "melodic" ]]; then
sudo rm /etc/ros/rosdep/sources.list.d/20-default.list
sudo cp $(dirname "${BASH_SOURCE[0]}")/rosdep_snapshots/30-bionic.list /etc/ros/rosdep/sources.list.d
fi
ret=1
rosdep update --include-eol-distros|| while [ $ret != 0 ]; do sleep 1; rosdep update --include-eol-distros && ret=0 || echo "failed"; done
Expand Down

0 comments on commit b972f7e

Please sign in to comment.