The pulp repository sync API gives the user these options on POST /<repo_href/sync/:
{ "mirror": false, "optimize": true }
With the old APIs, we hid them from the end user by setting both of them to true, however now that we have the option to give user's a choice here, we should.
When the user clicks the "Sync" button on a repository, we should show a modal that gives the user's the option to check "optimize" and "mirror". By default both should be set to true.
Additionally, this form should have the following descriptions:
- Mirror: If selected all content that is not present in the remote repository will be removed from the local repository, otherwise sync will be add missing content.
- Optimize: Only perform the sync if no changes are reported by the remote server. To force a sync to happen, deselect this option.
It's worth noting that synclists will not remove collections from local repositories unless this this feature is added, since the current default is mirror=false.