-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
Objective
Create an automated workflow to monitor TinyGo official releases. When a new version is released, automatically sync to our device and machine branches and create PRs.
Monitoring Rules
Scheduled Checks
- Run automatically once per day
Version Detection
- Fetch the latest stable version from TinyGo official releases API
- Read current version from the latest
[SYNC]commit indevicebranch - Read current version from the latest
[SYNC]commit inmachinebranch - Compare version numbers and trigger sync when new version is found
- Special Case: If no commit matching
[SYNC] Sync {device|machine} from TinyGo vX.Y.Zformat is found in the branch, treat as initial state and trigger sync for any stable version
Version Filter Rules
- ✅ Accept: Stable versions (format:
v{number}.{number}.{number})- Examples:
v0.38.0,v0.39.0,v0.39.1,v1.0.0
- Examples:
- ❌ Reject: Pre-release versions
- Examples:
v0.39.0-rc1,v0.39.0-beta,latest
- Examples:
Version Scope
- Monitor major, minor, and patch versions
Workflow Structure
Job 1: Check for updates
- Fetch latest TinyGo version
- Read current versions from
deviceandmachinebranches - Determine if update is needed
Job 2: Sync device (if new version available)
- Download new TinyGo version (linux-amd64)
- Extract
src/devicedirectory contents - Create new branch
sync-device-vX.Y.Z - Sync files to
device/directory - Commit with message:
[SYNC] Sync device from TinyGo vX.Y.Z - Create PR to
devicebranch
Job 3: Sync machine (if new version available)
- Download new TinyGo version (linux-amd64)
- Extract
src/machinedirectory contents - Create new branch
sync-machine-vX.Y.Z - Sync files to
machine/directory - Commit with message:
[SYNC] Sync machine from TinyGo vX.Y.Z - Create PR to
machinebranch
PR Specifications
Commit Message Format
[SYNC] Sync {device|machine} from TinyGo vX.Y.Z
PR Title Format
[SYNC] Sync {device|machine} from TinyGo vX.Y.Z
PR Body Should Include
- TinyGo version being synced
- File change statistics
- Link to TinyGo release notes
Security Rules
- No auto-merge allowed
- PRs require manual review after creation
- PRs should clearly show which files were modified
Metadata
Metadata
Assignees
Labels
No labels