Repository navigation
ci: read the Appwrite version from appVersion everywhere - #31
Merged
Merged
Conversation
- The install workflow reads appVersion once ("Versions under test") for
the DNS-check image and the post-upgrade version check, which hardcoded
or re-parsed it.
- The upgrade test starts from the newest published chart, looked up from
the releases (created only after the chart is in the registry), instead
of a pinned upgrade-from that each Appwrite upgrade had to bump.
- hack/check-versions.sh (make check-versions, in make test and the Chart
metadata job) fails when the docs, examples, values, templates, the icon
URL or the workflows name an Appwrite version other than appVersion.
"X.Y.Z and later" and "X.Y.Z's" are history; so are CHANGELOG.md, the
version notes and Chart.yaml's annotations.
- It found README's "upgrade from Appwrite 2.2.0", which never shipped, and
upgrading.md's pinned CI and downgrade-error versions; those now read
without a version. The placeholder-secret error says "2.6.2 and later".
- The drift check opens (or comments on) an issue when it fails itself:
its 2026-10-26 failure was only visible in the Actions tab.
- CONTRIBUTING's upgrade step 5 is make check-versions; no workflow edits.
🟢 Tier S · Ready to mergeThe pull request makes Latest changes: The latest commit changes the upgrade-test lookup to exclude draft, prerelease, and current-commit releases before selecting the chart version to upgrade from.
📂 Walkthrough · 10
✅ Fixed since the last review · 1
Reviewed the commits since |
On a release push to main, the release workflow can publish the new chart before this lookup runs, and the upgrade leg would then upgrade that chart to itself. Releases target GITHUB_SHA, so skip the one whose tag points at the checkout; between releases, the published chart of the current version is still the one to upgrade from. From review on #31.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Stacked on #30. After that merges, this PR will target
main.Upgrading Appwrite meant editing version literals in the workflows by hand, and nothing caught a doc that still named the old version. After this PR,
appVersioninChart.yamlis the only place the pipelines get the version from:appVersiononce, for the DNS-check image and the post-upgrade version check. The upgrade leg now upgrades from the newest published chart, found from the GitHub releases (the release workflow creates those only after the push to GHCR), so the pinnedupgrade-fromthat every upgrade had to bump is gone. The resolved version appears as a run notice.make check-versions(hack/check-versions.sh, part ofmake testand the Chart metadata job) fails when docs, examples, values, templates, the icon URL or workflows name an Appwrite version other thanappVersion. Lines written as history ("2.4.0 and later", "2.4.0's") are allowed, as areCHANGELOG.md, the version notes andChart.yaml's annotations.README.mdsaying CI upgrades "from Appwrite 2.2.0", a version the chart never shipped, plus the pinned versions inupgrading.md. Those lines no longer name a version.make check-versions, with no workflow edits.Labelled
skip-changelog: the only chart change is the wording of the placeholder-secret error from #30, and that error is new in the same release.Testing
make testpasses, including the new check. Running it under macOS's bash 3.2 also works.Chart.yaml:9.make lint-actionspasses (actionlint, shellcheck, zizmor).2.1.0locally, andhelm show chart oci://ghcr.io/appwrite/charts/appwrite --version 2.1.0finds it.