[build] Pre-release workflow improvements#16946
Conversation
PR Compliance Guide 🔍Below is a summary of compliance checks for this PR:
Compliance status legend🟢 - Fully Compliant🟡 - Partial Compliant 🔴 - Not Compliant ⚪ - Requires Further Human Verification 🏷️ - Compliance label |
||||||||||||||||||||||||
PR Code Suggestions ✨Explore these optional code suggestions:
|
||||||||||||||||||||
There was a problem hiding this comment.
Pull request overview
This PR enhances the pre-release workflow by adding an approval gate, supporting major.minor version inputs, removing Ruby dependencies, and improving branch management. The changes introduce a reusable approval workflow and normalize version inputs to ensure consistency.
Changes:
- Created new
get-approval.ymlworkflow for Slack notifications and production environment approval - Added version normalization to convert major.minor to major.minor.0 format
- Integrated approval and trunk restriction gates into the release pipeline
- Replaced Ruby installation with git fetch to get latest trunk state
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
.github/workflows/get-approval.yml |
New reusable workflow that sends Slack notifications and requires production environment approval before proceeding |
.github/workflows/pre-release.yml |
Integrates approval workflow, adds trunk restriction, normalizes version input, and removes Ruby dependency |
User description
💥 What does this PR do?
get-approval.ymlworkflow🔧 Implementation Notes
Creates a new reusable
get-approval.ymlworkflow that can be called by other workflows to request approval before proceeding.💡 Additional Considerations
Plan to reuse
get-approval.ymlin other PRs.🔄 Types of changes
PR Type
Enhancement
Description
Create reusable
get-approval.ymlworkflow for approval notificationsAllow pre-release with major.minor versions (auto-normalize to major.minor.0)
Remove Ruby installation requirement from pre-release workflow
Fetch latest trunk before updating files and lock trunk during release
Integrate approval workflow into pre-release pipeline with trunk restriction
Diagram Walkthrough
File Walkthrough
get-approval.yml
New reusable approval notification workflow.github/workflows/get-approval.yml
requests
pre-release.yml
Integrate approval workflow and version normalization.github/workflows/pre-release.yml
get-approvaljob to request Slack notification and approval beforerelease
restrict-trunkjob to lock trunk branch during release preparationgit fetchto get latesttrunk
format
gates