Skip to content

CI: find a solution for including custom PlatformIO build envs from PRs (usermods) in CI builds #5648

@coderabbitai

Description

@coderabbitai

Problem

When a PR introduces a new usermod (or other feature) that requires a custom PlatformIO build environment, there is currently no clean way to include that environment in CI builds for the PR.

  • platformio_override.ini is listed in .gitignore and must not be committed to the repository, so it cannot be used to ship a custom build env in a PR.
  • The established workaround is to place an example as usermods/<modname>/platformio_override.ini.sample, but .sample files are not picked up by PlatformIO or the CI pipeline.
  • Even the VSCode UI workflow does not solve the CI-build side of the problem — a second file would still be needed.

Impact

  • New usermods/features that need non-default build environments cannot be fully validated by CI during code review.
  • PR authors resort to committing platformio_override.ini directly (as seen in PR Add DALI support - As a light #5645), which clobbers a developer's local override when they pull the branch.

Possible directions

  • A dedicated, version-controlled file (e.g., usermods/<modname>/platformio_build_envs.ini) that CI explicitly includes/merges.
  • A CI mechanism that discovers and appends *.ini.sample files from changed usermods.
  • Documentation of an agreed-upon interim workaround.

References

/cc @softhack007

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementkeepThis issue will never become stale/closed automatically

    Type

    No fields configured for Task.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions