Skip to content

CI sandbox#367

Open
Mehulantony wants to merge 8 commits intooss-slu:mainfrom
Mehulantony:ci-sandbox
Open

CI sandbox#367
Mehulantony wants to merge 8 commits intooss-slu:mainfrom
Mehulantony:ci-sandbox

Conversation

@Mehulantony
Copy link
Copy Markdown

This PR introduces a sandbox GitHub Actions workflow (build-windows-sandbox.yml) that allows Mouser installer builds to be tested without modifying or affecting existing production workflows.
The workflow reuses the existing build-reusable.yml configuration and uploads the resulting installer as an artifact for manual download and validation.

@Mehulantony
Copy link
Copy Markdown
Author

What Was Updated:

Created build-windows-sandbox.yml:

  • Runs only on workflow_dispatch and ci-sandbox PRs
  • Uses windows-latest to validate Mouser Windows builds
  • Installs project dependencies and PyInstaller in an isolated job
  • Uploads build artifacts (if generated) for manual testing
  • Avoids modifying production code or existing pipelines
  • Updated requirements.txt by replacing playsound with playsound3 which ensures that the workflow runs successfully.
  • playsound3 provides Windows-compatible wheels and resolves CI install failures
  • Fixes repeated OSError: could not get source code build failures

Why This Change Was Needed:

  1. The existing PyInstaller build failed due to playsound not supporting newer Python builds
  2. Sandbox workflow allows testing and iteration safely without breaking main

Maintainers can re-run CI installer tests any time and validate Windows builds before enabling them in production.

@Mehulantony
Copy link
Copy Markdown
Author

The CI sandbox does not generate a Windows .exe build. To complete Windows installer support, the next phase involves resolving PyInstaller packaging issues. The sandbox workflow successfully installs all dependencies and prepares the environment, but PyInstaller currently fails to generate the final .exe build. Moving forward, the following tasks are required:

  1. Review PyInstaller logs to identify missing hidden imports or data files.

  2. Validate PyInstaller locally on Windows to confirm paths and module discovery.

  3. Adjust the PyInstaller build command by adding required --collect-data, --hidden-import, or resource paths until the bundled application runs correctly.

  4. Re-run the sandbox workflow after each adjustment to verify artifact generation.

  5. Once a .exe is produced consistently, we can upload it as a downloadable artifact from CI (or optionally integrate the build into the production workflow)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant