name: ROS CI on: [push] jobs: build: runs-on: ubuntu-18.04 env: ROS_CI_DESKTOP: "`lsb_release -cs`" # e.g. [trusty|xenial|...] CI_SOURCE_PATH: $(pwd) ROSINSTALL_FILE: $CI_SOURCE_PATH/dependencies.rosinstall CATKIN_OPTIONS: $CI_SOURCE_PATH/catkin.options ROS_PARALLEL_JOBS: '-j8 -l6' # Set the python path manually to include /usr/-/python2.7/dist-packages # as this is where apt-get installs python packages. PYTHONPATH: $PYTHONPATH:/usr/lib/python2.7/dist-packages:/usr/local/lib/python2.7/dist-packages ROS_DISTRO: melodic steps: - uses: actions/checkout@v1 - name: Install ROS run: | sudo sh -c "echo \"deb http://packages.ros.org/ros/ubuntu $ROS_CI_DESKTOP main\" > /etc/apt/sources.list.d/ros-latest.list" sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654 sudo apt-get update -qq sudo apt-get install dpkg sudo apt-get install -y python-catkin-tools python-catkin-pkg sudo apt-get install -y python-rosdep python-wstool sudo apt-get install -y libboost-dev sudo apt-get install -y libyaml-cpp-dev sudo apt-get install -y qt5-default sudo apt-get install -y ros-cmake-modules # sudo apt-get install -y ros-$ROS_DISTRO-camera-info-manager # sudo apt-get install -y ros-$ROS_DISTRO-cv-bridge # sudo apt-get install -y ros-$ROS_DISTRO-dynamic-reconfigure # sudo apt-get install -y ros-$ROS_DISTRO-ddynamic-reconfigure sudo apt-get install -y ros-$ROS_DISTRO-image-transport # sudo apt-get install -y ros-$ROS_DISTRO-nodelet-core # sudo apt-get install -y ros-$ROS_DISTRO-pcl-conversions # sudo apt-get install -y ros-$ROS_DISTRO-pcl-ros sudo apt-get install -y ros-$ROS_DISTRO-pluginlib sudo apt-get install -y ros-$ROS_DISTRO-roscpp sudo apt-get install -y ros-$ROS_DISTRO-roslint sudo apt-get install -y ros-$ROS_DISTRO-rospy sudo apt-get install -y ros-$ROS_DISTRO-rostest sudo apt-get install -y ros-$ROS_DISTRO-rviz # sudo apt-get install -y ros-$ROS_DISTRO-shape-msgs sudo apt-get install -y ros-$ROS_DISTRO-sensor-msgs # sudo apt-get install -y ros-$ROS_DISTRO-tf2-geometry-msgs # sudo apt-get install -y ros-$ROS_DISTRO-tf2-msgs # sudo apt-get install -y ros-$ROS_DISTRO-tf2-py # sudo apt-get install -y ros-$ROS_DISTRO-tf2-ros # sudo apt-get install -y ros-$ROS_DISTRO-tf2-sensor-msgs # sudo apt-get install -y ros-$ROS_DISTRO-visualization-msgs source /opt/ros/$ROS_DISTRO/setup.bash # Prepare rosdep to install dependencies. sudo rosdep init rosdep update --include-eol-distros # Support EOL distros. - name: build run: | source /opt/ros/$ROS_DISTRO/setup.bash mkdir -p ~/catkin_ws/src cd ~/catkin_ws catkin build source devel/setup.bash # echo "::warning $CI_SOURCE_PATH" # echo "::warning `ls -l`" cd src ln -s ~/work # $CI_SOURCE_PATH cd .. catkin build - name: lint run: | cd ~/catkin_ws catkin build rviz_camera_stream --no-deps --catkin-make-args roslint