mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-07-09 16:00:59 +00:00
Prepare v6.0.4-rc.2 support build
Package the audit timestamp compatibility fix for private Pro support validation.
This commit is contained in:
parent
0f1211d510
commit
44af57b8fc
9 changed files with 39 additions and 15 deletions
2
VERSION
2
VERSION
|
|
@ -1 +1 @@
|
|||
6.0.4-rc.1
|
||||
6.0.4-rc.2
|
||||
|
|
|
|||
|
|
@ -2,9 +2,9 @@ apiVersion: v2
|
|||
name: pulse
|
||||
description: Helm chart for deploying the Pulse hub and optional Docker monitoring agent.
|
||||
type: application
|
||||
version: 6.0.4-rc.1
|
||||
appVersion: "6.0.4-rc.1"
|
||||
icon: https://raw.githubusercontent.com/rcourtman/Pulse/v6.0.4-rc.1/docs/images/pulse-logo.svg
|
||||
version: 6.0.4-rc.2
|
||||
appVersion: "6.0.4-rc.2"
|
||||
icon: https://raw.githubusercontent.com/rcourtman/Pulse/v6.0.4-rc.2/docs/images/pulse-logo.svg
|
||||
keywords:
|
||||
- monitoring
|
||||
- proxmox
|
||||
|
|
@ -32,7 +32,7 @@ annotations:
|
|||
description: Smoke tests with kind cluster deployment
|
||||
artifacthub.io/links: |
|
||||
- name: Documentation
|
||||
url: https://github.com/rcourtman/Pulse/blob/v6.0.4-rc.1/docs/KUBERNETES.md
|
||||
url: https://github.com/rcourtman/Pulse/blob/v6.0.4-rc.2/docs/KUBERNETES.md
|
||||
- name: Support
|
||||
url: https://github.com/rcourtman/Pulse/discussions
|
||||
artifacthub.io/maintainers: |
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# pulse
|
||||
|
||||
  
|
||||
  
|
||||
|
||||
Helm chart for deploying the Pulse hub and optional Docker monitoring agent.
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ version: '3.8'
|
|||
|
||||
services:
|
||||
pulse:
|
||||
image: ${PULSE_IMAGE:-rcourtman/pulse:6.0.4-rc.1}
|
||||
image: ${PULSE_IMAGE:-rcourtman/pulse:6.0.4-rc.2}
|
||||
container_name: pulse
|
||||
restart: unless-stopped
|
||||
logging:
|
||||
|
|
|
|||
|
|
@ -804,9 +804,9 @@ TLS floor in the dynamic config.
|
|||
|
||||
## Current State
|
||||
|
||||
The active support prerelease `v6.0.4-rc.1` cut sets the repo-root `VERSION`,
|
||||
The active support prerelease `v6.0.4-rc.2` cut sets the repo-root `VERSION`,
|
||||
repo-root `docker-compose.yml` image default, `scripts/install-docker.sh`
|
||||
fallback, and Helm chart release metadata to the same `6.0.4-rc.1` release
|
||||
fallback, and Helm chart release metadata to the same `6.0.4-rc.2` release
|
||||
version. This support prerelease uses the private Pro support image path with a
|
||||
stable rollback reference `v6.0.3`, no `latest` movement, no stable semver tag
|
||||
movement, no R2 manifest promotion, no broker download metadata promotion, and
|
||||
|
|
@ -863,8 +863,8 @@ compose image default, standalone installer fallback constant, and packaged
|
|||
Helm metadata. A draft release workflow failure caused by stale image or chart
|
||||
pins is a release-packet blocker until the defaults, tests, and evidence
|
||||
record are refreshed from the new branch head.
|
||||
For the active support prerelease `v6.0.4-rc.1` cut, the repo-root compose
|
||||
default and `scripts/install-docker.sh` fallback must both pin `6.0.4-rc.1`
|
||||
For the active support prerelease `v6.0.4-rc.2` cut, the repo-root compose
|
||||
default and `scripts/install-docker.sh` fallback must both pin `6.0.4-rc.2`
|
||||
until the next governed stable cut moves them forward. The stable promotion
|
||||
guard remains in force by rejecting leftover `-rc.` defaults when the governed
|
||||
`VERSION` is a stable release.
|
||||
|
|
|
|||
|
|
@ -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.4-rc.1"
|
||||
CANONICAL_DEFAULT_PULSE_VERSION="6.0.4-rc.2"
|
||||
|
||||
resolve_default_pulse_version() {
|
||||
if [ -n "${PULSE_IMAGE_VERSION:-}" ]; then
|
||||
|
|
|
|||
|
|
@ -734,6 +734,9 @@ func TestDeploymentDefaultsPinVersionedImagesAndHelmDocsChecksum(t *testing.T) {
|
|||
if previous, ok := previousStablePatchVersion(version); ok && strings.Contains(chart, "v"+previous) {
|
||||
t.Fatalf("Helm Chart.yaml must not retain the previous stable patch tag v%s:\n%s", previous, chart)
|
||||
}
|
||||
if previous, ok := previousPrereleaseVersion(version); ok && strings.Contains(chart, "v"+previous) {
|
||||
t.Fatalf("Helm Chart.yaml must not retain the previous prerelease tag v%s:\n%s", previous, chart)
|
||||
}
|
||||
|
||||
chartReadmeBytes, err := os.ReadFile(repoFile("deploy", "helm", "pulse", "README.md"))
|
||||
if err != nil {
|
||||
|
|
@ -753,6 +756,9 @@ func TestDeploymentDefaultsPinVersionedImagesAndHelmDocsChecksum(t *testing.T) {
|
|||
if previous, ok := previousStablePatchVersion(version); ok && strings.Contains(chartReadme, previous) {
|
||||
t.Fatalf("Helm README.md must not retain the previous stable patch version %s:\n%s", previous, chartReadme)
|
||||
}
|
||||
if previous, ok := previousPrereleaseVersion(version); ok && strings.Contains(chartReadme, previous) {
|
||||
t.Fatalf("Helm README.md must not retain the previous prerelease version %s:\n%s", previous, chartReadme)
|
||||
}
|
||||
|
||||
helmPagesBytes, err := os.ReadFile(repoFile(".github", "workflows", "helm-pages.yml"))
|
||||
if err != nil {
|
||||
|
|
|
|||
|
|
@ -53,6 +53,18 @@ func previousStableForPrereleaseVersion(version string) (string, bool) {
|
|||
return previousStablePatchVersion(base)
|
||||
}
|
||||
|
||||
func previousPrereleaseVersion(version string) (string, bool) {
|
||||
base, suffix, ok := strings.Cut(version, "-rc.")
|
||||
if !ok {
|
||||
return "", false
|
||||
}
|
||||
rc, err := strconv.Atoi(suffix)
|
||||
if err != nil || rc <= 1 {
|
||||
return "", false
|
||||
}
|
||||
return fmt.Sprintf("%s-rc.%d", base, rc-1), true
|
||||
}
|
||||
|
||||
func TestInstallDockerScriptUsesConfiguredImageRepoDefault(t *testing.T) {
|
||||
workDir := t.TempDir()
|
||||
version := currentReleaseVersion(t)
|
||||
|
|
@ -136,6 +148,9 @@ func TestRepoDockerComposeDefaultPinsCurrentVersion(t *testing.T) {
|
|||
if previous, ok := previousStablePatchVersion(version); ok && strings.Contains(text, "rcourtman/pulse:"+previous) {
|
||||
t.Fatalf("repo docker-compose.yml must not retain the previous stable patch image tag %s:\n%s", previous, text)
|
||||
}
|
||||
if previous, ok := previousPrereleaseVersion(version); ok && strings.Contains(text, "rcourtman/pulse:"+previous) {
|
||||
t.Fatalf("repo docker-compose.yml must not retain the previous prerelease image tag %s:\n%s", previous, text)
|
||||
}
|
||||
if strings.Contains(text, ":latest") {
|
||||
t.Fatalf("repo docker-compose.yml must not default to a floating latest tag:\n%s", text)
|
||||
}
|
||||
|
|
@ -164,6 +179,9 @@ func TestInstallDockerScriptFallbackPinsCurrentVersion(t *testing.T) {
|
|||
if previous, ok := previousStablePatchVersion(version); ok && strings.Contains(text, `CANONICAL_DEFAULT_PULSE_VERSION="`+previous+`"`) {
|
||||
t.Fatalf("install-docker.sh fallback must not retain the previous stable patch version %s:\n%s", previous, text)
|
||||
}
|
||||
if previous, ok := previousPrereleaseVersion(version); ok && strings.Contains(text, `CANONICAL_DEFAULT_PULSE_VERSION="`+previous+`"`) {
|
||||
t.Fatalf("install-docker.sh fallback must not retain the previous prerelease version %s:\n%s", previous, text)
|
||||
}
|
||||
}
|
||||
|
||||
func TestInstallDockerProofTracksStablePatchReleaseContract(t *testing.T) {
|
||||
|
|
|
|||
|
|
@ -63,10 +63,10 @@ class ValidateArtifactReleaseLineTest(unittest.TestCase):
|
|||
|
||||
def test_prerelease_support_tag_does_not_require_stable_lineage(self) -> None:
|
||||
result = self.validate(
|
||||
tag="v6.0.4-rc.1",
|
||||
existing_tags={"v6.0.4-rc.1"},
|
||||
tag="v6.0.4-rc.2",
|
||||
existing_tags={"v6.0.4-rc.2"},
|
||||
commits={
|
||||
"v6.0.4-rc.1": "support-rc",
|
||||
"v6.0.4-rc.2": "support-rc",
|
||||
"origin/pulse/v6-release": "branch",
|
||||
},
|
||||
ancestors={("support-rc", "branch")},
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue