Deploying

Deploying releases

Deploying a release pushes all of its staged changes to the live Magento store. MageDrop handles the whole process: capturing the current values for rollback, applying your changes through the MageDrop module on your store, and recording the result.

How to deploy

  1. In the MageDrop dashboard, open the release.
  2. Review the staged changes, and preview them if you haven't already.
  3. Click Deploy now and confirm.

The deploy starts straight away and usually finishes within seconds; the release page updates as it goes. If the release has a deploy time in the future, the button is Schedule instead (see Scheduling releases). A release needs at least one staged change to deploy.

What happens during a deploy

The deploy follows a careful sequence so it can always be rolled back.

1. Capture the current state

For every entity and store view in the release, the module records the current live value of each field that is about to change, before writing anything. These values come back to MageDrop as the rollback snapshot. If a field had no store-view override before the deploy, the snapshot records that too, so rollback removes the override rather than pinning a copy of the default value.

Deploy time, not staging time. The rollback snapshot is captured when the release deploys, not when the change was staged. If someone edited a field between staging and deploying, rollback restores the value as it was at the moment of deployment.

2. Apply only the staged fields

The module loads each entity at the release's store view, applies only the staged fields, then saves it with Magento's own models, so store scope, image handling and every observer behave exactly as they do for an admin save. Unchanged fields are left alone:

  • If you staged a title change on a category, only the title is written. The description, images and everything else stay as they are, including on other store views.
  • If someone else edited the entity since you staged your change, their edit is kept: MageDrop doesn't touch fields it has no staged changes for.

3. Push through the MageDrop module

MageDrop calls the module's REST endpoint on your store once per entity and store view, using the OAuth integration you created during setup:

CallPurpose
POST /rest/V1/magedrop/applyApply the staged fields at a store view and return the previous values
GET /rest/V1/magedrop/entity/{type}/{id}Read the current state (dashboard diffs, revision restores)

These endpoints need the integration to have the MageDrop > API permission. Stores still running module 1.x are deployed through Magento's core cmsPage / cmsBlock REST endpoints instead, which only support CMS content at the default scope.

4. Update the status

  • If every call succeeded, the release becomes Live.
  • If any call failed, the release becomes Failed, and the activity log shows which entity failed and why.

Deploy order

Changes are grouped by entity and store view. Each group is applied as one save in Magento.

After the deploy

  • The release status is Live.
  • The changes are visible on the storefront straight away. Magento's own cache invalidation runs as part of each save, exactly as for an admin save, so full page cache entries for the affected pages are refreshed.
  • The Rollback button is available on the release page.
  • The deploy is recorded in the release's timeline and the store's activity log.

Failed deploys

If a deploy fails partway through:

  • MageDrop immediately reverts the entities that were already written in this deploy, using the values captured in step 1, so the store is not left half-deployed.
  • The release is marked Failed.
  • The activity log shows exactly which entity failed and the error message from Magento.
  • Fix the underlying issue (invalid data or a missing permission, for example) and click Retry deploy.

Scheduled deploys that fail because the store couldn't be reached are retried automatically. See Automatic retries.

While a deploy runs, the release page shows its progress, item by item. Only one release deploys or rolls back on a store at a time; others wait their turn.

Permissions

To deploy a release, the store needs:

  • Valid OAuth credentials for the Magento integration, saved in the MageDrop dashboard.
  • The right API permissions on that integration (see Connecting your store).

If the integration has been deactivated or reauthorized in Magento, deploys fail until you save the new tokens. See Troubleshooting for help.

Something missing or unclear? Tell us and we will fix the page.