mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-07-09 16:00:59 +00:00
Prepare v6.0.0 stable release
This commit is contained in:
parent
4ef6caaa9d
commit
d5f144f8f1
8 changed files with 20 additions and 19 deletions
2
VERSION
2
VERSION
|
|
@ -1 +1 @@
|
|||
6.0.0-rc.6
|
||||
6.0.0
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ version: '3.8'
|
|||
|
||||
services:
|
||||
pulse:
|
||||
image: ${PULSE_IMAGE:-rcourtman/pulse:6.0.0-rc.6}
|
||||
image: ${PULSE_IMAGE:-rcourtman/pulse:6.0.0}
|
||||
container_name: pulse
|
||||
restart: unless-stopped
|
||||
logging:
|
||||
|
|
|
|||
|
|
@ -7,12 +7,6 @@ For current stable release notes and rollout references, see:
|
|||
- `docs/releases/RELEASE_NOTES_v6.md`
|
||||
- `docs/releases/V6_CHANGELOG.md`
|
||||
|
||||
For the current v6 prerelease packet, see:
|
||||
|
||||
- `docs/releases/RELEASE_NOTES_v6_RC6_DRAFT.md`
|
||||
- `docs/releases/V6_CHANGELOG_RC6_DRAFT.md`
|
||||
- `docs/releases/V6_RC6_OPERATOR_SUPPORT_PACK_DRAFT.md`
|
||||
|
||||
## Before You Upgrade
|
||||
|
||||
- Create an encrypted config backup: **Settings → System → Recovery → Create Backup** (older versions labeled this **Backups**)
|
||||
|
|
|
|||
|
|
@ -16,11 +16,10 @@
|
|||
`pulse/v6-release`.
|
||||
5. The active control-plane target is still `v6-product-lane-expansion`, not
|
||||
`v6-ga-promotion`.
|
||||
6. The active local `pulse/v6-release` branch currently reports `VERSION=6.0.0-rc.6`, so the
|
||||
working line is still prerelease and there is not yet a governed local stable
|
||||
`6.0.0` candidate.
|
||||
6. The active local `pulse/v6-release` branch currently reports `VERSION=6.0.0`, so a
|
||||
local GA candidate exists on the governed stable line.
|
||||
7. There is still no governed `Prerelease-to-GA Rehearsal Record` proving a successful
|
||||
non-publish `Release Dry Run` for the eventual stable `6.0.0` candidate.
|
||||
non-publish `Release Dry Run` for the current `6.0.0` candidate.
|
||||
8. `docs/releases/RELEASE_NOTES_v6.md` and
|
||||
`docs/release-control/v6/internal/V5_MAINTENANCE_SUPPORT_POLICY.md` now carry the
|
||||
currently proposed exact dates for the eventual GA notice:
|
||||
|
|
@ -42,9 +41,8 @@
|
|||
## Why The Gate Cannot Be Cleared Yet
|
||||
|
||||
The blocker is no longer missing governance text. The remaining problem is that
|
||||
the control plane still holds v6 on the pre-GA prerelease line, the working
|
||||
version is still prerelease (`6.0.0-rc.6`), and there is still no exercised
|
||||
`Release Dry Run` record proving the eventual stable `6.0.0`
|
||||
the control plane still holds v6 on the pre-GA prerelease line, and there is
|
||||
still no exercised `Release Dry Run` record proving the exact `6.0.0`
|
||||
candidate is ready for GA-style promotion. Until that rehearsal exists, stable
|
||||
users would still be the first real cohort for the final promotion path.
|
||||
|
||||
|
|
@ -52,9 +50,8 @@ users would still be the first real cohort for the final promotion path.
|
|||
|
||||
1. Promote the active target from `v6-product-lane-expansion` to
|
||||
`v6-ga-promotion` only when that change is actually intended.
|
||||
2. Push the governed `pulse/v6-release` branch state that is intended to become the
|
||||
stable `6.0.0` candidate, including the eventual `VERSION=6.0.0`
|
||||
change and release-control records, to `origin/pulse/v6-release`.
|
||||
2. Push the governed `pulse/v6-release` branch state, including the current
|
||||
`VERSION=6.0.0` candidate and release-control records, to `origin/pulse/v6-release`.
|
||||
3. Run `Release Dry Run` from `pulse/v6-release` with:
|
||||
- `version=6.0.0`
|
||||
- `promoted_from_tag=v6.0.0-rc.6`
|
||||
|
|
|
|||
|
|
@ -517,6 +517,9 @@ TLS floor in the dynamic config.
|
|||
2026-06-03 cutover candidate, that packet is
|
||||
`promoted_from_tag=v6.0.0-rc.6`, `rollback_version=v5.1.34`,
|
||||
`ga_date=2026-06-03`, and `v5_eos_date=2026-09-01`.
|
||||
That stable cut must also move the repo-root Docker compose default and
|
||||
`scripts/install-docker.sh` fallback from the final RC image tag to the
|
||||
stable `6.0.0` image tag in the same commit as `VERSION=6.0.0`.
|
||||
7. Preserve release-matched installer and Helm operator documentation links through `scripts/install.sh`, `.github/workflows/helm-pages.yml`, `.github/workflows/publish-helm-chart.yml`, and the chart metadata itself so deployment guidance and packaged chart metadata do not drift back to branch-tip `main` docs when a release line or promoted tag already exists.
|
||||
The same governed Helm boundary also owns `deploy/helm/pulse/` itself:
|
||||
chart metadata, default values, templates, and generated chart docs must
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ set -euo pipefail
|
|||
|
||||
SCRIPT_DIR="$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)"
|
||||
DOCKER_IMAGE_REPO="${DOCKER_IMAGE_REPO:-rcourtman/pulse}"
|
||||
CANONICAL_DEFAULT_PULSE_VERSION="6.0.0-rc.6"
|
||||
CANONICAL_DEFAULT_PULSE_VERSION="6.0.0"
|
||||
|
||||
resolve_default_pulse_version() {
|
||||
if [ -n "${PULSE_IMAGE_VERSION:-}" ]; then
|
||||
|
|
|
|||
|
|
@ -92,6 +92,9 @@ func TestRepoDockerComposeDefaultPinsCurrentVersion(t *testing.T) {
|
|||
if !strings.Contains(text, "image: ${PULSE_IMAGE:-rcourtman/pulse:"+version+"}") {
|
||||
t.Fatalf("repo docker-compose.yml must pin the current release version:\n%s", text)
|
||||
}
|
||||
if strings.Contains(text, "6.0.0-rc.") {
|
||||
t.Fatalf("stable repo docker-compose.yml must not keep a prerelease image default:\n%s", text)
|
||||
}
|
||||
if strings.Contains(text, ":latest") {
|
||||
t.Fatalf("repo docker-compose.yml must not default to a floating latest tag:\n%s", text)
|
||||
}
|
||||
|
|
@ -108,6 +111,9 @@ func TestInstallDockerScriptFallbackPinsCurrentVersion(t *testing.T) {
|
|||
if !strings.Contains(text, `CANONICAL_DEFAULT_PULSE_VERSION="`+version+`"`) {
|
||||
t.Fatalf("install-docker.sh fallback must pin the current release version:\n%s", text)
|
||||
}
|
||||
if strings.Contains(text, `CANONICAL_DEFAULT_PULSE_VERSION="6.0.0-rc.`) {
|
||||
t.Fatalf("stable install-docker.sh fallback must not keep a prerelease default:\n%s", text)
|
||||
}
|
||||
}
|
||||
|
||||
func runInstallDockerScript(t *testing.T, workDir string, envVars ...string) {
|
||||
|
|
|
|||
|
|
@ -86,6 +86,7 @@ class ResolveReleasePromotionTest(unittest.TestCase):
|
|||
)
|
||||
|
||||
def test_current_stable_v6_packet_resolves_with_publish_dates(self) -> None:
|
||||
self.assertEqual((REPO_ROOT / "VERSION").read_text(encoding="utf-8").strip(), "6.0.0")
|
||||
release_notes = (REPO_ROOT / "docs/releases/RELEASE_NOTES_v6.md").read_text(encoding="utf-8")
|
||||
metadata = resolver.resolve_metadata(
|
||||
version="6.0.0",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue