Potato v0.1.2 mix potato.upgrade View Source

Prepare an upgrade release from an existing release.

Command line options

  • --from - Specify the version to upgrade from.

Notes

Generates a minimal tar file capable of upgrading from the specified version to the current version. This task expects to be able to find both releases, and all their respective applications, along with any related appups.

potato.upgrade requires:

  • A full release of the previous version.
  • A full release of the current version.

One way to do this is to leverage the existing mix release and mix potato.full tasks, e.g:

rm -fr _build
git checkout previous
MIX_ENV=prod mix do release, potato.full
...
git checkout current
MIX_ENV=prod mix do release, potato.full, potato.upgrade --from previous

The upgrade task will generate a relup file from the appup descriptions and place it into the releases/current subfolder for use during installation.

Additionally, it will add to the tarfile only those applications that have changed since the previous release.

The generated upgrade tar should be unpacked and installed using :release_handler.unpack_release/1 and :release_handler.install_release/1