How to Switch Release Branch
If you're self hosted: Talkyard has different release branches: (inspired by Kubernetes)
tyse-v0-regularwhich gets new features and bug fixes regularly.
- Branches with names like:
tyse-v0.2022.14). These are medium-term-stable branches; they get security fixes only.
You can switch from any of the
tyse-v0.YYYY.NN to the
tyse-v0-regular branch at any time. But you can switch to a
tyse-v0.YYYY.NN branch only if it's the same version or newer — that is, if the version number in the branch name (i.e.
v0.YYYY.NN for example
v0.2022.14) is the same or higher than the version you're using (see step 2 below).
If you want to use medium term stable branches only, then, once in a while you need to switch to more recent such branches, because each such branch is maintained only for a bit more than half a year. For example, switching from
tyse-v0.2022.14 (it's generally fine to jump many versions, e.g. from
...14 in this example).
Here follows detailed instructions about how to switch release branch:
Switching to the Regular branch
If you're using a
tyse-v0.YYYY.NN branch and want to go back to using the regular release branch, do steps 1, 3 and 4 below (in the next section), but in step 3, type
tyse-v0-regular instead, as the branch you want to use:
RELEASE_CHANNEL=tyse-v0-regular. And then do step 4, i.e. run the
Switching to a Medium Term Stable branch
If you're using
tyse-v0-regular (or an old
tyse-v0.YYYY.NN branch), here's how to switch to a
1. Log in to the Talkyard server
Log in and go to the installation directory:
sudo -i cd /opt/talkyard
2. Check the version number
Verify that the
tyse-v0.YYYY.NN branch you'd like to use, is not old — find out what version you're using now:
grep VERSION_TAG .env
bash# grep VERSION_TAG .env VERSION_TAG=v0.2022.13-6d49a6e33
Here, the version currently in use is
-6d49a6e33 is a Git revision which you can ignore). You cannot change to a release branch with a lower version, for example, don't try to change to
tyse-v0.2022.12 — because the more recent version you're using (
v0.2022.13 in this example) might have made changes to the database that older versions of Talkyard don't understand.
3. Edit config file
.env file mentioned just above:
vi .env, and set the
RELEASE_CHANNEL=... line to the branch you want to use, e.g.:
if you want to use the
tyse-v0.2022.14 medium term stable branch. (The config value
RELEASE_CHANNEL should be called
RELEASE_BRANCH instead, because it's actually a Git branch, not the same as a "channel" in Kubernetes terminology — this'll get fixed in the future.)
4. Download and restart
Lastly, do this, to download and start the latest version of Talkyard in the new release branch:
./scripts/upgrade-if-needed.sh | tee -a talkyard-maint.log
This can take long, if the new Talkyard version changes the database structure and you have lots of data. — Just before making any such changes, Talkyard takes an extra backup. So, if anything goes wrong, you can, worst case, restore the backup. See How to Rollback a Database Upgrade.
After the steps above, you will be using the new release branch (
tyse-v0.2022.14 in this example), and Talkyard will fetch security upgrades from that branch, e.g. automatically upgrade itself to
If you're using medium term stable branches, then, but not yet implemented:
- When there's just 3 months left, until your stable branch becomes unmaintained, your Talkyard server will email you about this and show notices for admins when they visit the Talkyard forum, letting you know that it's time to switch to a newer medium-term-stable branch (so you continue getting new features and security fixes).
- By default Talkyard will upgrade automatically to a more recent branch, once your current branch is about to become unmaintained (if you didn't upgrade yourself).
Feel free to ask questions below (or in new topics).
- 0 replies
- @KajMagnuspinned this topic 2022-10-01 18:50:12.926Z.