-
Notifications
You must be signed in to change notification settings - Fork 28
Running build farm job locally
Leandro edited this page Dec 6, 2022
·
9 revisions
It is possible to reproduce the job that runs on the build farm by following these instructions. Find below a summary of the steps taken for doing so:
# setup environment
sudo apt update && sudo apt install python3 python3-all python3-pip python3-venv
mkdir /tmp/deploy_ros_buildfarm
cd /tmp/deploy_ros_buildfarm
python3 -m venv venv
. venv/bin/activate
pip3 install empy
pip3 install jenkinsapi
pip3 install rosdistro
pip3 install wheel
pip3 install git+https://github.com/ros-infrastructure/ros_buildfarm.git@master
# run the prerelease job
mkdir /tmp/prerelease_job
generate_prerelease_script.py \
https://raw.githubusercontent.com/ros2/ros_buildfarm_config/ros2/index.yaml \
galactic default ubuntu focal amd64 ros_amr_interop \
--output-dir /tmp/prerelease_job \
--custom-repo ros_amr_interop:git:https://github.com/<FORKED_REPOSITORY>/ros_amr_interop.git:<BRANCH_NAME>
cd /tmp/prerelease_job
./prerelease.sh
# run the devel job
mkdir /tmp/devel_job
generate_devel_script.py \
https://raw.githubusercontent.com/ros2/ros_buildfarm_config/ros2/index.yaml \
galactic default ros_amr_interop ubuntu focal amd64 > /tmp/devel_job/devel_job_galactic_ros_amr_interop.sh
cd /tmp/devel_job
./devel_job_galactic_ros_amr_interop.sh
Please note I used the --custom-repo
parameter to use the code on a forked repository. This is useful for iterating quickly and might be included as part of CI workflow in the future
cd ws/src/ros_amr_interop/ && git pull && cd ../../../ && ./prerelease.sh