feat(bootstrap): FELIS_RELEASE 按指定 release 的附件安装,回滚文档不再把人带回最新版
This commit is contained in:
4 files changed
+107
-4
No files matched your search
@@ -110,6 +110,10 @@ Installing from the assets is **[VM-VERIFIED]** on CentOS Stream 9 aarch64 throu
|
||||
`FELIS_ARTIFACT_DIR`: a fresh install and an upgrade over a release that built on the host
|
||||
pulled no image and built nothing, and a rerun imported and uploaded nothing. Downloading them from a
|
||||
release is [SH-TESTED] until a release publishes assets.
|
||||
The release is the newest one unless `FELIS_RELEASE=<tag>` names an earlier one, which
|
||||
installs from that release's assets the same way: the way back after a bad upgrade
|
||||
(troubleshooting §16, "Roll back an upgrade that broke the database"), with the installer
|
||||
read at that tag.
|
||||
|
||||
The installer builds on the host instead, installing Docker for it and stopping Docker once
|
||||
the images are in the registry, when:
|
||||
|
||||
+22
-2
@@ -2036,8 +2036,28 @@ kubectl -n felis scale deployment felis-api felis-operator --replicas=1
|
||||
```
|
||||
|
||||
Do **not** run `felis migrate up` here: the host binary is already the new
|
||||
release and would re-apply the migrations you are rolling back. Re-run the
|
||||
older installer version to bring the host binary back in line.
|
||||
release and would re-apply the migrations you are rolling back. Bring the host
|
||||
back in line by installing the earlier release from its own assets, with the
|
||||
installer read at that same tag (`v1.2.3` here):
|
||||
|
||||
```
|
||||
curl -fsSL https://raw.githubusercontent.com/FelisMC/Felis/v1.2.3/deploy/bootstrap.sh \
|
||||
| sudo FELIS_RELEASE=v1.2.3 bash
|
||||
```
|
||||
|
||||
`FELIS_RELEASE` makes the installer install that release where it would
|
||||
otherwise resolve the newest one, which would install the new release again and
|
||||
re-apply its migrations. It is refused together with `FELIS_REF`,
|
||||
`FELIS_ARTIFACT_DIR`, `FELIS_SKIP_FETCH` or `FELIS_VERSION_BOOTSTRAP=dev`, and
|
||||
an unpublished tag stops the install before anything changes. [SH-TESTED]
|
||||
|
||||
- An installer older than `FELIS_RELEASE` ignores it and installs the newest.
|
||||
`curl -fsSL <that URL> | grep -c FELIS_RELEASE` prints `0` for one of those;
|
||||
run it with `FELIS_REF=v1.2.3` instead, which builds that tag from source
|
||||
(slower, and it needs the build resources of §15c).
|
||||
- While the repository is private, read the installer through the README's
|
||||
token'd form with `?ref=v1.2.3` after `contents/deploy/bootstrap.sh`, and run
|
||||
it as `sudo -E FELIS_RELEASE=v1.2.3 bash`.
|
||||
|
||||
### Whole-host disaster recovery: what comes back, and from where
|
||||
|
||||
|
||||
Reference in new issue
Block a user