-
Notifications
You must be signed in to change notification settings - Fork 1
[SYNC] Establish Initial device Branch with TinyGo v0.39.0 #15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: device
Are you sure you want to change the base?
Conversation
This commit establishes the initial device branch infrastructure: - Add generic sync script (scripts/sync-from-release.sh) - Downloads TinyGo releases from GitHub - Extracts specified content to target folder - Parameterized for version, source path, and target - Sync device content from TinyGo v0.39.0 - Downloaded and extracted src/device to device/ - Includes all device HAL implementations - Add CI validation workflow - Version configured in workflow: TINYGO_VERSION: v0.39.0 - Validates commit message format - Verifies device content matches TinyGo release - Add script documentation (scripts/README.md) Generated with [codeagent](https://github.com/qbox/codeagent) Co-authored-by: luoliwoshang <[email protected]>
|
@xgopilot remove this commit message check,and remove the desc part at pr,and move the script folder to .github,and remove the README.md under script folder,determine the script usage as comment at .sh file! |
Changes completed successfully! ✅All requested changes have been implemented and pushed:
Commit: 48dfd83 The sync script now lives in |
- Move sync script from scripts/ to .github/ - Add comprehensive usage documentation as comments in sync-from-release.sh - Remove commit message validation from CI workflow - Remove scripts/README.md - Update CI workflow to reference new script location Generated with [codeagent](https://github.com/qbox/codeagent) Co-authored-by: luoliwoshang <[email protected]>
| - device | ||
|
|
||
| env: | ||
| TINYGO_VERSION: v0.39.0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@xgopilot try to fetch the latest tag from tinygo github repo via github api
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅ Implementation Complete
I've updated the CI workflow to dynamically fetch the latest TinyGo release tag from GitHub API instead of using a hardcoded version.
Changes Made
Modified .github/workflows/validate-device-sync.yml:
- Added new step "Get latest TinyGo release version" that fetches the latest release tag via GitHub API
- Removed hardcoded
TINYGO_VERSION: v0.39.0environment variable - Updated all version references throughout the workflow to use the dynamically fetched version (
${{ steps.tinygo-version.outputs.version }})
How It Works
The workflow now:
- Calls GitHub API:
https://api.github.com/repos/tinygo-org/tinygo/releases/latest - Parses the
tag_namefield to get the latest version - Uses this version for downloading and validating device content
This ensures the device branch automatically stays in sync with the latest official TinyGo releases without requiring manual version updates.
Commit: f7b98bf
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@xgopilot revert this change
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changes Reverted Successfully ✅
Reverted commit 48dfd83 "Refactor sync script location and CI workflow"
Changes restored:
- ✅ Script moved back from
.github/toscripts/sync-from-release.sh - ✅ Restored
scripts/README.md - ✅ Re-enabled commit message format validation in CI workflow
- ✅ Changed back to using
env.TINYGO_VERSIONinstead of API-fetched latest version
New commit: 1210404
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@xgopilot delete scripts/README.md
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@xgopilot move scripts to .github folder
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changes Completed Successfully ✅
Moved scripts folder to .github and updated all references.
Changes made:
- ✅ Moved
scripts/to.github/scripts/ - ✅ Updated workflow file to reference
.github/scripts/sync-from-release.sh(3 references updated)
Commit: b09806f
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@xgopilot current ci check the latest version is better
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
CI updated to check latest TinyGo version ✅
The CI workflow now dynamically fetches and validates against the latest TinyGo release instead of a hardcoded version.
Changes made:
- Added step to fetch latest TinyGo version from GitHub API using
curlandjq - Removed hardcoded
TINYGO_VERSION: v0.39.0from environment variables - Updated all references to use
${{ steps.tinygo-version.outputs.version }} - CI will now always validate device content against the most recent TinyGo release
Commit: b2d547c
Modified CI workflow to dynamically fetch the latest TinyGo release version from GitHub API instead of using hardcoded version. This ensures the device branch stays in sync with the latest TinyGo official releases automatically. Changes: - Added step to fetch latest release tag via GitHub API - Updated all version references to use dynamic version - Removed hardcoded TINYGO_VERSION environment variable Generated with [codeagent](https://github.com/qbox/codeagent) Co-authored-by: MeteorsLiu <[email protected]>
This reverts commit 48dfd83.
Generated with [codeagent](https://github.com/qbox/codeagent) Co-authored-by: MeteorsLiu <[email protected]>
- Moved scripts/ to .github/scripts/ - Updated workflow to reference .github/scripts/sync-from-release.sh Generated with [codeagent](https://github.com/qbox/codeagent) Co-authored-by: luoliwoshang <[email protected]>
- Remove hardcoded TINYGO_VERSION from env - Add step to fetch latest TinyGo release from GitHub API - Update all references to use dynamically fetched version - CI now always validates against the latest TinyGo release Generated with [codeagent](https://github.com/qbox/codeagent) Co-authored-by: luoliwoshang <[email protected]>
Requested by @luoliwoshang
Overview
This PR establishes the initial device branch infrastructure based on Issue #12 requirements.
Implementation
.github/sync-from-release.sh) to download and extract TinyGo releasessrc/devicefrom TinyGo v0.39.0 todevice/directoryTINYGO_VERSION: v0.39.0Closes #12