Before pushing to trigger the GitHub Actions workflow, verify:
-
.github/workflows/build-executables.yml- Main workflow -
.github/workflows/README.md- Workflow documentation -
.github/README.md- GitHub config overview -
.github/QUICKSTART.md- Quick start guide
-
build_executables.py- Removed hardcoded path/workspaces/tinynav - Uses
os.path.dirname(os.path.abspath(__file__))instead - Tested from different directories
- Works correctly ✓
-
visualize.py- GIF output, CLI args, Pillow writer -
download_log.py- CLI args for port/baud -
read_serial.py- CLI args for port/baud/grid
-
EXECUTABLES_README.md- Main overview -
BUILD_EXECUTABLES.md- Build instructions -
dist/README.md- Distribution guide -
dist/USAGE.md- CLI reference -
dist/REQUIREMENTS.txt- System requirements
- Linux executables built successfully
- All executables tested with
--help - Sizes: visualize (51MB), download_log (7.6MB), read_serial (42MB)
- YAML syntax valid (tested with PyYAML)
- Workflow triggers configured correctly
- Artifact packaging configured
- Release integration configured
All checks passed! You can now:
git add .
git commit -m "Add GitHub Actions workflow with fixed build script"
git push origin mainThen:
- Go to Actions tab on GitHub
- Manually trigger "Build Executables" workflow
- Wait ~10 minutes for completion
- Download artifacts from completed workflow
Linux Build (~5-7 min):
- Checkout code
- Setup Python 3.12
- Install requirements + PyInstaller
- Run build_executables.py
- Test executables (--help)
- Package as tar.gz
- Upload artifact
Windows Build (~6-8 min):
- Checkout code
- Setup Python 3.12
- Install requirements + PyInstaller + windows-curses
- Run build_executables.py
- Test executables (--help)
- Package as zip
- Upload artifact
Summary:
- Report build status
- Show artifact links
Check logs for:
- Missing dependencies
- Import errors
- PyInstaller issues
- Test failures
All known issues have been fixed:
- ✓ Hardcoded path removed
- ✓ GIF format instead of MP4
- ✓ All CLI args validated
Workflow completes successfully when:
- ✅ Both jobs (Linux + Windows) succeed
- ✅ All tests pass (--help commands work)
- ✅ Artifacts are uploaded
- ✅ Summary shows green checkmarks
You should see two downloadable artifacts:
tinynav-linux-x86_64(tar.gz)tinynav-windows-x86_64(zip)