Bump protobuf from 3.19.6 to 4.25.8 in /jsk_perception/docker/ofa #824
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
jobs: | |
ros: | |
runs-on: ubuntu-latest | |
container: ubuntu:20.04 | |
continue-on-error: ${{ matrix.experimental }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- ROS_DISTRO: indigo | |
USE_DEB: true | |
NOT_TEST_INSTALL : true | |
USE_JENKINS: true | |
DOCKER_IMAGE_JENKINS: ros-ubuntu:14.04-pcl | |
BEFORE_SCRIPT : "sudo pip install numpy==1.16.6; sudo pip install scikit-learn==0.19.1 scipy==1.2.3; sudo pip install fcn chainercv chainer-mask-rcnn==0.3.0 decorator==4.4.2 chainer==6.7.0 protobuf==3.18.0 cupy-cuda91; sudo pip install requests[socks]==2.25.1" | |
experimental : false | |
- ROS_DISTRO: kinetic | |
USE_DEB: true | |
NOT_TEST_INSTALL : true | |
USE_JENKINS: true | |
DOCKER_IMAGE_JENKINS: ros-ubuntu:16.04-pcl | |
BEFORE_SCRIPT : "sudo pip install numpy==1.16.6; sudo pip install fcn chainercv chainer-mask-rcnn==0.3.0 decorator==4.4.2 chainer==6.7.0 protobuf==3.18.0 cupy-cuda91 pytesseract==0.3.6 python-dateutil==2.5.0; wget https://download.pytorch.org/whl/cu90/torch-1.1.0-cp27-cp27mu-linux_x86_64.whl -O torch-1.1.0-cp27-cp27mu-linux_x86_64.whl; wget https://download.pytorch.org/whl/cu90/torchvision-0.3.0-cp27-cp27mu-manylinux1_x86_64.whl -O torchvision-0.3.0-cp27-cp27mu-manylinux1_x86_64.whl; sudo pip install torch-1.1.0-cp27-cp27mu-linux_x86_64.whl torchvision-0.3.0-cp27-cp27mu-manylinux1_x86_64.whl;" | |
BUILD_PKGS: 'checkerboard_detector imagesift jsk_perception jsk_recognition_utils resized_image_transport' | |
experimental : false | |
- ROS_DISTRO: kinetic | |
USE_DEB: true | |
NOT_TEST_INSTALL : true | |
USE_JENKINS: true | |
DOCKER_IMAGE_JENKINS: ros-ubuntu:16.04-pcl | |
BEFORE_SCRIPT : "sudo pip install numpy==1.16.6; sudo pip install fcn chainercv chainer-mask-rcnn==0.3.0 decorator==4.4.2 chainer==6.7.0 protobuf==3.18.0 cupy-cuda91 pytesseract==0.3.6 python-dateutil==2.5.0; wget https://download.pytorch.org/whl/cu90/torch-1.1.0-cp27-cp27mu-linux_x86_64.whl -O torch-1.1.0-cp27-cp27mu-linux_x86_64.whl; wget https://download.pytorch.org/whl/cu90/torchvision-0.3.0-cp27-cp27mu-manylinux1_x86_64.whl -O torchvision-0.3.0-cp27-cp27mu-manylinux1_x86_64.whl; sudo pip install torch-1.1.0-cp27-cp27mu-linux_x86_64.whl torchvision-0.3.0-cp27-cp27mu-manylinux1_x86_64.whl;" | |
BUILD_PKGS: 'jsk_pcl_ros_utils jsk_pcl_ros' | |
experimental : false | |
- ROS_DISTRO: melodic | |
USE_DEB: true | |
NOT_TEST_INSTALL : true | |
USE_JENKINS: true | |
DOCKER_IMAGE_JENKINS: ros-ubuntu:18.04-pcl | |
BEFORE_SCRIPT : "sudo pip install numpy==1.16.6; sudo pip install fcn chainercv chainer-mask-rcnn==0.3.0 decorator==4.4.2 chainer==6.7.0 protobuf==3.18.0 cupy-cuda91 pytesseract==0.3.6; wget https://download.pytorch.org/whl/cu90/torch-1.1.0-cp27-cp27mu-linux_x86_64.whl -O torch-1.1.0-cp27-cp27mu-linux_x86_64.whl; wget https://download.pytorch.org/whl/cu90/torchvision-0.3.0-cp27-cp27mu-manylinux1_x86_64.whl -O torchvision-0.3.0-cp27-cp27mu-manylinux1_x86_64.whl; sudo pip install torch-1.1.0-cp27-cp27mu-linux_x86_64.whl torchvision-0.3.0-cp27-cp27mu-manylinux1_x86_64.whl;" | |
BUILD_PKGS: 'checkerboard_detector imagesift jsk_perception jsk_recognition_utils resized_image_transport' | |
experimental : false | |
- ROS_DISTRO: melodic | |
USE_DEB: true | |
NOT_TEST_INSTALL : true | |
USE_JENKINS: true | |
DOCKER_IMAGE_JENKINS: ros-ubuntu:18.04-pcl | |
BEFORE_SCRIPT : "sudo pip install numpy==1.16.6; sudo pip install fcn chainercv chainer-mask-rcnn==0.3.0 decorator==4.4.2 chainer==6.7.0 protobuf==3.18.0 cupy-cuda91 pytesseract==0.3.6; wget https://download.pytorch.org/whl/cu90/torch-1.1.0-cp27-cp27mu-linux_x86_64.whl -O torch-1.1.0-cp27-cp27mu-linux_x86_64.whl; wget https://download.pytorch.org/whl/cu90/torchvision-0.3.0-cp27-cp27mu-manylinux1_x86_64.whl -O torchvision-0.3.0-cp27-cp27mu-manylinux1_x86_64.whl; sudo pip install torch-1.1.0-cp27-cp27mu-linux_x86_64.whl torchvision-0.3.0-cp27-cp27mu-manylinux1_x86_64.whl;" | |
BUILD_PKGS: 'jsk_pcl_ros_utils jsk_pcl_ros' | |
experimental : false | |
- ROS_DISTRO: melodic | |
USE_DEB: true | |
NOT_TEST_INSTALL : true | |
USE_JENKINS: true | |
DOCKER_IMAGE_JENKINS: ros-ubuntu:18.04-pcl | |
# check https://github.com/jsk-ros-pkg/jsk_recognition/pull/2533 | |
BEFORE_SCRIPT : "sudo pip uninstall -y fcn chainer chainercv decorator cupy-cuda91 pytesseract==0.3.6; sudo ln -sf /bin/echo /usr/local/bin/pip; sudo ln -sf /bin/echo /usr/local/bin/pip2" | |
TEST_PKGS : "jsk_recognition_msgs" | |
experimental : false | |
- ROS_DISTRO: noetic | |
USE_DEB: false | |
NOT_TEST_INSTALL : true | |
USE_JENKINS: true | |
DOCKER_IMAGE_JENKINS: ros-ubuntu:20.04-pcl | |
BEFORE_SCRIPT : "sudo pip3 install numpy==1.17.5 scipy==1.3.3 scikit-image==0.16.2 PyWavelets==0.5.1 imageio==2.4.1 pandas==0.25.3; sudo pip3 install fcn chainercv chainer-mask-rcnn==0.3.0 decorator==4.4.2 chainer==7.8.1 protobuf==3.6.1 cupy-cuda91 pytesseract==0.3.10 Pillow==9.3.0 torch==1.4.0 torchvision==0.5.0;sudo dpkg -i /workspace/.ros/data/libpcl-features1.10_1.10.0+dfsg-5ubuntu1_amd64.deb;" | |
BUILD_PKGS: 'checkerboard_detector imagesift jsk_perception jsk_recognition_utils resized_image_transport' | |
EXTRA_DEB: ros-noetic-pr2-description | |
experimental : false | |
- ROS_DISTRO: noetic | |
USE_DEB: false | |
NOT_TEST_INSTALL : true | |
USE_JENKINS: true | |
DOCKER_IMAGE_JENKINS: ros-ubuntu:20.04-pcl | |
TEST_PKGS : 'jsk_pcl_ros_utils jsk_pcl_ros' | |
BEFORE_SCRIPT : "sudo pip3 install numpy==1.17.5 scipy==1.3.3 scikit-image==0.16.2 PyWavelets==0.5.1 imageio==2.4.1 pandas==0.25.3; sudo pip3 install fcn chainercv chainer-mask-rcnn==0.3.0 decorator==4.4.2 chainer==7.8.1 protobuf==3.6.1 cupy-cuda91 pytesseract==0.3.10 Pillow==9.3.0 torch==1.4.0 torchvision==0.5.0;sudo dpkg -i /workspace/.ros/data/libpcl-features1.10_1.10.0+dfsg-5ubuntu1_amd64.deb;" | |
BUILD_PKGS: 'jsk_pcl_ros_utils jsk_pcl_ros' | |
EXTRA_DEB: ros-noetic-pr2-description | |
experimental : false | |
- ROS_DISTRO: noetic | |
USE_DEB: false | |
NOT_TEST_INSTALL : true | |
USE_JENKINS: true | |
DOCKER_IMAGE_JENKINS: ros-ubuntu:20.04-pcl | |
TEST_PKGS : 'jsk_recognition_msgs' # to skip test | |
BEFORE_SCRIPT : "sudo pip3 install numpy==1.17.5 scipy==1.3.3 scikit-image==0.16.2 PyWavelets==0.5.1 imageio==2.4.1 pandas==0.25.3; sudo pip3 install fcn chainercv chainer-mask-rcnn==0.3.0 decorator==4.4.2 chainer==7.8.1 protobuf==3.6.1 cupy-cuda91 pytesseract==0.3.10 Pillow==9.3.0 torch==1.4.0 torchvision==0.5.0;sudo dpkg -i /workspace/.ros/data/libpcl-features1.10_1.10.0+dfsg-5ubuntu1_amd64.deb;" | |
EXTRA_DEB: ros-noetic-pr2-description | |
experimental : false | |
steps: | |
- name: Install latest git ( use sudo for ros-ubuntu ) | |
run: | | |
[ -e /etc/apt/sources.list.d/ubuntu-esm-infra-$(lsb_release -cs).list ] && sudo rm /etc/apt/sources.list.d/ubuntu-esm-infra-$(lsb_release -cs).list ## fix Err https://esm.ubuntu.com trusty-infra-security/main amd64 Packages, gnutls_handshake() failed: Handshake failed | |
(apt-get update && apt-get install -y sudo) || echo "OK" | |
(apt-get update && apt-get install -y sudo) || echo "OK" | |
sudo apt-get update | |
sudo apt-get install -y software-properties-common | |
sudo apt-get update | |
sudo -E add-apt-repository -y ppa:git-core/ppa | |
sudo apt-get update | |
sudo apt-get install -y git | |
- name: work around permission issue # https://github.com/actions/checkout/issues/760#issuecomment-1097501613 | |
run: | | |
set -x | |
export USER=$(whoami) | |
if [ "${{ matrix.CONTAINER }}" = "jskrobotics/ros-ubuntu:*" ]; then | |
git config --global --add safe.directory $GITHUB_WORKSPACE || echo "OK" # Show 'could not lock config file /github/home/.gitconfig: Permission denied', but it is ok | |
sudo mkdir -p /__w/ | |
sudo chmod 777 -R /__w/ | |
sudo chown -R $USER $HOME | |
# sudo mkdir -p /home/runner/work/_temp/_github_workflow/ | |
# sudo chown -R $USER $HOME /home/runner/work/_temp/_github_workflow/ | |
# ls -al /home/runner/work/_temp/_github_workflow/ | |
else | |
git config --global --add safe.directory $GITHUB_WORKSPACE | |
fi | |
- name: Chcekout | |
uses: actions/checkout@v2 | |
with: | |
fetch-depth: 2 | |
- name: Run jsk_travis | |
uses: jsk-ros-pkg/jsk_travis@master | |
with: | |
ROS_PARALLEL_JOBS : "-j8" | |
ROS_PARALLEL_TEST_JOBS : "-j1" | |
CATKIN_PARALLEL_TEST_JOBS : "-p1" | |
ROS_DISTRO : ${{ matrix.ROS_DISTRO }} | |
USE_DEB : ${{ matrix.USE_DEB }} | |
NOT_TEST_INSTALL : ${{ matrix.NOT_TEST_INSTALL }} | |
TEST_PKGS : ${{ matrix.TEST_PKGS }} | |
BUILD_PKGS : ${{ matrix.BUILD_PKGS }} | |
BEFORE_SCRIPT : ${{ matrix.BEFORE_SCRIPT }} | |
EXTRA_DEB : ${{ matrix.EXTRA_DEB }} | |
USE_JENKINS : ${{ matrix.USE_JENKINS }} | |
DOCKER_IMAGE_JENKINS : ${{ matrix.DOCKER_IMAGE_JENKINS }} | |
TIMEOUT_JENKINS : 180 | |
# ROS-O setup for v4hn https://github.com/v4hn/ros-o-builder/blob/jammy-one/README.md#install-instructions | |
# ROS-O setup for techfak https://ros.packages.techfak.net/ | |
# note that v4hn uses ROS_DISTRO=one and techfak uses ROS_DISTRO | |
ros-o: | |
strategy: | |
fail-fast: false | |
matrix: | |
DEB_DISTRO: [22.04, 24.04] | |
ARCH: [x64] | |
ROS_ONE_VARIANT: [techfak] | |
BUILD_PKGS: ['jsk_recognition_msgs audio_to_spectrogram sound_classification', 'checkerboard_detector imagesift jsk_perception jsk_recognition_utils resized_image_transport', 'jsk_pcl_ros_utils jsk_pcl_ros'] | |
runs-on: ${{ matrix.ARCH == 'x64' && format('ubuntu-{0}', matrix.DEB_DISTRO) || (matrix.ARCH == 'arm64' && format('ubuntu-{0}-arm', matrix.DEB_DISTRO) || format('ubuntu-{0}', matrix.DEB_DISTRO)) }} | |
env: | |
DEBIAN_FRONTEND : noninteractive | |
steps: | |
- name: Chcekout Source | |
uses: actions/[email protected] | |
- name: Setup ROS-O deb repository | |
run: | | |
set -x | |
sudo apt update && sudo apt install -qq -y ca-certificates git | |
if [[ "${{ matrix.DEB_DISTRO }}" == "22.04" ]]; then export CODE_NAME="jammy"; fi | |
if [[ "${{ matrix.DEB_DISTRO }}" == "24.04" ]]; then export CODE_NAME="noble"; fi | |
echo "deb [trusted=yes] https://ros.packages.techfak.net $CODE_NAME-testing main" | sudo tee /etc/apt/sources.list.d/ros-o-builder.list | |
## | |
# https://github.com/v4hn/ros-deb-builder-action/blob/b7c0ed93fde3a86b5b1027bf8f7145cad6067c90/prepare.sh#L27-L28 | |
# Canonical dropped the Debian ROS packages from 24.04 for political reasons. Wow. | |
if [[ "${{ matrix.ROS_ONE_VARIANT }}" == "v4hn" && "${{ matrix.DISTRO }}" == "ubuntu:24.04" ]]; then apt install -y software-properties-common retry && retry -d 50,10,30,300 -t 12 add-apt-repository -y ppa:v-launchpad-jochen-sprickerhof-de/ros; fi | |
## | |
sudo apt update | |
if [[ "${{ matrix.ROS_ONE_VARIANT }}" == "v4hn" ]]; then | |
sudo apt install -qq -y python3-rosdep2 | |
fi | |
if [[ "${{ matrix.ROS_ONE_VARIANT }}" == "techfak" ]]; then | |
# Do not install python3-rosdep2, which is an outdated version of rosdep shipped via the Ubuntu repositories (instead of ROS)! | |
sudo apt install -qq -y python3-rosdep | |
sudo rosdep init | |
fi | |
if [[ "${{ matrix.ROS_ONE_VARIANT }}" == "v4hn" ]]; then | |
export ROSDEP_PACKAGE_MAPPING="yaml https://raw.githubusercontent.com/v4hn/ros-o-builder/jammy-one/repository/local.yaml debian" | |
fi | |
if [[ "${{ matrix.ROS_ONE_VARIANT }}" == "techfak" ]]; then | |
export ROSDEP_PACKAGE_MAPPING="yaml https://ros.packages.techfak.net/ros-one.yaml ubuntu" | |
fi | |
echo $ROSDEP_PACKAGE_MAPPING | sudo tee /etc/ros/rosdep/sources.list.d/1-ros-o-builder.list | |
rosdep update | |
shell: bash | |
- name: Setup catkin-tools | |
run: | | |
set -x | |
# setup catkin tools | |
sudo apt install -qq -y python3-pip | |
if [[ "${{ matrix.ROS_ONE_VARIANT }}" == "v4hn" ]]; then | |
pip3 install catkin-tools==0.9.4 | |
sudo apt install -qq -y catkin | |
fi | |
if [[ "${{ matrix.ROS_ONE_VARIANT }}" == "techfak" ]]; then | |
sudo apt install -qq -y ros-one-catkin python3-catkin-tools | |
fi | |
# setup build tools | |
sudo apt install -qq -y cmake build-essential ros-one-rosbash | |
shell: bash | |
- name: Setup Workspace | |
run: | | |
source /opt/ros/one/setup.bash | |
set -x | |
# setup workspace | |
mkdir -p ~/ws/src | |
cd ~/ws/src | |
ln -sf $GITHUB_WORKSPACE . | |
rosdep install -qq -r -y --from-path . --ignore-src || echo "OK" | |
# check all system packages are able to install, because ROS-O build deb files that needs all packages | |
PIP_BREAK_SYSTEM_PACKAGES=1 rosdep install -qq --simulate -y --from-path . --ignore-src -t exec -t buildtool_export -t buildtool -t build -t build_export | tee rosdep-install.sh | |
# catkin_tools is not available on v4hn/jammy | |
if [[ "${{ matrix.ROS_ONE_VARIANT }}" == "v4hn" ]]; then sed -i '/python3-catkin-tools/s/^/#/' rosdep-install.sh; fi | |
sed 's/apt-get install/apt-get -y install/;/install ros-one/s/^/#/;/pip3 install/s/^/#/' rosdep-install.sh | bash -xe | |
shell: bash | |
- name: Check local installed python | |
run: | | |
set -x | |
pip freeze --local | cut -d= -f1 | xargs -n1 pip show | grep -E '^(Name|Location|Version)' || echo "OK" | |
shell: bash | |
- name: Clean Disk space | |
run: | | |
set -x | |
df -h | |
ls -al /opt/ | |
sudo rm -rf /usr/share/dotnet /usr/local/lib/android /opt/ghc || true | |
sudo apt clean | |
df -h | |
shell: bash | |
- name: Compile Packages | |
run: | | |
source /opt/ros/one/setup.bash | |
set -x | |
cd ~/ws/ | |
catkin build ${{ matrix.BUILD_PKGS }} ${{ matrix.DEB_DISTRO == '22.04' && '-j4' || '' }} --no-status -sv ${{ matrix.CATKIN_OPTIONS }} --cmake-args -DCATKIN_ENABLE_TESTING=OFF -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON ${{ matrix.CMAKE_OPTIONS }} | |
shell: bash | |