Skip to content
3 changes: 3 additions & 0 deletions src/content/docs/account/delete-account.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -44,3 +44,6 @@ organizations you own have been transferred or deleted.
4. Complete the verification step to confirm the deletion.

Your account and all associated data will be permanently deleted.

Deleting individual apps, releases, and patches is also permanent. See
[Delete Apps, Releases, and Patches](/code-push/delete).
93 changes: 93 additions & 0 deletions src/content/docs/code-push/delete.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
---
title: Delete Apps, Releases, and Patches
description:
What deleting an app, release, or patch in Shorebird removes, and the options
to consider first.
sidebar:
label: Delete
order: 8
---

import { LinkCard } from 'starlight-theme-nova/components';

:::note

Deleting is permanent and cannot be undone. Shorebird is unable to restore
deleted apps, releases, or patches once deleted.

:::

## Before you delete

People usually reach for delete when a patch has a problem, but deleting is
rarely the right fix. Think about why you want to delete, and whether one of
these options fits better:

- **A patch has a bug.** [Roll it back](/code-push/rollback) instead of deleting
its release. A rollback removes the patch from end users' devices, and you can
roll it forward again later if the patch turns out to be fine.
- **You want to test a patch before users get it.** Publish it to a
[staging track](/code-push/guides/staging-patches).
- **You want to move an app to another organization.** Transfer ownership of the
app instead of deleting it.

Delete only when you no longer need an app or release at all. If you're not sure
which option is right, [reach out](mailto:contact@shorebird.dev) and the
Shorebird team can help you decide.

## Delete a patch

Individual patches can't be deleted. A patch is removed along with the release
it belongs to, or the app that owns that release.

If you want to stop serving a patch, you can roll it back. A rollback remotely
uninstalls the patch from end users' devices and falls back to the previous
patch or the base release. You can undo a rollback later if you need to.

<LinkCard
title="Roll back a Patch"
href="/code-push/rollback"
description="Remotely uninstall a patch. You can undo a rollback later."
/>

## Delete a release

Releases are deleted per platform. When you delete a release, the dialog asks
which platforms to delete, and your choice determines what is removed:

- **All** deletes the release itself, along with its artifacts and every patch
published to it. Devices will no longer receive patches for that release
version.
- **A single platform** deletes that platform's release and patch binaries. The
release itself remains, and the other platforms are untouched.

In both cases, the deleted binaries can't be restored.

See [Delete releases](/code-push/release#delete-releases) for the steps and for
the platform selection dialog.

## Delete an app

Deleting an app also deletes every release, patch, and artifact associated with
it. Copies of the app that are already installed on end users' devices keep
working normally, but they won't receive new patches.

If you want to move an app to another organization, use **Transfer Ownership**
in the same Danger Zone instead of deleting it.

1. Navigate to the app in the
[Shorebird console](https://console.shorebird.dev/).
2. Go to the **Settings** tab.
3. In the **Danger Zone**, select **Delete**.
4. Confirm in the dialog that appears.

## Delete an account

Deleting your account removes your personal organization and everything in it.
If you own any team organizations, transfer or delete those first.

<LinkCard
title="Delete Account"
href="/account/delete-account"
description="Permanently delete your Shorebird account and all associated data."
/>
13 changes: 13 additions & 0 deletions src/content/docs/code-push/faq.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -366,6 +366,19 @@ patch shortly after.

:::

### Can you restore a deleted app, release, or patch?

No. Deleting an app, a release, or a patch is permanent, and Shorebird support
isn't able to restore it afterwards. The same is true of
[deleting your account](/account/delete-account). The Shorebird console shows a
confirmation dialog before any of these deletions, so you can review what's
about to be removed first.

If you want to stop serving a bad patch, you can
[roll it back](/code-push/rollback) instead, and undo the rollback later if you
need to. See [Delete Apps, Releases, and Patches](/code-push/delete) for
details.

### Is Shorebird suitable for enterprise or production apps?

Yes. Engineering teams at companies of all sizes ship with Shorebird. See
Expand Down
15 changes: 15 additions & 0 deletions src/content/docs/code-push/patch.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -241,3 +241,18 @@ routing to a staging beta group):
```sh
shorebird patches set-track --release-version 1.0.0+1 --patch-number 1 --track staging
```

### Delete a patch

Individual patches can't be deleted. A patch is removed along with the release
it belongs to, or the app that owns that release. Those deletions are permanent,
and the console asks you to confirm before anything is removed.

:::tip

To stop serving a patch, use [rollback](/code-push/rollback). It remotely
uninstalls the patch from end users' devices, and you can undo it later.

:::

See [Delete Apps, Releases, and Patches](/code-push/delete) for details.
14 changes: 11 additions & 3 deletions src/content/docs/code-push/release.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -551,10 +551,14 @@ afterwards, use `--target-platform` as described in
title="Delete a Release"
/>

:::danger
:::caution[Deleting a release is permanent]

Deleting a release will remove all associated patches and artifacts and is **not
reversible**.
Deleting a release removes the release, its artifacts, and every patch
associated with it, and it can't be restored afterwards. The console asks you to
confirm before anything is removed.

If you only want to stop serving a bad patch, you can
[roll it back](/code-push/rollback) instead. You can undo a rollback later.

:::

Expand All @@ -576,6 +580,10 @@ for that release.
alt="Release Delete Platform Confirm Dialog in Shorebird Console"
/>

The deletion takes effect as soon as you confirm. See
[Delete Apps, Releases, and Patches](/code-push/delete) for what is removed and
for alternatives to deleting.

## Side-loading and MDM

A common question is: Does Shorebird require publishing to the App Store or Play
Expand Down