diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 8f5c1e34..39e0b231 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -9,7 +9,7 @@ jobs: - uses: actions/checkout@v1 - name: Package id: package - uses: AutoModality/action-package-debian-ros@v3-perception + uses: AutoModality/action-package-debian-ros@v3 with: release-repo-entitlement: ${{ secrets.CLOUDSMITH_READ_RELEASE_ENTITLEMENT }} diff --git a/.github/workflows/package.yml b/.github/workflows/package.yml index bd1bb92e..a849f138 100644 --- a/.github/workflows/package.yml +++ b/.github/workflows/package.yml @@ -8,16 +8,17 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: [[x64, self-hosted,linux], [arm64,self-hosted,linux]] + os: [[x64, self-hosted,linux,build], [arm64,self-hosted,linux, build]] fail-fast: false steps: - uses: AutoModality/action-clean@v1.1.0 - uses: actions/checkout@v2 + - uses: rlespinasse/github-slug-action@2.0.0 # for GITHUB_REF_SLUG - name: Package id: package - uses: AutoModality/action-package-debian-ros@v3-perception + uses: AutoModality/action-package-debian-ros@v3 with: - branch: ${{ github.event.pull_request.head.ref }} + branch: ${{ env.GITHUB_REF_SLUG }} build-number: ${{ github.run_number }} release-repo-entitlement: ${{ secrets.CLOUDSMITH_READ_RELEASE_ENTITLEMENT }} - name: The generated package @@ -34,6 +35,21 @@ jobs: distro: 'ubuntu' release: 'bionic' file: '${{ steps.package.outputs.artifact-path }}' + - name: Repo Name + run: echo ::set-env name=REPOSITORY_NAME::$(echo "$GITHUB_REPOSITORY" | awk -F / '{print $2}' | sed -e "s/:refs//") + - name: Test Results + if: always() + id: xunit-viewer + uses: AutoModality/action-xunit-viewer@v1 + with: + results: catkin_ws/build/${{env.REPOSITORY_NAME}}/test_results/${{env.REPOSITORY_NAME}} + - name: Attach Test Reports + if: always() + uses: actions/upload-artifact@v1 + with: + name: ${{ steps.xunit-viewer.outputs.report-name }} + path: ${{ steps.xunit-viewer.outputs.report-dir }} + draft-pr: runs-on: ubuntu-18.04 needs: package diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 516d18b0..786a56d2 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -12,7 +12,7 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: [[x64,self-hosted,linux]] + os: [[x64, self-hosted,linux,build]] steps: - uses: AutoModality/action-clean@v1.1.0 - name: Checkout @@ -52,7 +52,7 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: [[x64,self-hosted,linux], [arm64,self-hosted,linux]] + os: [[x64, self-hosted,linux,build], [arm64,self-hosted,linux, build]] fail-fast: true name: Package if released steps: @@ -80,10 +80,35 @@ jobs: - name: Package if published if: steps.published.outputs.value == 'true' id: package - uses: AutoModality/action-package-debian-ros@v3.2.0 + uses: AutoModality/action-package-debian-ros@v3 with: version: ${{ steps.version.outputs.value }} release-repo-entitlement: ${{ secrets.CLOUDSMITH_READ_RELEASE_ENTITLEMENT }} + - name: Repo Name + if: steps.published.outputs.value == 'true' + run: echo ::set-env name=REPOSITORY_NAME::$(echo "$GITHUB_REPOSITORY" | awk -F / '{print $2}' | sed -e "s/:refs//") + - name: Test Results + if: steps.published.outputs.value == 'true' + id: xunit-viewer + uses: AutoModality/action-xunit-viewer@v1 + with: + results: catkin_ws/build/${{env.REPOSITORY_NAME}}/test_results/${{env.REPOSITORY_NAME}} + - name: Attach Test Reports + if: steps.published.outputs.value == 'true' + uses: actions/upload-artifact@v1 + with: + name: ${{ steps.xunit-viewer.outputs.report-name }} + path: ${{ steps.xunit-viewer.outputs.report-dir }} + - name: Publish Test Reports to Azure Storage + if: steps.published.outputs.value == 'true' + uses: bacongobbler/azure-blob-storage-upload@v1.0.0 + with: + source_dir: ${{ steps.xunit-viewer.outputs.report-dir }} + container_name: docs + # http://tiny.cc/y1bznz + connection_string: ${{ secrets.AMROSDOC_AZURE_STORAGE_CONNECTION_STRING }} + extra_args: --destination-path ${{github.repository}}/test-reports + sync: true - name: Deploy if published if: steps.published.outputs.value == 'true' id: deploy diff --git a/.gitignore b/.gitignore index 03a657f6..cab87390 100644 --- a/.gitignore +++ b/.gitignore @@ -36,4 +36,7 @@ debian/ros-* debian/*-stamp debian/source ros-melodic-am-super-*.deb -debian/.debhelper/* \ No newline at end of file +debian/.debhelper/* +.history +build +.catkin_tools diff --git a/CMakeLists.txt b/CMakeLists.txt index c26e4349..6a6c4de7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -29,7 +29,6 @@ endif(CUDA_FOUND) ## System dependencies are found with CMake's conventions -find_package(DJIOSDK REQUIRED) ## Uncomment this if the package has a setup.py. This macro ensures @@ -119,10 +118,10 @@ add_dependencies(super_lib ${catkin_EXPORTED_TARGETS}) if(CUDA_FOUND) add_executable(am_super src/am_super/am_super.cpp src/cuda/cuda_utility_class.cpp) - target_link_libraries(am_super ${catkin_LIBRARIES} ${DJIOSDK_LIBRARIES} super_lib cuda_utility) + target_link_libraries(am_super ${catkin_LIBRARIES} super_lib cuda_utility) else() add_executable(am_super src/am_super/am_super.cpp) - target_link_libraries(am_super ${catkin_LIBRARIES} ${DJIOSDK_LIBRARIES} super_lib) + target_link_libraries(am_super ${catkin_LIBRARIES} super_lib) endif(CUDA_FOUND) add_dependencies(am_super ${catkin_EXPORTED_TARGETS}) @@ -169,10 +168,7 @@ install(DIRECTORY include/super_lib ############# ## Add gtest based cpp test target and link libraries -# catkin_add_gtest(${PROJECT_NAME}-test test/test_machine_learning.cpp) -# if(TARGET ${PROJECT_NAME}-test) -# target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME}) -# endif() - -## Add folders to be run by python nosetests -# catkin_add_nosetests(test) +catkin_add_gtest(${PROJECT_NAME}_test test/sample_tests.cpp) +if(TARGET ${PROJECT_NAME}_test) + target_link_libraries(${PROJECT_NAME}_test ${catkin_LIBRARIES}) +endif() diff --git a/Makefile b/Makefile index 07e42d3f..c36cf4ac 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,8 @@ SHELL := /bin/bash default: - source /opt/ros/melodic/setup.bash && cd catkin_ws && catkin build -j3 --no-status + source /opt/ros/melodic/setup.bash && cd catkin_ws && catkin build -j3 --no-status --catkin-make-args run_tests + rm -f catkin_ws/install/lib/pkgconfig/catkin_tools_prebuild.pc diff --git a/README.md b/README.md index 9d5e109f..75f32803 100644 --- a/README.md +++ b/README.md @@ -2,4 +2,5 @@ Watches the health of all nodes to determine if the flight shall continue.. -[![Latest Version @ Cloudsmith](https://api-prd.cloudsmith.io/badges/version/automodality/release/deb/ros-melodic-am-super/latest/d=ubuntu%252Fbionic;t=1/?render=true&badge_token=gAAAAABetY4e0kXP_ZlIdblJEZG8GiEIYJRkjvt9-nVmp3U4QiqyH-2mOfwi_B7meqOAh3rgt-lbVvFTiAmsysp4iMNx79oZfuVCEac-Lqz-dXxW4W7AbYU%3D)](https://cloudsmith.io/~automodality/repos/release/packages/detail/deb/ros-melodic-am-super/latest/d=ubuntu%252Fbionic;t=1/) ![Release](https://github.com/AutoModality/am_super/workflows/Release/badge.svg) \ No newline at end of file +[![Release](https://github.com/AutoModality/am_super/workflows/Release/badge.svg)](https://github.com/AutoModality/am_super/workflows/Release/badge.svg) +[![Latest Version @ Cloudsmith](https://api-prd.cloudsmith.io/badges/version/automodality/release/deb/ros-melodic-am-super/latest/d=ubuntu%252Fbionic;t=1/?render=true&badge_token=gAAAAABetY4e0kXP_ZlIdblJEZG8GiEIYJRkjvt9-nVmp3U4QiqyH-2mOfwi_B7meqOAh3rgt-lbVvFTiAmsysp4iMNx79oZfuVCEac-Lqz-dXxW4W7AbYU%3D)](https://cloudsmith.io/~automodality/repos/release/packages/detail/deb/ros-melodic-am-super/latest/d=ubuntu%252Fbionic;t=1/) \ No newline at end of file diff --git a/debian/changelog b/debian/changelog index 2393ec7d..a964bd19 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,5 +1 @@ -ros-melodic-am-super (999.99.9) unstable; urgency=medium - - * First - --- Debian Template Sat, 08 Feb 2020 00:36:37 -0800 +ros-melodic-am-super (0.20200604145726) unstable; urgency=medium diff --git a/package.xml b/package.xml index 39fa44c9..f258c661 100644 --- a/package.xml +++ b/package.xml @@ -3,11 +3,7 @@ am_super 0.0.0 AutoModality Supervisor - - - - - support + AutoModality @@ -24,5 +20,6 @@ rospy std_msgs std_srvs - + rosunit + diff --git a/test/sample_tests.cpp b/test/sample_tests.cpp new file mode 100644 index 00000000..67965064 --- /dev/null +++ b/test/sample_tests.cpp @@ -0,0 +1,19 @@ +#include // googletest header file + +#include +using std::string; + +const char* actualValTrue = "hello gtest"; +const char* actualValFalse = "hello world"; +const char* expectVal = "hello gtest"; + +TEST(StrCompare, CStrEqual) +{ + EXPECT_STREQ(expectVal, actualValTrue); +} + +int main(int argc, char** argv) +{ + ::testing::InitGoogleTest(&argc, argv); + return RUN_ALL_TESTS(); +} \ No newline at end of file