feat: update build scripts and dependencies
- Updated `.gitlab-ci.yml` to use `all-deps.repos` and install additional Python dependencies via `requirements.txt`. - Enhanced `Dockerfile` with better dependency management: - Added `SHELL` declaration for consistent script execution. - Installed `libgeos-dev` for geometry processing. - Included `python3-rosdep` and `python3-colcon-common-extensions` for ROS2 tooling. - Streamlined ROS2 and dependency installation steps. - Refined `requirements.txt` to adjust package versions and include new dependencies such as `tensorflow` and `torch`. - Updated repository URL for `rbs_assets_library` in `requirements.txt`. These changes improve dependency resolution, enhance build reproducibility, and align with updated requirements.
This commit is contained in:
parent
febadce61f
commit
71f86ab17d
3 changed files with 25 additions and 35 deletions
|
@ -17,7 +17,8 @@ build-colcon-job:
|
||||||
- mv * .src/robossembler-ros2
|
- mv * .src/robossembler-ros2
|
||||||
- mv .git .src/robossembler-ros2
|
- mv .git .src/robossembler-ros2
|
||||||
- mv .src src
|
- mv .src src
|
||||||
- vcs import src < src/robossembler-ros2/repos/sim.rbs.repos
|
- vcs import src < robossembler-ros2/repos/all-deps.repos
|
||||||
|
- pip install -r src/robossembler-ros2/repos/requirements.txt
|
||||||
- rosdep install -y -r -q --from-paths src --ignore-src --rosdistro humble
|
- rosdep install -y -r -q --from-paths src --ignore-src --rosdistro humble
|
||||||
- colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release
|
- colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release
|
||||||
rules:
|
rules:
|
||||||
|
|
46
Dockerfile
46
Dockerfile
|
@ -4,6 +4,8 @@ ARG WSDIR=rbs_ws
|
||||||
ENV RBS_ASSEMBLY_DIR=/assembly
|
ENV RBS_ASSEMBLY_DIR=/assembly
|
||||||
ENV DEBIAN_FRONTEND=noninteractive
|
ENV DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
|
SHELL ["/bin/bash", "-c"]
|
||||||
|
|
||||||
# COPY /home/bill-finger/assembly /assembly
|
# COPY /home/bill-finger/assembly /assembly
|
||||||
ENV IGN_GAZEBO_RESOURCE_PATH=/${WSDIR}/install/rbs_simulation/share/rbs_simulation/
|
ENV IGN_GAZEBO_RESOURCE_PATH=/${WSDIR}/install/rbs_simulation/share/rbs_simulation/
|
||||||
|
|
||||||
|
@ -13,53 +15,39 @@ RUN apt-get update && apt-get upgrade -y && apt-get install -y \
|
||||||
python3-pip \
|
python3-pip \
|
||||||
lsb-release \
|
lsb-release \
|
||||||
curl \
|
curl \
|
||||||
wget
|
wget \
|
||||||
|
libgeos-dev
|
||||||
|
|
||||||
# WORKDIR /libs
|
|
||||||
# RUN wget https://github.com/nlohmann/json/archive/refs/tags/v3.11.3.tar.gz &&\
|
|
||||||
# tar -xf v3.11.3.tar.gz &&\
|
|
||||||
# cd json-3.11.3 &&\
|
|
||||||
# mkdir build &&\
|
|
||||||
# cd build &&\
|
|
||||||
# cmake .. &&\
|
|
||||||
# make &&\
|
|
||||||
# make install
|
|
||||||
|
|
||||||
RUN add-apt-repository universe
|
RUN add-apt-repository universe
|
||||||
RUN curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
|
RUN curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
|
||||||
RUN echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | tee /etc/apt/sources.list.d/ros2.list > /dev/null
|
RUN echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | tee /etc/apt/sources.list.d/ros2.list > /dev/null
|
||||||
|
|
||||||
|
|
||||||
RUN apt-get update && apt-get upgrade && apt-get install -y ros-humble-ros-base
|
# Insatll ROS2 and tools
|
||||||
|
RUN apt-get update &&\
|
||||||
|
apt-get upgrade &&\
|
||||||
|
apt-get install -y ros-humble-ros-base\
|
||||||
|
python3-rosdep\
|
||||||
|
python3-colcon-common-extensions
|
||||||
|
|
||||||
# RUN git clone https://gitlab.com/robossembler/forks/megapose6d.git &&\
|
WORKDIR /${RBS_ASSEMBLY_DIR}
|
||||||
# cd megapose6d &&\
|
RUN curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | bash
|
||||||
# pip install bokeh joblib pin torch transforms3d webdataset omegaconf tqdm &&\
|
RUN apt-get install git-lfs
|
||||||
# pip install -e .
|
|
||||||
# RUN git clone https://github.com/thodan/bop_toolkit &&\
|
|
||||||
# cd bop_toolkit &&\
|
|
||||||
# pip install -e .
|
|
||||||
|
|
||||||
WORKDIR /${WSDIR}
|
WORKDIR /${WSDIR}
|
||||||
|
|
||||||
COPY . src/robossembler-ros2/
|
COPY . src/robossembler-ros2/
|
||||||
|
|
||||||
RUN pip install vcstool uv
|
RUN pip install vcstool
|
||||||
|
|
||||||
# Install framework and dependencies
|
# Install framework and dependencies
|
||||||
RUN vcs import src/. < src/robossembler-ros2/repos/all-deps.repos
|
RUN vcs import src/. < src/robossembler-ros2/repos/all-deps.repos
|
||||||
RUN uv pip install --system -r src/robossembler-ros2/repos/requirements.txt
|
RUN pip install -r src/robossembler-ros2/repos/requirements.txt
|
||||||
RUN apt-get update && rosdep update && \
|
RUN apt-get update && source /opt/ros/humble/setup.bash && rosdep init && rosdep update && \
|
||||||
rosdep install -y -r -q --from-paths src --ignore-src --rosdistro humble
|
rosdep install -y -r -q --from-paths src --ignore-src --rosdistro humble
|
||||||
RUN . /opt/ros/humble/setup.sh && \
|
RUN . /opt/ros/humble/setup.bash && \
|
||||||
colcon build --symlink-install --cmake-args -DCMAKE_EXPORT_COMPILE_COMMANDS=1
|
colcon build --symlink-install --cmake-args -DCMAKE_EXPORT_COMPILE_COMMANDS=1
|
||||||
|
|
||||||
|
|
||||||
WORKDIR /${RBS_ASSEMBLY_DIR}
|
|
||||||
RUN curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | bash
|
|
||||||
RUN apt-get install git-lfs
|
|
||||||
RUN git clone https://github.com/solid-sinusoid/rbs_assets_library.git
|
|
||||||
RUN cd rbs_assets_library && git lfs pull && pip install -e .
|
|
||||||
|
|
||||||
WORKDIR /${WSDIR}
|
WORKDIR /${WSDIR}
|
||||||
|
|
|
@ -1,3 +1,7 @@
|
||||||
|
tensorflow==2.17.1
|
||||||
|
torch>=2.4.1
|
||||||
|
torchvision>=0.19.1
|
||||||
|
|
||||||
trimesh
|
trimesh
|
||||||
pcg-gazebo
|
pcg-gazebo
|
||||||
loguru
|
loguru
|
||||||
|
@ -16,10 +20,7 @@ gymnasium==0.29.1
|
||||||
numpy>=1.24.0
|
numpy>=1.24.0
|
||||||
open3d>=0.18.0
|
open3d>=0.18.0
|
||||||
scipy>=1.14.1
|
scipy>=1.14.1
|
||||||
tensorflow>=2.17.0
|
trimesh>=3.9,<4.0
|
||||||
torch>=2.4.1
|
|
||||||
torchvision>=0.19.1
|
|
||||||
trimesh>=4.4.9
|
|
||||||
wandb>=0.18.6
|
wandb>=0.18.6
|
||||||
|
|
||||||
# Packages from devpi custom repository
|
# Packages from devpi custom repository
|
||||||
|
@ -28,4 +29,4 @@ gym-gz @ https://devpi.solid-sinusoid.com/narmak/dev/+f/539/1f448c1391486/gym_gz
|
||||||
gym-gz-models @ https://devpi.solid-sinusoid.com/narmak/dev/+f/f42/4784934183e88/gym_gz_models-1.2.0-cp310-cp310-linux_x86_64.whl#sha256=f424784934183e88541c703c789315ba6118661bd221a4bf9135c6a0ee012e96
|
gym-gz-models @ https://devpi.solid-sinusoid.com/narmak/dev/+f/f42/4784934183e88/gym_gz_models-1.2.0-cp310-cp310-linux_x86_64.whl#sha256=f424784934183e88541c703c789315ba6118661bd221a4bf9135c6a0ee012e96
|
||||||
|
|
||||||
# rbs_assets_library
|
# rbs_assets_library
|
||||||
git+https://github.com/solid-sinusoid/rbs_assets_library.git@master
|
git+https://gitlab.com/solid-sinusoid/rbs-assets-library.git@master
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue