From 03aae33909848519694d1ac8cfdb70608425dbad Mon Sep 17 00:00:00 2001 From: Tyler Weaver Date: Thu, 29 Apr 2021 15:44:44 -0600 Subject: [PATCH] Add pre-release test to CI --- .github/workflows/ci.yaml | 46 +++++++++++++++++++ .github/workflows/{format.yml => format.yaml} | 0 .github/workflows/industrial_ci_action.yml | 28 ----------- .github/workflows/prerelease.yaml | 37 +++++++++++++++ README.md | 4 +- 5 files changed, 86 insertions(+), 29 deletions(-) create mode 100644 .github/workflows/ci.yaml rename .github/workflows/{format.yml => format.yaml} (100%) delete mode 100644 .github/workflows/industrial_ci_action.yml create mode 100644 .github/workflows/prerelease.yaml diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml new file mode 100644 index 00000000..dbf6724c --- /dev/null +++ b/.github/workflows/ci.yaml @@ -0,0 +1,46 @@ +# This config uses industrial_ci (https://github.com/ros-industrial/industrial_ci.git). +# For troubleshooting, see readme (https://github.com/ros-industrial/industrial_ci/blob/master/README.rst) + +name: CI + +on: + workflow_dispatch: + pull_request: + push: + branches: + - melodic-devel + +jobs: + industrial_ci: + strategy: + matrix: + env: + - ROS_DISTRO: melodic + ROS_REPO: main + - ROS_DISTRO: melodic + ROS_REPO: testing + env: + BASEDIR: ${{ github.workspace }}/.work + CCACHE_DIR: ${{ github.workspace }}/.ccache + CACHE_PREFIX: ${{ matrix.env.ROS_DISTRO }}-${{ matrix.env.ROS_REPO }} + + name: ${{ matrix.env.ROS_DISTRO }}-${{ matrix.env.ROS_REPO }} + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: cache ccache + uses: pat-s/always-upload-cache@v2.1.3 + with: + path: ${{ env.CCACHE_DIR }} + key: ccache-${{ env.CACHE_PREFIX }}-${{ github.sha }}-${{ github.run_id }} + restore-keys: | + ccache-${{ env.CACHE_PREFIX }}-${{ github.sha }} + ccache-${{ env.CACHE_PREFIX }} + - uses: ros-industrial/industrial_ci@master + env: ${{ matrix.env }} + - name: upload test artifacts (on failure) + uses: actions/upload-artifact@v2 + if: failure() + with: + name: test-results + path: ${{ env.BASEDIR }}/target_ws/**/test_results/**/*.xml diff --git a/.github/workflows/format.yml b/.github/workflows/format.yaml similarity index 100% rename from .github/workflows/format.yml rename to .github/workflows/format.yaml diff --git a/.github/workflows/industrial_ci_action.yml b/.github/workflows/industrial_ci_action.yml deleted file mode 100644 index 151269f3..00000000 --- a/.github/workflows/industrial_ci_action.yml +++ /dev/null @@ -1,28 +0,0 @@ -# This config uses industrial_ci (https://github.com/ros-industrial/industrial_ci.git). -# For troubleshooting, see readme (https://github.com/ros-industrial/industrial_ci/blob/master/README.rst) - -name: BuildAndTest - -on: [push, pull_request] - -jobs: - industrial_ci: - strategy: - matrix: - env: - - {ROS_DISTRO: melodic, ROS_REPO: main} - - {ROS_DISTRO: noetic, ROS_REPO: main} - - {ROS_DISTRO: noetic, ROS_REPO: testing} - env: - CCACHE_DIR: ~/.ccache - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - - uses: actions/cache@v2 - with: - path: ${{ env.CCACHE_DIR }} - key: ccache-${{ matrix.env.ROS_DISTRO }}-${{ matrix.env.ROS_REPO }}-${{ github.sha }} - restore-keys: | - ccache-${{ matrix.env.ROS_DISTRO }}-${{ matrix.env.ROS_REPO }} - - uses: 'ros-industrial/industrial_ci@master' - env: ${{ matrix.env }} diff --git a/.github/workflows/prerelease.yaml b/.github/workflows/prerelease.yaml new file mode 100644 index 00000000..8adcb0ea --- /dev/null +++ b/.github/workflows/prerelease.yaml @@ -0,0 +1,37 @@ +# This config uses industrial_ci (https://github.com/ros-industrial/industrial_ci.git). +# For troubleshooting, see readme (https://github.com/ros-industrial/industrial_ci/blob/master/README.rst) + +name: pre-release + +on: + workflow_dispatch: + push: + +jobs: + default: + strategy: + matrix: + distro: [melodic] + + env: + # https://github.com/ros-industrial/industrial_ci/issues/666 + BUILDER: catkin_make_isolated + ROS_DISTRO: ${{ matrix.distro }} + PRERELEASE: true + DOWNSTREAM_WORKSPACE: github:ros-planning/moveit#melodic-devel + CCACHE_DIR: ${{ github.workspace }}/.ccache + + if: github.event_name == 'workflow_dispatch' # only allow manual triggering + name: "${{ matrix.distro }}" + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: cache ccache + uses: pat-s/always-upload-cache@v2.1.3 + with: + path: ${{ env.CCACHE_DIR }} + key: ccache-prerelease-${{ env.ROS_DISTRO }}-${{ github.sha }}-${{ github.run_id }} + restore-keys: | + ccache-prerelease-${{ env.ROS_DISTRO }}-${{ github.sha }} + ccache-prerelease-${{ env.ROS_DISTRO }} + - uses: ros-industrial/industrial_ci@master diff --git a/README.md b/README.md index e3446e90..5bb44e96 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,9 @@ MoveIt Resources This repository includes various resources (URDFs, meshes, moveit_config packages) needed for MoveIt! testing. -GitHub Actions: [![Format](https://github.com/ros-planning/moveit_resources/actions/workflows/format.yml/badge.svg?branch=melodic-devel)](https://github.com/ros-planning/moveit_resources/actions/workflows/format.yml?branch=melodic-devel) [![BuildAndTest](https://github.com/ros-planning/moveit_resources/actions/workflows/industrial_ci_action.yml/badge.svg?branch=melodic-devel)](https://github.com/ros-planning/moveit_resources/actions/workflows/industrial_ci_action.yml?branch=melodic-devel) +GitHub Actions: +[![Format](https://github.com/ros-planning/moveit_resources/actions/workflows/format.yaml/badge.svg?branch=melodic-devel)](https://github.https://github.com/ros-planning/moveit_resources/actions/workflows/format.yaml?query=branch%3Amelodic-devel) +[![BuildAndTest](https://github.com/ros-planning/moveit_resources/actions/workflows/ci.yaml/badge.svg?branch=melodic-devel)](https://github.https://github.com/ros-planning/moveit_resources/actions/workflows/ci.yaml?query=branch%3Amelodic-devel) ## Included Robots