Forum Rule: Always post complete source code & details to reproduce any issue!
Results 1 to 2 of 2

Thread: Anyone using GitHub Actions for CI and PlatformIO?

  1. #1
    Junior Member
    Join Date
    Jul 2020

    Anyone using GitHub Actions for CI and PlatformIO?

    I recently transitioned to doing all my development in VSCode/PlatformIO (instead of Arduino IDE)'s life changing. I've also started playing around with GitHub Action workflows which let you run checks when you commit to your repository. Right now I have it set to compile my project and alert me if the compilation passed or failed. There are many other things that are possible that I haven't done yet, such as running unit test scripts, etc. Anyone here doing something similar? It's probably possible to write a test script that compiles and uploads to real hardware, but I haven't figured that out yet.

  2. #2
    Senior Member brtaylor's Avatar
    Join Date
    Mar 2016
    Portland, OR
    Similar discussion here:

    Our workflow is a little different - we're using GitLab and CMake for compiling software for Teensy. Our version of the core is here:

    With CMake, I setup a target for uploading using the Teensy CLI. On Linux, the CLI enables you to request an auto restart if it's the only Teensy plugged into the computer (otherwise, it'll upload code to the first one it sees). I've been playing around a little bit with a CI pipeline using Teensy hardware connected to sensors. I setup a Raspberry PI as a CI runner for GitLab. We do a linting step with the Google C++ linting script and then have a build and upload using the targets defined in CMake. The nice thing with the Raspberry Pi is it can cycle the USB power, which will get any sensors or devices connected to the Teensy in a clean state.

    Currently, I'm using test script that runs on the Teensy, which defines tests. The Raspberry Pi commands the test and receives a bool status back on whether the test passed or failed. I'd like to work out an approach that would allow us to define tests more quickly, ideally using the google test framework, and receive a wider range of data back, but haven't had time to work it out yet.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts