Skip to content

Commit

Permalink
Add patch rollback page (#282)
Browse files Browse the repository at this point in the history
* Add patch rollback page

* add image alt text

* spellcheck

* explain the "out of patches" case
  • Loading branch information
bryanoltman authored Aug 9, 2024
1 parent bffc4ea commit bd9833a
Showing 1 changed file with 49 additions and 0 deletions.
49 changes: 49 additions & 0 deletions src/content/docs/code-push/rollback.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
---
title: Roll back a Patch
description: Learn how to roll back a patch in Shorebird.
sidebar:
label: Rollback
order: 5
---

If you discover that a live patch has a bug, Shorebird supports patch roll back.
When a patch is rolled back, it is remotely uninstalled from end users' devices
and replaced by either the previous patch or the base release if no previous
patch is available.

## How to roll back a patch

In the [Shorebird Console](https://console.shorebird.dev/), navigate to the
release that contains the patch you want to roll back. On the right side of the
patch row, click the "more" icon (three vertical dots) and select "Rollback":

![The Shorebird Console showing a "roll back patch" button](https://github.com/user-attachments/assets/941fdc46-d0f3-463f-835f-5c8eb8a02e83)

## What happens when a patch is rolled back?

Imagine we have a release with three patches:

![The Shorebird Console showing three patches, with patch 3 as the active patch](https://github.com/user-attachments/assets/ee5d4e2b-eca3-4318-99e9-038c0134bfff)

When a user downloads this release from the store, Shorebird will see that patch
3 is the latest available patch and download it.

If we discover that there is a problem with patch 3, we can roll it back. The
Console will look like this after a rollback:

![The Shorebird Console showing three patches, with patch 3 rolled back and patch 2 as the active patch](https://github.com/user-attachments/assets/7ba4ff2c-5823-4c9f-a260-68ca6ce1e10a)

Users who download the app from the store will now get patch 2 instead of patch 3. Users who already had patch 3 installed will be downgraded to patch 2.

### Under the hood

When a Shorebird app checks for new patches, the server includes in its response
a list of rolled back patches. If the device has any rolled back patches
installed, it deletes them and reverts to the last "good" patch, which will be
visible the next time the app starts.

:::note
If you app needs to download an older patch as part of a rollback,
installing that patch will count against your monthly patch installs. If you
have no remaining patch installs, the app will revert to the base release.
:::

0 comments on commit bd9833a

Please sign in to comment.