-
Notifications
You must be signed in to change notification settings - Fork 0
Add comprehensive version configuration with metadata to deployment workflow #100
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
Conversation
Co-authored-by: saebyn <185030+saebyn@users.noreply.github.com>
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.
This is the format expected for the config/version.json:
{
"version": "0.4.0",
"description": "Current frontend version configuration",
"lastUpdated": "2024-01-01T00:00:00Z",
"rollbackVersion": "0.3.0",
"metadata": {
"deployedBy": "system",
"environment": "production"
}
}
@copilot can you update this PR to match? |
- Changed version.json from simple {"currentVersion":"v1.2.3"} to comprehensive format - Includes version, description, lastUpdated timestamp, rollbackVersion, and metadata - Updated GitHub Actions workflow to generate new format with deployment info - Updated README.md documentation to reflect new structure Co-authored-by: saebyn <185030+saebyn@users.noreply.github.com>
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.
Pull Request Overview
This PR implements a dynamic version management system for frontend deployments by adding comprehensive version configuration metadata. The changes enable instant version switching and rollback capabilities without requiring infrastructure redeployment.
Key changes:
- Added automated version configuration file generation to the deployment workflow
- Created comprehensive documentation for the new version management system
- Implemented S3-based version tracking with deployment metadata
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
File | Description |
---|---|
.github/workflows/publish.yml |
Added two new steps to generate and upload version configuration JSON with deployment metadata |
README.md |
Added comprehensive documentation covering version management workflow, deployment procedures, and rollback instructions |
This PR implements dynamic version switching by publishing comprehensive version info to S3 after each frontend deployment, enabling instant version switching without infrastructure changes.
Changes Made
GitHub Actions Workflow (
publish.yml
)Added two new steps to the deployment workflow that run after successful S3 upload:
config/version.json
file with:s3://bucket/config/version.json
at the S3 bucket rootThe version file format is:
Documentation (README.md)
Added comprehensive documentation covering:
Benefits
Immediate:
Future enablement:
Example Usage
Deploy new version:
Run the "Publish to s3" workflow with version
v1.2.4
→ automatically updatesconfig/version.json
Rollback to previous version:
Manually update S3 file: change
"version": "1.2.4"
to"version": "1.2.3"
→ instant rollbackThe implementation is minimal and surgical, adding only the necessary functionality without modifying existing deployment logic.
Fixes #99.
💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.