From aa6c0585c77ccacebf7f1222c6c6fa1147cd50d9 Mon Sep 17 00:00:00 2001 From: Antonio Bono Date: Thu, 11 Apr 2024 10:54:05 +0200 Subject: [PATCH] added CI --- .github/dependabot.yml | 11 +++++ .github/workflows/build_and_test_humble.yaml | 43 +++++++++++++++++++ .github/workflows/build_and_test_iron.yaml | 43 +++++++++++++++++++ .github/workflows/build_and_test_rolling.yaml | 37 ++++++++++++++++ README.md | 8 +++- dependencies.repos | 5 +++ 6 files changed, 145 insertions(+), 2 deletions(-) create mode 100644 .github/dependabot.yml create mode 100644 .github/workflows/build_and_test_humble.yaml create mode 100644 .github/workflows/build_and_test_iron.yaml create mode 100644 .github/workflows/build_and_test_rolling.yaml create mode 100644 dependencies.repos diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..e644b37 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,11 @@ +# Set update schedule for GitHub Actions +# (https://docs.github.com/en/code-security/dependabot/working-with-dependabot/keeping-your-actions-up-to-date-with-dependabot) + +version: 2 +updates: + + - package-ecosystem: "github-actions" + directory: "/" + schedule: + # Check for updates to GitHub Actions every week + interval: "weekly" diff --git a/.github/workflows/build_and_test_humble.yaml b/.github/workflows/build_and_test_humble.yaml new file mode 100644 index 0000000..18ba436 --- /dev/null +++ b/.github/workflows/build_and_test_humble.yaml @@ -0,0 +1,43 @@ +# This is a basic workflow to help you get started with Actions + +name: Build (humble) + +# Controls when the action will run. +on: + # Triggers the workflow on push + push: + branches: [ main ] + + # Triggers the workflow on pull requests + pull_request: + branches: [ main ] + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# A workflow run is made up of one or more jobs that can run sequentially or in parallel +jobs: + # This workflow contains a single job called "build" + build: + # The type of runner that the job will run on + runs-on: ubuntu-22.04 + container: + image: ubuntu:jammy + + # Steps represent a sequence of tasks that will be executed as part of the job + steps: + - uses: actions/checkout@v4 + - uses: ros-tooling/setup-ros@v0.7 + #with: + # use-ros2-testing: true + - uses: ros-tooling/action-ros-ci@v0.3 + with: + skip-tests: true + target-ros2-distro: humble + colcon-defaults: | + { + "build": { + "symlink-install": false + } + } + vcs-repo-file-url: dependencies.repos \ No newline at end of file diff --git a/.github/workflows/build_and_test_iron.yaml b/.github/workflows/build_and_test_iron.yaml new file mode 100644 index 0000000..3df1196 --- /dev/null +++ b/.github/workflows/build_and_test_iron.yaml @@ -0,0 +1,43 @@ +# This is a basic workflow to help you get started with Actions + +name: Build (iron) + +# Controls when the action will run. +on: + # Triggers the workflow on push + push: + branches: [ main ] + + # Triggers the workflow on pull requests + pull_request: + branches: [ main ] + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# A workflow run is made up of one or more jobs that can run sequentially or in parallel +jobs: + # This workflow contains a single job called "build" + build: + # The type of runner that the job will run on + runs-on: ubuntu-22.04 + container: + image: ubuntu:jammy + + # Steps represent a sequence of tasks that will be executed as part of the job + steps: + - uses: actions/checkout@v4 + - uses: ros-tooling/setup-ros@v0.7 + #with: + # use-ros2-testing: true + - uses: ros-tooling/action-ros-ci@v0.3 + with: + skip-tests: true + target-ros2-distro: iron + colcon-defaults: | + { + "build": { + "symlink-install": false + } + } + vcs-repo-file-url: dependencies.repos \ No newline at end of file diff --git a/.github/workflows/build_and_test_rolling.yaml b/.github/workflows/build_and_test_rolling.yaml new file mode 100644 index 0000000..11e45c0 --- /dev/null +++ b/.github/workflows/build_and_test_rolling.yaml @@ -0,0 +1,37 @@ +# This is a basic workflow to help you get started with Actions + +name: Build (rolling) + +# Controls when the action will run. +on: + # Triggers the workflow on push + push: + branches: [ main ] + + # Triggers the workflow on pull requests + pull_request: + branches: [ main ] + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# A workflow run is made up of one or more jobs that can run sequentially or in parallel +jobs: + # This workflow contains a single job called "build" + build: + # The type of runner that the job will run on + runs-on: ubuntu-latest + container: + image: ubuntu:noble + + # Steps represent a sequence of tasks that will be executed as part of the job + steps: + - uses: actions/checkout@v4 + - uses: ros-tooling/setup-ros@master + with: + use-ros2-testing: true + - uses: ros-tooling/action-ros-ci@master + with: + skip-tests: true + target-ros2-distro: rolling + vcs-repo-file-url: dependencies.repos \ No newline at end of file diff --git a/README.md b/README.md index 93a975c..7c8cce6 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,12 @@ +[![Build (humble)](https://github.com/antbono/nao_led/actions/workflows/build_and_test_humble.yaml/badge.svg)](https://github.com/antbono/nao_led/actions/workflows/build_and_test_humble.yaml) +[![Build (iron)](https://github.com/antbono/nao_led/actions/workflows/build_and_test_iron.yaml/badge.svg)](https://github.com/antbono/nao_led/actions/workflows/build_and_test_iron.yaml) +[![Build (rolling)](https://github.com/antbono/nao_led/actions/workflows/build_and_test_rolling.yaml/badge.svg)](https://github.com/antbono/nao_led/actions/workflows/build_and_test_rolling.yaml) + # nao_led This package is part of the [Open Access NAO](https://github.com/antbono/OAN) framework. -It manages NAO v6 leds through [nao_lola](https://github.com/ros-sports/nao_lola). +It manages NAO v6 leds through the [nao_lola](https://github.com/ros-sports/nao_lola) package from [ROS Sports](https://ros-sports.readthedocs.io/en/latest/). ## Main features @@ -13,7 +17,7 @@ At the moment, you can exploit the package for the following activities: - *Blinking any led with the desired frequency* -- *Looping any led with the desired frequency* +- *Turn LEDs on or off so as to show a 'rotating' animation* For more info, please refer to the related [paper](https://arxiv.org/abs/2403.13960). \ No newline at end of file diff --git a/dependencies.repos b/dependencies.repos new file mode 100644 index 0000000..ab59265 --- /dev/null +++ b/dependencies.repos @@ -0,0 +1,5 @@ +repositories: + nao_lola: + type: git + url: https://github.com/ros-sports/nao_lola.git + version: rolling \ No newline at end of file