Updating Yeti

Updating Yeti

⚠️
Make sure to look at the release notes for any breaking changes, and adjust steps accordingly!
  1. Backup your database
docker compose run --rm -v $(pwd)/backup:/backup arangodb arangodump --server.endpoint tcp://a
rangodb:8529 --server.database yeti --output-directory /backup --overwrite true
  1. Backup your configuration file
docker cp api:/app/yeti.conf /path/to/backup
  1. Stop the containers
cd yeti-docker/prod && docker compose down
  1. Update
  • git pull will pull in the latest changes to the Docker compose setup (effectively changing your infrastructure, so be mindful of any breaking changes).
  • docker compose pull will pull in the latest images for the Yeti services, this should be safer to update but we still recommend to read the release notes before updating.
git pull
docker compose pull
  1. Run migrations

Sometimes the database schema changes between versions, and you need to run a migration command to sync the database schema and the code that Yeti is running.

To do so:

docker compose run --rm api /docker-entrypoint.sh migrate-arangodb
  1. Start the containers
docker compose up -d
  1. (optional) Restore database
docker compose run --rm -v $(pwd)/backup:/backup arangodb arangorestore --server.endpoint tcp://arangodb:8529 --input-directory /backup --server.database yeti --overwrite true
  1. Restore configuration file
docker ps yeti.conf api:/app/
docker ps yeti.conf tasks:/app/
  1. Restart containers
docker compose restarts tasks api