forked from autowarefoundation/autoware
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Release] 1.10.0 (autowarefoundation#1898)
- Loading branch information
Showing
938 changed files
with
23,199 additions
and
18,406 deletions.
There are no files selected for viewing
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -46,3 +46,4 @@ ENV/ | |
*.bag | ||
*.csv | ||
|
||
/.metadata/ |
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,136 @@ | ||
stages: | ||
- build | ||
- deploy | ||
|
||
variables: | ||
ROS_CI_DESKTOP: "`lsb_release -cs`" | ||
CI_SOURCE_PATH: $CI_PROJECT_DIR | ||
ROSINSTALL_FILE: $CI_SOURCE_PATH/dependencies.rosinstall | ||
CATKIN_OPTIONS: $CI_SOURCE_PATH/catkin.options | ||
GIT_SUBMODULE_STRATEGY: recursive | ||
#CI_DEBUG_TRACE: "true" | ||
|
||
.build: &build_common | ||
before_script: | ||
- apt-get update | ||
- apt-get install -y lsb-release | ||
- apt-get install -y gcc g++ | ||
- sh -c "echo \"deb http://packages.ros.org/ros/ubuntu $ROS_CI_DESKTOP main\" > /etc/apt/sources.list.d/ros-latest.list" | ||
- apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116 | ||
- apt-get update | ||
- apt-get install -y dpkg | ||
- apt-get install -y python-catkin-pkg python-rosdep python-wstool ros-${ROS_DISTRO}-catkin | ||
- apt-get install -y python3-pip python3-setuptools | ||
# Update setuptools from PyPI because the version Ubuntu ships with is too old | ||
- pip3 install -U setuptools | ||
- source /opt/ros/${ROS_DISTRO}/setup.bash | ||
- rosdep init | ||
- rosdep update | ||
- cd ros/src | ||
- wstool init | ||
- test -f "${ROSINSTALL_FILE}" && wstool merge "${ROSINSTALL_FILE}" | ||
- wstool up | ||
- cd .. | ||
- rosdep install -y --from-paths src --ignore-src --rosdistro ${ROS_DISTRO} | ||
|
||
|
||
build_kinetic: | ||
stage: build | ||
image: ubuntu:xenial | ||
variables: | ||
ROS_DISTRO: kinetic | ||
<<: *build_common | ||
script: | ||
# colcon as a Debian package is only available in Kinetic and up | ||
- apt-get install -y python3-colcon-common-extensions | ||
# Install lcov from source as binary installation errors when appending files | ||
- git clone https://github.com/linux-test-project/lcov.git | ||
- cd lcov | ||
- git checkout v1.13 | ||
- make install | ||
- cd .. | ||
- rm -r lcov | ||
# We first build the entire workspace normally | ||
- colcon build --cmake-args -DCMAKE_CXX_FLAGS="${CMAKE_CXX_FLAGS} -fprofile-arcs -ftest-coverage" -DCMAKE_C_FLAGS="${CMAKE_C_FLAGS} -fprofile-arcs -ftest-coverage" -DCMAKE_BUILD_TYPE=Debug | ||
# And then build the tests target. catkin (ROS1) packages add their tests to the tests target | ||
# which is not the standard target for CMake projects. We need to trigger the tests target so that | ||
# tests are built and any fixtures are set up. | ||
- colcon build --cmake-target tests --cmake-args -DCMAKE_CXX_FLAGS="${CMAKE_CXX_FLAGS} -fprofile-arcs -ftest-coverage" -DCMAKE_C_FLAGS="${CMAKE_C_FLAGS} -fprofile-arcs -ftest-coverage" -DCMAKE_BUILD_TYPE=Debug | ||
- lcov --initial --directory build --capture --output-file lcov.base | ||
- colcon test | ||
- colcon test-result | ||
- lcov --directory build --capture --output-file lcov.test | ||
- lcov -a lcov.base -a lcov.test -o lcov.total | ||
- lcov -r lcov.total '*/tests/*' '*/test/*' '*/build/*' '*/devel/*' '/usr/*' '/opt/*' '*/CMakeCCompilerId.c' '*/CMakeCXXCompilerId.cpp' -o lcov.total.filtered | ||
# BRANCH_NAME: gets branch name from CI_COMMIT_REF_NAME variable substituting / with _ (feature/test_this_lib becomes feature_test_this_lib) | ||
# CI_COMMIT_REF_NAME: (from https://docs.gitlab.com/ee/ci/variables/) The branch or tag name for which project is built | ||
- BRANCH_NAME="$(echo $CI_COMMIT_REF_NAME | sed 's/\//_/g')" | ||
- COVERAGE_FOLDER_NAME="coverage_$BRANCH_NAME" | ||
- genhtml -p "$PWD" --legend --demangle-cpp lcov.total.filtered -o $COVERAGE_FOLDER_NAME | ||
- tar -czvf coverage.tar.gz $COVERAGE_FOLDER_NAME | ||
- mv coverage.tar.gz $CI_PROJECT_DIR/coverage.tar.gz | ||
- ls $CI_PROJECT_DIR | ||
retry: 1 | ||
artifacts: | ||
paths: | ||
- $CI_PROJECT_DIR/coverage.tar.gz | ||
expire_in: 48 hrs | ||
coverage: /\s*lines.*:\s(\d+\.\d+\%\s\(\d+\sof\s\d+.*\))/ | ||
|
||
build_cross: | ||
stage: build | ||
image: docker | ||
services: | ||
- docker:dind | ||
variables: | ||
ROS_DISTRO: kinetic | ||
AUTOWARE_DOCKER_DATE: 20190102 | ||
AUTOWARE_HOME: $CI_PROJECT_DIR | ||
AUTOWARE_TARGET_ARCH: aarch64 | ||
AUTOWARE_TARGET_PLATFORM: generic-aarch64 | ||
AUTOWARE_BUILD_PATH: $CI_PROJECT_DIR/ros/build-${AUTOWARE_TARGET_PLATFORM} | ||
AUTOWARE_INSTALL_PATH: $CI_PROJECT_DIR/ros/install-${AUTOWARE_TARGET_PLATFORM} | ||
AUTOWARE_TOOLCHAIN_FILE_PATH: $CI_PROJECT_DIR/ros/cross_toolchain.cmake | ||
AUTOWARE_SYSROOT: /sysroot/${AUTOWARE_TARGET_PLATFORM} | ||
script: | ||
# - ${AUTOWARE_HOME}/docker/crossbuild/build_cross_image.sh | ||
- 'docker run | ||
-e AUTOWARE_SYSROOT=${AUTOWARE_SYSROOT} | ||
--rm | ||
-v ${AUTOWARE_HOME}:${AUTOWARE_HOME} | ||
-w ${AUTOWARE_HOME}/ros | ||
autoware/build:${AUTOWARE_TARGET_PLATFORM}-kinetic-${AUTOWARE_DOCKER_DATE} | ||
bash | ||
-c " | ||
source ${AUTOWARE_SYSROOT}/opt/ros/kinetic/setup.bash && | ||
colcon build | ||
--merge-install | ||
--build-base ${AUTOWARE_BUILD_PATH} | ||
--install-base ${AUTOWARE_INSTALL_PATH} | ||
--cmake-args | ||
-DCMAKE_TOOLCHAIN_FILE=${AUTOWARE_TOOLCHAIN_FILE_PATH} | ||
-DCMAKE_SYSTEM_PROCESSOR=${AUTOWARE_TARGET_ARCH} | ||
-DCMAKE_PREFIX_PATH=\"${AUTOWARE_SYSROOT}/opt/ros/kinetic;${AUTOWARE_INSTALL_PATH}\" | ||
-DCMAKE_FIND_ROOT_PATH=${AUTOWARE_INSTALL_PATH} | ||
" | ||
' | ||
retry: 1 | ||
|
||
pages: | ||
stage: deploy | ||
image: alpine | ||
dependencies: | ||
- build_kinetic | ||
script: | ||
- BRANCH_NAME="$(echo $CI_COMMIT_REF_NAME | sed 's/\//_/g')" | ||
- COVERAGE_FOLDER_NAME="coverage_$BRANCH_NAME" | ||
- tar -xzvf coverage.tar.gz | ||
- mv $COVERAGE_FOLDER_NAME public | ||
artifacts: | ||
paths: | ||
- public | ||
only: | ||
- master | ||
- develop | ||
|
||
|
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,10 @@ | ||
[submodule "ros/src/msgs/platform_automation_msgs"] | ||
path = ros/src/msgs/platform_automation_msgs | ||
url = https://github.com/astuff/platform_automation_msgs.git | ||
branch = 51ceed71c28773887648993ceec803ca498698ae | ||
[submodule "ros/src/sensing/drivers/lidar/packages/robosense"] | ||
path = ros/src/sensing/drivers/lidar/packages/robosense | ||
url = https://github.com/CPFL/robosense | ||
[submodule "ros/src/msgs/lgsvl_msgs"] | ||
path = ros/src/msgs/lgsvl_msgs | ||
url = https://github.com/lgsvl/lgsvl_msgs.git | ||
[submodule "ros/src/sensing/drivers/lidar/packages/ouster"] | ||
path = ros/src/sensing/drivers/lidar/packages/ouster | ||
url = https://github.com/CPFL/ouster | ||
branch = autoware_branch |
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,119 +1,20 @@ | ||
language: | ||
- generic | ||
language: generic | ||
services: | ||
- docker | ||
cache: | ||
- apt | ||
matrix: | ||
include: | ||
- dist: xenial | ||
compiler: gcc | ||
os: linux | ||
sudo: required | ||
env: ROS_DISTRO=kinetic | ||
- dist: xenial | ||
os: linux | ||
sudo: required | ||
services: | ||
- docker | ||
env: ROS_DISTRO=kinetic CROSS_COMPILE=1 | ||
- dist: trusty | ||
compiler: gcc | ||
os: linux | ||
sudo: required | ||
env: ROS_DISTRO=indigo | ||
notifications: | ||
slack: star4:911NA0lU8gDHitCKLto9LzPJ | ||
directories: | ||
- $HOME/.ccache | ||
env: | ||
global: | ||
- ROS_CI_DESKTOP="`lsb_release -cs`" | ||
- CI_SOURCE_PATH=$(pwd) | ||
- ROSINSTALL_FILE=$CI_SOURCE_PATH/dependencies.rosinstall | ||
- CATKIN_OPTIONS=$CI_SOURCE_PATH/catkin.options | ||
- PYTHONPATH=${PYTHONPATH}:/usr/lib/python2.7/dist-packages:/usr/local/lib/python2.7/dist-packages | ||
|
||
# Install system dependencies, and Autoware pre requisites (non-ros) | ||
before_install: | ||
- if [ "${CROSS_COMPILE}" != "1" ]; then | ||
sudo sh -c "echo \"deb http://packages.ros.org/ros/ubuntu $ROS_CI_DESKTOP main\" > /etc/apt/sources.list.d/ros-latest.list"; | ||
travis_retry sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116; | ||
travis_retry sudo apt-get update; | ||
travis_retry sudo apt-get install -y dpkg; | ||
travis_retry sudo apt-get install -y python-catkin-pkg python-rosdep python-wstool ros-${ROS_DISTRO}-catkin; | ||
source /opt/ros/${ROS_DISTRO}/setup.bash; | ||
travis_retry sudo rosdep init; | ||
travis_retry rosdep update; | ||
fi | ||
|
||
# Install all ros dependencies, using wstool first and rosdep second. | ||
# wstool looks for a ROSINSTALL_FILE defined in the environment variables. | ||
before_script: | ||
- if [ "${CROSS_COMPILE}" != "1" ]; then | ||
cd ros/src; | ||
wstool init; | ||
test -f "${ROSINSTALL_FILE}" && wstool merge "${ROSINSTALL_FILE}"; | ||
travis_retry wstool up; | ||
cd ..; | ||
travis_retry rosdep install -y --from-paths src --ignore-src --rosdistro ${ROS_DISTRO}; | ||
fi | ||
- CCACHE_DIR=$HOME/.ccache | ||
matrix: | ||
- ROS_DISTRO="kinetic" _GUARD_INTERVAL=10 CATKIN_PARALLEL_JOBS='-p2' ROS_PARALLEL_JOBS='-j2' NOT_TEST_BUILD='true' NOT_TEST_INSTALL='true' | ||
- ROS_DISTRO="melodic" _GUARD_INTERVAL=10 CATKIN_PARALLEL_JOBS='-p2' ROS_PARALLEL_JOBS='-j2' NOT_TEST_BUILD='true' NOT_TEST_INSTALL='true' | ||
matrix: | ||
allow_failures: | ||
- env: ROS_DISTRO="melodic" _GUARD_INTERVAL=10 CATKIN_PARALLEL_JOBS='-p2' ROS_PARALLEL_JOBS='-j2' NOT_TEST_BUILD='true' NOT_TEST_INSTALL='true' | ||
|
||
# Compile and test (mark the build as failed if any step fails). If the | ||
# CATKIN_OPTIONS file exists, use it as an argument to catkin_make, for example | ||
# to blacklist certain packages. | ||
# | ||
# NOTE on testing: `catkin_make run_tests` will show the output of the tests | ||
# (gtest, nosetest, etc..) but always returns 0 (success) even if a test | ||
# fails. Running `catkin_test_results` aggregates all the results and returns | ||
# non-zero when a test fails (which notifies Travis the build failed). | ||
install: | ||
- git clone --quiet --depth 1 https://github.com/ros-industrial/industrial_ci.git .industrial_ci | ||
script: | ||
- if [ "${CROSS_COMPILE}" == "1" ]; then | ||
AUTOWARE_HOME=${TRAVIS_BUILD_DIR}; | ||
AUTOWARE_TARGET_ARCH=aarch64; | ||
AUTOWARE_TARGET_PLATFORM=generic-aarch64; | ||
AUTOWARE_BUILD_PATH=${AUTOWARE_HOME}/ros/build-${AUTOWARE_TARGET_PLATFORM}; | ||
AUTOWARE_DEVEL_PATH=${AUTOWARE_HOME}/ros/devel-${AUTOWARE_TARGET_PLATFORM}; | ||
AUTOWARE_TOOLCHAIN_FILE_PATH=${AUTOWARE_HOME}/ros/cross_toolchain.cmake; | ||
AUTOWARE_SYSROOT=/sysroot/${AUTOWARE_TARGET_PLATFORM}; | ||
|
||
travis_retry docker run | ||
-e AUTOWARE_SYSROOT=${AUTOWARE_SYSROOT} | ||
--rm | ||
-v ${AUTOWARE_HOME}:${AUTOWARE_HOME} | ||
-w ${AUTOWARE_HOME}/ros | ||
autoware/build:${AUTOWARE_TARGET_PLATFORM}-kinetic-20180809 | ||
bash | ||
-c "source /opt/ros/kinetic/setup.bash && | ||
catkin_make | ||
-DCMAKE_TOOLCHAIN_FILE=${AUTOWARE_TOOLCHAIN_FILE_PATH} | ||
-DCATKIN_DEVEL_PREFIX=${AUTOWARE_DEVEL_PATH} | ||
-DCMAKE_SYSTEM_PROCESSOR=${AUTOWARE_TARGET_ARCH} | ||
--build ${AUTOWARE_BUILD_PATH} | ||
clean && | ||
source devel-${AUTOWARE_TARGET_PLATFORM}/setup.bash && | ||
catkin_make | ||
-DCMAKE_TOOLCHAIN_FILE=${AUTOWARE_TOOLCHAIN_FILE_PATH} | ||
-DCATKIN_DEVEL_PREFIX=${AUTOWARE_DEVEL_PATH} | ||
-DCMAKE_SYSTEM_PROCESSOR=${AUTOWARE_TARGET_ARCH} | ||
--build ${AUTOWARE_BUILD_PATH} | ||
-j4"; | ||
else | ||
catkin_make clean; | ||
source devel/setup.bash; | ||
catkin_make -j4; | ||
fi | ||
|
||
#sudo: required | ||
#dist: trusty | ||
#language: generic | ||
#compiler: | ||
# - gcc | ||
#notifications: | ||
# slack: star4:911NA0lU8gDHitCKLto9LzPJ | ||
#env: | ||
# matrix: | ||
# - USE_DEB=true ROS_DISTRO="indigo" ROS_REPOSITORY_PATH=http://packages.ros.org/ros/ubuntu | ||
## - USE_DEB=true ROS_DISTRO="indigo" ROS_REPOSITORY_PATH=http://packages.ros.org/ros-shadow-fixed/ubuntu | ||
# - USE_DEB=true ROS_DISTRO="kinetic" ROS_REPOSITORY_PATH=http://packages.ros.org/ros/ubuntu | ||
## - USE_DEB=true ROS_DISTRO="kinetic" ROS_REPOSITORY_PATH=http://packages.ros.org/ros-shadow-fixed/ubuntu | ||
#install: | ||
# - git clone https://github.com/ros-industrial/industrial_ci.git .ci_config | ||
#script: | ||
# - source .ci_config/travis.sh | ||
- .industrial_ci/travis.sh |
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
Any contribution that you make to this repository will | ||
be under the Apache 2 License, as dictated by that | ||
[license](http://www.apache.org/licenses/LICENSE-2.0.html): | ||
|
||
~~~ | ||
5. Submission of Contributions. Unless You explicitly state otherwise, | ||
any Contribution intentionally submitted for inclusion in the Work | ||
by You to the Licensor shall be under the terms and conditions of | ||
this License, without any additional terms or conditions. | ||
Notwithstanding the above, nothing herein shall supersede or modify | ||
the terms of any separate license agreement you may have executed | ||
with Licensor regarding such Contributions. | ||
~~~ |
Oops, something went wrong.