Conversation
|
|
There was a problem hiding this comment.
Pull request overview
This PR refactors the build/release pipeline to treat “nightly” as a build type within the main release workflow, centralizes version derivation/validation, and extracts repeated CI logic into reusable scripts to improve readability and consistency.
Changes:
- Replaces the standalone nightly workflow with scheduled/manual build support inside
release.yml, including draft-release creation and finalization gating. - Introduces CI shell scripts for versioning, artifact publishing to S3, and message formatting.
- Updates platform build workflows and the Makefile to consistently apply build-type suffixing and adds dependency caching.
Reviewed changes
Copilot reviewed 11 out of 11 changed files in this pull request and generated 9 comments.
Show a summary per file
| File | Description |
|---|---|
scripts/ci/version.sh |
Adds semver validation and next-version generation for nightly/internal/beta builds. |
scripts/ci/publish-to-s3.sh |
Uploads platform artifacts to S3 using versioned + latest paths. |
scripts/ci/format.sh |
Generates release notes, job summary output, and Slack payload text. |
Makefile |
Adds IOS_INSTALLER naming to include build type suffix for non-production builds. |
.github/workflows/release.yml |
Consolidates release logic (tag/schedule/dispatch), creates draft releases, uploads to S3/GitHub Release, updates appcast, publishes to stores, and finalizes releases. |
.github/workflows/nightly.yml |
Removes the standalone nightly workflow. |
.github/workflows/build-android.yml |
Adds gomobile caching and aligns BUILD_TYPE/INSTALLER_NAME usage. |
.github/workflows/build-ios.yml |
Adds Go cache and gomobile caching; aligns naming/env usage. |
.github/workflows/build-linux.yml |
Adds Go/Flutter caching and aligns naming/env usage. |
.github/workflows/build-macos.yml |
Adds Go cache and gomobile caching; aligns naming/env usage. |
.github/workflows/build-windows.yml |
Adds Go/Flutter caching and aligns artifact naming with build type. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
c907f89 to
7c30e9f
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 12 out of 12 changed files in this pull request and generated 11 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 12 out of 12 changed files in this pull request and generated 4 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
Maybe a couple issues:
|
@atavism, good catches, both addressed by f3fb5ba Let me know if you think this set-metadata enforcement validation here provides adequate safety guarantees to be worth the convenience of consolidation. |
why
There were inconsistencies and duplicated code with: slack messages, s3 links, version naming and validation, artifact uploads, and PR release lifecycles.
This attempts to consolidate all of that into one workflow while preserving safety for production builds only triggering on properly formatted pushed tags (while nighty builds continue to be produced on a schedule using all the same core build logic).
what