Automattic / Automattic/jetpack
Feature Request: Upload Jetpack local backup to a website
- Dominant language
- PHP
- Stars
- 1.8k
- Forks
- 898
- Avg merge
- 1d 18h
- Merged PRs (30d)
- 774
Description
### Impacted plugin
Backup
### What
Being able to upload a custom Jetpack backup to a WordPress website
### How
## Before answering how, I think its more important to mention why:
There are many reasons on why people would want this feature, like;
- Moving a website to another host
- Restoring a website from a server that has completely crashed
- Developing, testing or staging a website
But most likely the reason is (indirect) connected to having a website backup without active source website.
Making the local backup the only option to restore on the destination website.
Yes, there is a way of uploading all the files via FTP and updating the database ( https://jetpack.com/support/backup/manually-restore-a-backup/ )
But this is really a hazard, especially if you are not that tech-savvy or have to do this frequently.
### Why this feature matters to me personally
I recently came across the [WordPress Studio App](https://developer.wordpress.com/studio/) which lets you develop WordPress sites locally.
I love it, but when I finished building a site for my client it was really a pain to get the website online.
I have tried: `All in one WP`, `Duplicator`, `WPVivid`, `Migrate Guru` but none of them worked because their wasn't an active host.
Luckily I got early access to the beta build ( https://github.com/Automattic/studio/issues/482 ), allowing me to export the website content. And via the manually restore a backup guide I was able to get the website online.
### Why is this relevant
As requested here: https://github.com/Automattic/studio/issues/62 it would be great if there was a direct sync between hosting and studio. But for all other website owners who have their own hosting provider it would be great if the website they create locally could sync (preferred) or at least be transferable to the host via Jetpack.
Luckily when opening both a Studio backup and a Jetpack backup the content seems almost identical, with the main difference being Jetpack splitting the SQL files, where Studio creates a single SQL file. So it shouldn't be really hard to make them compatible.

## How could this be achieved:
One way would be to change the copy button on the cloud.jetpack.com website to a migrate button.
Allowing you to choose to copy the site (as it is now) to another site (export)
But also to create a copy of another site replacing the current site (import), I think it's similar to the staging site option in the settings page). But a custom upload would be great.

### Security risks
However, I do understand that the cloud.jetpack.com site is a secure place. And you don't want people to upload all kind of stuff to the jetpack servers. So I'm not sure if this could be filtered, or checked with a digital signature. If not, another possibility could be to allow uploads on the host directly via the Jetpack plugin.
Where the plugin can validate the content before changing the website. Making sure the uploaded content is never send to the cloud.jetpack.com servers.

This last option could be build in directly to Jetpack backup plugin, or separately like the WordPress importer plugin.
Contributor guide
Research direction
No repository files, tests, or entry points are identified in the issue. Start by locating the Jetpack Backup plugin's existing copy, restore, and import flows, then define the supported upload format, validation and security boundaries; the work is done when a scoped local-backup import workflow and its acceptance tests are agreed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- php, wordpress
- Domain
- backend, security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100