-
Notifications
You must be signed in to change notification settings - Fork 23
Open
Description
Overview
Establish an automated release workflow for the Arc repository suite that handles coordinated releases across all Arc-related repositories.
Affected Repositories
- https://github.com/eclipse-lmos/arc
- https://github.com/eclipse-lmos/arc-view
- https://github.com/eclipse-lmos/arc-spring-init
- https://github.com/eclipse-lmos/lmos-sample-agents
Release Requirements
-
Coordinated Release Process
- All repositories must be released simultaneously
- Consistent version numbers across all repositories
- Automated GitHub release creation for each repository
-
Release Types and Versioning
a) Milestone Releases (e.g., 0.1.0.M1, 0.1.0.M2):
- Triggered by pushing a specific tag to the repositories
- No version bump in main branch after milestone releases
- Format: X.Y.Z.MN (where MN is the milestone number)
b) GA Releases (e.g., 0.1.0, 0.2.0):
- After successful release:
- Main branch versions should be bumped to next minor SNAPSHOT version
- Example: After 0.1.0 release → bump to 0.2.0-SNAPSHOT
-
Release Automation Requirements
- Create GitHub release tags across all repositories
- Automatically generate release notes using GitHub's features
- Aggregate changes from all 4 repositories into the arc-repo release notes description
- Include merged PRs, resolved issues, and other relevant changes
- Implement version management
- Handle milestone versioning
- Handle GA versioning
- Manage SNAPSHOT versions
Technical Implementation
-
Release Trigger Mechanism
# Example trigger git tag -a release-0.1.0.M1 -m "0.1.0 Milestone 1 Release" git push origin release-0.1.0.M1 -
Workflow Steps
- Verify all repositories are in a releasable state (latest head commit)
- Create release tags simultaneously across all repositories
- Generate consolidated release notes into the arc repo release description
- Create GitHub releases with artifacts
- For GA releases only: bump versions in main branches
-
Version Management
- Milestone releases: X.Y.Z.MN
- GA releases: X.Y.Z
- Development versions: X.Y.Z-SNAPSHOT
Success Criteria
- Single trigger creates releases across all repositories
- Release notes automatically aggregated from all repositories
- Proper version management for both milestone and GA releases
- All artifacts properly tagged and released in GitHub
- Main branch versions correctly managed post-GA releases
Metadata
Metadata
Assignees
Labels
No labels