Skip to content

Commit

Permalink
Merge release/k900 for 4.4.0 release (#326)
Browse files Browse the repository at this point in the history
  • Loading branch information
codygarver authored May 5, 2023
2 parents cdb1f80 + c5bc503 commit 537df8b
Show file tree
Hide file tree
Showing 11 changed files with 262 additions and 391 deletions.
207 changes: 0 additions & 207 deletions .circleci/config.yml

This file was deleted.

170 changes: 170 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,170 @@
name: CI
on:
push:
pull_request:
jobs:
build:
defaults:
run:
shell: bash
runs-on: ubuntu-latest-8-cores
container:
image: ubuntu:bionic-20210702
env:
DEBIAN_FRONTEND: noninteractive
INIT_ENV: "/home/carma-streets/.base-image/init-env.sh"
SONAR_SCANNER_VERSION: "4.6.2.2472"
TERM: xterm
options: "--user root"
steps:
# Bionic's git version is not sufficient for actions/checkout 0 fetch-depth,
# remove this step after rebasing carma-streets to newer Ubuntu release
- name: Install newer git for checkout
run: |
apt-get update
apt-get install -y software-properties-common
add-apt-repository -u ppa:git-core/ppa
apt-get install -y git
- name: Checkout ${{ github.event.repository.name }}
uses: actions/checkout@v3.3.0
with:
path: ${{ github.event.repository.name }}
fetch-depth: 0
- name: Move source code
run: mv $GITHUB_WORKSPACE/${{ github.event.repository.name }} /home/carma-streets
- name: Install dependencies
run: |
apt-get update
apt-get install -y cmake git build-essential libboost-all-dev curl unzip gcc-7 g++-7 autotools-dev automake jq qtbase5-dev qtbase5-dev-tools libqhttpengine-dev libssl-dev libpugixml-dev libgeographic-dev sqlite3 libsqlite3-dev python3-pip
pip3 install gcovr
mkdir -p /home/carma-streets/ext
- name: Install gtest
run: |
git clone --depth 1 https://github.com/google/googletest/ /home/carma-streets/ext/googletest
cd /home/carma-streets/ext/googletest/
cmake .
make -j
make install
- name: Install librdkafka
run: |
git clone --depth 1 https://github.com/edenhill/librdkafka /home/carma-streets/ext/librdkafka
cd /home/carma-streets/ext/librdkafka/
./configure --prefix=/usr
make -j
make install
- name: Install spdlog
run: |
git clone --depth 1 https://github.com/gabime/spdlog.git /home/carma-streets/ext/spdlog
mkdir -p /home/carma-streets/ext/spdlog/build
cd /home/carma-streets/ext/spdlog/build
cmake ..
make -j
make install
- name: Install rapidjson
run: |
git clone --depth 1 https://github.com/Tencent/rapidjson /home/carma-streets/ext/rapidjson
mkdir -p /home/carma-streets/ext/rapidjson/build
cd /home/carma-streets/ext/rapidjson/build
cmake ..
make -j
make install
- name: Install net-snmp
run: |
cd /home/carma-streets/ext/
apt-get install -y libperl-dev
curl -L -O http://sourceforge.net/projects/net-snmp/files/net-snmp/5.9.1/net-snmp-5.9.1.tar.gz
tar -xvzf /home/carma-streets/ext/net-snmp-5.9.1.tar.gz
cd net-snmp-5.9.1/
./configure --with-default-snmp-version="1" --with-sys-contact="@@no.where" --with-sys-location="Unknown" --with-logfile="/var/log/snmpd.log" --with-persistent-directory="/var/net-snmp"
make -j
make install
- name: Install qhttpengine
run: |
git clone --depth 1 https://github.com/etherealjoy/qhttpengine.git /home/carma-streets/ext/qhttpengine
mkdir -p /home/carma-streets/ext/qhttpengine/build
cd /home/carma-streets/ext/qhttpengine/build
cmake ..
make -j
make install
- name: Install PROJ for coordinate transformations
run: |
git clone --depth 1 https://github.com/OSGeo/PROJ.git /home/carma-streets/PROJ --branch 6.2.1
cd /home/carma-streets/PROJ
./autogen.sh
./configure
make -j
make install
- name: Download a cmake module for PROJ
run: |
cd /usr/share/cmake-3.10/Modules
curl -O https://raw.githubusercontent.com/mloskot/cmake-modules/master/modules/FindPROJ4.cmake
- name: Install ROS melodic
run: |
apt install -y lsb-release
sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc |apt-key add -
apt-get update
apt-get install -y ros-melodic-catkin
cd /opt/ros/melodic/
ls -a
mkdir -p /home/carma-streets/.base-image
echo "source /opt/ros/melodic/setup.bash" > "$INIT_ENV"
- name: Install carma_lanelet2
run: |
mkdir -p /home/carma-streets/carma_lanelet2/src
cd /home/carma-streets/carma_lanelet2/src
git init
echo "temp"
git remote add origin -f https://github.com/usdot-fhwa-stol/autoware.ai.git
git config core.sparsecheckout true
echo "common/hardcoded_params/*" >> .git/info/sparse-checkout
echo "common/lanelet2_extension/*" >> .git/info/sparse-checkout
echo "lanelet2/*" >> .git/info/sparse-checkout
echo "mrt_cmake_modules/*" >> .git/info/sparse-checkout
git pull --depth 1 origin refactor_lanelet2_extension
git checkout refactor_lanelet2_extension
rm -r lanelet2/lanelet2_python
rm -r lanelet2/lanelet2_examples
cd /home/carma-streets/carma_lanelet2
source /opt/ros/melodic/setup.bash
apt-get install -y libeigen3-dev python-rospkg
ROS_VERSION=1 LANELET2_EXTENSION_LOGGER_TYPE=1 catkin_make install
cd /home/carma-streets/carma_lanelet2/install/
ls -a
echo "source /home/carma-streets/carma_lanelet2/install/setup.bash" >> "$INIT_ENV"
- name: Install Sonar
run: |
SONAR_DIR=/opt/sonarqube
mkdir $SONAR_DIR
curl -o $SONAR_DIR/sonar-scanner.zip https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-${SONAR_SCANNER_VERSION}-linux.zip
curl -o $SONAR_DIR/build-wrapper.zip https://sonarcloud.io/static/cpp/build-wrapper-linux-x86.zip
curl -sL https://deb.nodesource.com/setup_16.x |bash -
apt-get install -y nodejs
cd $SONAR_DIR
for ZIP in *.zip; do
unzip "$ZIP" -d .
rm "$ZIP"
done
mv $(ls $SONAR_DIR |grep "sonar-scanner-") $SONAR_DIR/sonar-scanner/
mv $(ls $SONAR_DIR |grep "build-wrapper-") $SONAR_DIR/build-wrapper/
echo $SONAR_DIR/sonar-scanner/bin >> $GITHUB_PATH
echo $SONAR_DIR/build-wrapper >> $GITHUB_PATH
- name: Build
run: |
source ${INIT_ENV}
cd /home/carma-streets/
build-wrapper-linux-x86-64 --out-dir /home/carma-streets/bw-output ./build.sh
- name: Tests
run: |
cd /home/carma-streets/
./coverage.sh
- name: Archive test results
uses: actions/upload-artifact@v3
with:
name: Test Results
path: /home/carma-streets/test_results
- name: Run SonarScanner
uses: usdot-fhwa-stol/actions/sonar-scanner@main
with:
sonar-token: ${{ secrets.SONAR_TOKEN }}
working-dir: /home/carma-streets
File renamed without changes.
1 change: 0 additions & 1 deletion .sonarqube/sonar-scanner.properties
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ sonar.host.url=https://sonarcloud.io
sonar.projectKey=usdot-fhwa-stol_carma-streets
sonar.organization=usdot-fhwa-stol
sonar.cfamily.build-wrapper-output=/home/carma-streets/bw-output
sonar.cfamily.threads=1
sonar.cfamily.cache.enabled=false
sonar.coverageReportPaths= /home/carma-streets/kafka_clients/coverage/coverage.xml, \
/home/carma-streets/intersection_model/coverage/coverage.xml, \
Expand Down
3 changes: 2 additions & 1 deletion Doxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -906,7 +906,8 @@ RECURSIVE = YES
# Note that relative paths are relative to the directory from which doxygen is
# run.

EXCLUDE =
EXCLUDE = docs/ISSUE_TEMPLATE.md \
docs/PULL_REQUEST_TEMPLATE.md

# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
# directories that are symbolic links (a Unix file system feature) are excluded
Expand Down
Loading

0 comments on commit 537df8b

Please sign in to comment.