Add nightly prereleases at midnight Eastern, skipping unchanged commits
This commit is contained in:
1 parent
4ac803ab52
commit
31dadcee63
3 files changed
+84
-1
No files matched your search
@@ -6,6 +6,27 @@ GitHub Release. Publishing that verified draft is a separate operation. Pushing
|
||||
pushing a tag does not start the release workflow. There is no automatic commit-message-based
|
||||
version bump and no patch release for every merge.
|
||||
|
||||
## Nightly prereleases
|
||||
|
||||
`release.yml` also runs at midnight in `America/New_York` (Eastern time, following daylight
|
||||
saving time). GitHub may start scheduled runs later when its runners are busy.
|
||||
Before building, it compares the exact scheduled `main` commit with the tag of the most
|
||||
recently published release, including prereleases. If the commits match, all packaging and
|
||||
publication jobs are skipped: no new version, tag, or release is created. Drafts do not count
|
||||
as published releases, so a failed build or publication can be retried the following night.
|
||||
|
||||
Changed commits use the existing package build and validation jobs. Only after all jobs
|
||||
succeed, the workflow stages the assets in a draft and publishes a prerelease named
|
||||
`v<workspace-version>-nightly.<YYYYMMDD>.<run-number>.<run-attempt>` with checksums and generated
|
||||
notes. Any existing workspace prerelease suffix is replaced by the nightly suffix. Dates
|
||||
use Eastern time; package versions are overridden without changing Cargo.toml or Cargo.lock,
|
||||
so the binaries' embedded Cargo version remains the workspace version. Nightlies do not
|
||||
replace the latest stable release or advance the `release` branch. The normal deliberate
|
||||
release process below continues to create drafts for separate verification and publication.
|
||||
|
||||
Nightly publication uses `GITHUB_TOKEN`, so it does not trigger the downstream Flatpak Pages
|
||||
deployment. The stable Flatpak repository is not automatically updated with nightly builds.
|
||||
|
||||
## Choose and prepare the version
|
||||
|
||||
1. Fetch `origin` and its tags. Inspect the previous published release and the changes since
|
||||
|
||||
Reference in new issue
Block a user