zarfld / LinuxCnc_PokeysLibComp

Pokeys comp for LinuxCnc using https://bitbucket.org/mbosnak/pokeyslib.git
MIT License
5 stars 0 forks source link

Restrict Build/Test to Platforms with Official LinuxCNC Images and Include Raspbian Bullseye with LinuxCNC 2.8 Latest #90

Open zarfld opened 7 hours ago

zarfld commented 7 hours ago

Restrict Build/Test to Platforms with Official LinuxCNC Images and Include Raspbian Bullseye with LinuxCNC 2.8 Latest

Description:

To ensure compatibility and streamline our testing process, we need to adjust our CI pipeline to focus on platforms where LinuxCNC provides official images. This includes:

By aligning our testing environments with the officially supported platforms, we can better ensure that our software works seamlessly with LinuxCNC and provide more reliable support for our users.

Tasks:

  1. Identify Supported Platforms:

    • Review the LinuxCNC Downloads page to determine the platforms for which official images are provided.
    • List the official images available for:
      • Raspberry Pi 4 (Bullseye and Bookworm)
      • amd64 hybrid images
  2. Configure CI Pipeline to Use Official Images:

    • Update the CI pipeline to restrict builds and tests to the identified platforms.
    • Remove or disable builds for unsupported platforms.
  3. Include Raspbian Bullseye with LinuxCNC 2.8-latest:

    • Set up a build and test environment specifically for Raspbian Bullseye running LinuxCNC 2.8-latest.
    • Ensure that all dependencies and configurations are correctly set up for this environment.
  4. Support Multiple LinuxCNC Versions:

    • Configure the CI pipeline to build and test against LinuxCNC versions:
      • 2.9.2
      • 2.9.3
      • Latest available version
    • Use the official images when available; otherwise, build LinuxCNC from source for the specific versions.
  5. Run Tests on Latest Official Images:

    • Download the latest official images from the LinuxCNC download page.
    • Modify the CI pipeline to use these images for testing.
    • Ensure that tests are executed on these images whenever they are available.
  6. Automate Image Handling in CI:

    • Implement scripts or use existing tools to automate the downloading and setup of official LinuxCNC images in the CI pipeline.
    • Consider using virtualization tools like QEMU for ARM emulation to run Raspberry Pi images in the CI environment.
  7. Update Documentation:

    • Document the supported platforms and LinuxCNC versions in the project's README or a dedicated documentation file.
    • Provide instructions for developers on how to replicate the CI environments locally.

Acceptance Criteria:

Reference Links:

zarfld commented 6 hours ago

note that seperate images versions with hybrid, PREEMPT-RT, RTAI and USPACE are provided by linuxcnc - thats also required here!! find further information here: https://linuxcnc.org/downloads/