Upgrade Mastodon from 4.3 to 4.7, deploy on new Ubuntu 24.04 VM #681
Labels
Clear labels
monitoring
bug
design
dev environment
docs
duplicate
enhancement
feature
good first issue
idea
invalid
kredits-1
kredits-2
kredits-3
on hold
ops
question
security
ui/ux
wontfix
Infrastructure metrics, alerts, notifications, etc.
service
discourse
Kosmos Community Forums
service
accounts
Kosmos Accounts
service
drone-ci
Kosmos Drone CI
service
email
mail.kosmos.org
service
garage
S3-compatible object storage
service
gitea
Kosmos Gitea
service
ipfs
Kosmos IPFS
service
lightning
Lightning address, lndhub, etc.
service
mastodon
kosmos.social
service
nostr
Relays, Blossom server, etc.
service
postgres
Database cluster
service
remotestorage
Portable data storage for the Web
service
wiki
Kosmos Wiki
service
xmpp
Kosmos Chat
Something is not working
Graphic/visual design
Config, builds, CI, deployment, etc.
Documentation
This issue or pull request already exists
Improving existing functionality
New functionality
Dive in, and start contributing
Something to consider
Not a bug
Small contribution
Medium contribution
Large contribution
Currently not actionable
Manual IT ops activities
Looking for an answer
All your base are belong to us
User interface, process design, etc.
This won't be fixed
release
major
release
minor
release
patch
Milestone
No items
No Milestone
Projects
Clear projects
No projects
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: kosmos/chef#681
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
This took us way longer than expected, because in order to solve all the little upgrade tasks and issues, we refactored the cookbook entirely to make upgrades as well as VM migrations much easier in the future.
The cookbook now allows to install dependencies separately from deploying Mastodon, and you can also pre-build the new version (app dependencies, asset precompilation, etc.) before doing an actual deployment (useful for new VMs). It will also automatically run pre- and post-deploy migrations by itself now. And builds and deployments are now tied to the git revision and can be run again if something fails on the way (without having to reset the repo and having everything tied to the git sync).
Our production Mastodon branch also had to be reworked, because both theme integration as well as the custom URLs for account management have changed upstream. And we added a deploy key to the setup, since the Mastodon repo is now set to private (because it was overrun by AI scrapers before).
Also upgrades libretranslate to the latest stable version.
Tested/running on
mastodon-4. Search is still in the process of indexing posts, because we opted for a full backround re-index instead of moving ES files between machines and ES versions.closes #646
OpenSSH's PEM parser rejects a private key file without a trailing newline ('error in libcrypto').👍