diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index f118657f7417b..369290930ddc5 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -31,6 +31,15 @@ jobs: apt-get -y update apt-get -y install kvaser-canlib-dev kvaser-drivers-dkms + - name: Search modified package + id: list_packages + run: | + echo ::set-output name=package_list::$(colcon list --names-only) + + - name: Show target packages + run: | + echo "Target packages: ${{ steps.list_packages.outputs.package_list }}" + - name: Install yq run: | apt-get -y update @@ -62,10 +71,12 @@ jobs: run: | . /opt/ros/foxy/setup.sh colcon build --event-handlers console_cohesion+ \ + --packages-up-to ${{ steps.list_packages.outputs.package_list }} \ --cmake-args -DCMAKE_BUILD_TYPE=Release - name: Run tests run: | . /opt/ros/foxy/setup.sh colcon test --event-handlers console_cohesion+ \ + --packages-select ${{ steps.list_packages.outputs.package_list }} \ --return-code-on-test-failure diff --git a/.github/workflows/build_and_test_pr.yml b/.github/workflows/build_and_test_pr.yml index 2564bf7579265..cede36fb7570c 100644 --- a/.github/workflows/build_and_test_pr.yml +++ b/.github/workflows/build_and_test_pr.yml @@ -22,6 +22,7 @@ jobs: - name: Checkout repository uses: actions/checkout@v2 with: + # Fetch with depth=0 to calculate modified packages fetch-depth: 0 - name: Install pip