Skip to content
Snippets Groups Projects
Commit 2c95cd04 authored by Guilhem Saurel's avatar Guilhem Saurel
Browse files

22.04

parent 8eb3e1ca
No related branches found
No related tags found
No related merge requests found
......@@ -28,11 +28,11 @@ SED_HOST='s/docker build /docker build --add-host "archives.basestation:10.68.1.
function has_binaries {
# Check if binaries are available on robotpkg for a target
if [[ "$1" == "14.04" || "$1" == "16.04" || "$1" == "18.04" || "$1" == "20.04" ]]
if [[ "$1" == "14.04" || "$1" == "16.04" || "$1" == "18.04" || "$1" == "20.04" || "$1" == "22.04" ]]
then return 0
elif [[ "$1" == "dubnium" || "$1" == "erbium" || "$1" == "ferrum" ]]
then return 0
elif [[ "$1" == "jessie" || "$1" == "stretch" || "$1" == "buster" ]]
elif [[ "$1" == "jessie" || "$1" == "stretch" || "$1" == "buster" || "$1" == "bullseye" ]]
then return 0
else return 1
fi
......
FROM ubuntu:22.04
SHELL ["/bin/bash", "-c"]
ENV GIT_SUBMODULE_STRATEGY=recursive \
CTEST_OUTPUT_ON_FAILURE=1 \
CTEST_PARALLEL_LEVEL=4 \
PYTHON=python3 \
PY=3.10 \
UBUNTU=jammy
#RUN mv /etc/apt/sources.list /etc/apt/sources.list.tmp; \
#echo "deb http://linuxinstall.laas.fr/ubuntu/ $UBUNTU main restricted universe multiverse" \
#>> /etc/apt/sources.list; \
#echo "deb http://linuxinstall.laas.fr/ubuntu/ $UBUNTU-updates main restricted universe multiverse" \
#>> /etc/apt/sources.list; \
#cat /etc/apt/sources.list.tmp >> /etc/apt/sources.list; \
#rm /etc/apt/sources.list.tmp
CMD bash
# syntax=docker/dockerfile:experimental
FROM memmos.laas.fr:5000/gepetto/buildfarm/ros:22.04
COPY --from=memmos.laas.fr:5000/gepetto/buildfarm/tools:22.04 /sccache /usr/bin
ENV SCCACHE_REDIS=redis://asahi
RUN --mount=type=cache,sharing=locked,target=/var/cache/apt --mount=type=cache,sharing=locked,target=/var/lib/apt \
apt-get update -qqy && DEBIAN_FRONTEND=noninteractive apt-get install -qqy \
cmake \
cppad \
curl \
gcc \
g++ \
git \
make \
pax \
tar \
&& git config --global user.email = "guilhem.saurel@laas.fr" \
&& git config --global user.name = "Buildfarm" \
&& git clone https://gitlab.laas.fr/gepetto/robotpkg.git /root/robotpkg \
&& git clone https://gitlab.laas.fr/gepetto/robotpkg-wip.git /root/robotpkg/wip \
&& mkdir -p /opt/openrobots/etc
WORKDIR /root/robotpkg
ADD robotpkg.conf /opt/openrobots/etc/
ENV ROBOTPKG_BASE=/opt/openrobots
ENV CMAKE_PREFIX_PATH=$ROBOTPKG_BASE:$CMAKE_PREFIX_PATH \
LD_LIBRARY_PATH=$ROBOTPKG_BASE/lib:$LD_LIBRARY_PATH \
PATH=$ROBOTPKG_BASE/bin:$ROBOTPKG_BASE/sbin:$PATH \
PKG_CONFIG_PATH=$ROBOTPKG_BASE/lib/pkgconfig:$PKG_CONFIG_PATH \
ROS_PACKAGE_PATH=$ROBOTPKG_BASE/share:$ROS_PACKAGE_PATH
RUN echo "$ROBOTPKG_BASE/lib/python${PY}/site-packages" > $(find /usr/lib -name dist-packages)/robotpkg.pth \
&& echo "PREFER_ALTERNATIVE.python = python${PY/.}" >> /opt/openrobots/etc/robotpkg.conf \
&& echo "PREFER.ros = system" >> /opt/openrobots/etc/robotpkg.conf
FROM memmos.laas.fr:5000/gepetto/buildfarm/robotpkg-base:22.04
RUN --mount=type=cache,sharing=locked,target=/var/cache/apt --mount=type=cache,sharing=locked,target=/var/lib/apt \
echo "deb [arch=amd64 signed-by=/repos.key] http://robotpkg.openrobots.org/wip/packages/debian/pub $UBUNTU robotpkg" > /etc/apt/sources.list.d/robotpkg.list \
&& echo "deb [arch=amd64 signed-by=/repos.key] http://robotpkg.openrobots.org/packages/debian/pub $UBUNTU robotpkg" >> /etc/apt/sources.list.d/robotpkg.list \
&& apt-get update -qq && DEBIAN_FRONTEND=noninteractive apt-get install -qqy \
robotpkg-digest \
robotpkg-pkg-install \
robotpkg-tnftp
FROM memmos.laas.fr:5000/gepetto/buildfarm/robotpkg-bin:22.04
RUN mkdir /root/.ssh
COPY known_hosts /root/.ssh/
COPY ci_deps.sh fix_robotpkg_remote.sh get_deps_rpkg.sh ignore /
RUN for pkg in \
collada-dom \
libccd \
octomap \
omniORB \
openscenegraph \
py-omniORBpy \
qt-osgqt \
ros \
; do echo "PREFER.${pkg} = system" >> /opt/openrobots/etc/robotpkg.conf; done
ADD sysdeps/22.04 /pkgs
RUN --mount=type=cache,sharing=locked,target=/var/cache/apt --mount=type=cache,sharing=locked,target=/var/lib/apt \
apt-get update -qqy && DEBIAN_FRONTEND=noninteractive apt-get install -qqy $(cat /pkgs)
# get Last-Modified git version
ADD https://api.github.com/repos/gepetto/robotpkg/commits/master \
https://api.github.com/repos/gepetto/robotpkg-wip/commits/master \
/
RUN git pull \
&& cd wip \
&& git pull
# syntax=docker/dockerfile:experimental
FROM memmos.laas.fr:5000/gepetto/buildfarm/distrib:22.04
ENV LANG=en_US.UTF-8
ADD repos.key /
ADD https://raw.githubusercontent.com/ros/rosdistro/master/ros.key /ros.gpg
RUN --mount=type=cache,sharing=locked,target=/var/cache/apt --mount=type=cache,sharing=locked,target=/var/lib/apt \
apt-get update -qqy && DEBIAN_FRONTEND=noninteractive apt-get install -qqy \
gnupg2 \
locales \
python-is-python3 \
&& locale-gen en_US en_US.UTF-8 \
&& update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 \
&& chmod a+r /ros.gpg \
&& echo "deb [arch=amd64 signed-by=/ros.gpg] http://packages.ros.org/ros2/ubuntu $UBUNTU main" \
> /etc/apt/sources.list.d/ros2.list
ENV ROS_DISTRO=humble \
ROS_LOCALHOST_ONLY=0 \
ROS_PYTHON_VERSION=3 \
ROS_VERSION=2
ENV ROS_PREFIX=/opt/ros/${ROS_DISTRO}
ENV AMENT_PREFIX_PATH=${ROS_PREFIX} \
LD_LIBRARY_PATH=${ROS_PREFIX}/lib:${ROS_PREFIX}/lib/x86_64-linux-gnu \
PATH=${ROS_PREFIX}/bin:${PATH}
RUN --mount=type=cache,sharing=locked,target=/var/cache/apt --mount=type=cache,sharing=locked,target=/var/lib/apt \
apt-get update -qqy && DEBIAN_FRONTEND=noninteractive apt-get install -qqy \
ros-$ROS_DISTRO-ament-package \
ros-$ROS_DISTRO-ros-workspace
RUN find $ROS_PREFIX -name site-packages >> /usr/lib/python3/dist-packages/ros.pth
assimp-utils
cython3
doxygen
ffmpeg
gcovr
gfortran
graphviz
libassimp-dev
libboost-all-dev
libbullet-dev
libccd-dev
libcdd-dev
libconsole-bridge-dev
libeigen3-dev
libglpk-dev
libgraphviz-dev
libgtest-dev
liblapack-dev
liblog4cxx-dev
libltdl-dev
libopencv-dev
libpcl-dev
libqt5svg5-dev
libqt5xmlpatterns5-dev
libtinyxml-dev
libtool-bin
liburdfdom-dev
liburdfdom-headers-dev
llvm
m4
pkg-config
psmisc
pyqt5-dev
python3-defusedxml
python3-dev
python3-empy
python3-gnupg
python3-matplotlib
python3-netifaces
python3-nose
python3-numpy
python3-paramiko
python3-pydot
python3-pyqt5
python3-scipy
python3-setuptools
python3-sip-dev
python3-sphinx
python3-yaml
python3-pip
qtbase5-private-dev
qtmultimedia5-dev
robotpkg-openscenegraph
robotpkg-py310-omniorbpy
robotpkg-qpoases
robotpkg-qt5-osgqt
texlive-latex-extra
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment