Skip to content

Allow WP-CLI wp optimole media rollback_images command to execute when offload_media is set to rollback state #1161

Description

@pirate-bot

Impact: 75 · Confidence: 95 · Complexity: 30

Description

  1. Problem: When a site administrator initiates an image transfer/rollback from the plugin dashboard ('Transfer back from Optimole'), Optimole sets the plugin storage mode to rollback, which stores the offload_media setting option as disabled. If the administrator or host then attempts to run the command-line rollback tool (wp optimole media rollback_images), the WP-CLI command throws an error: Error: You need to have the offload_media option enabled in order to use this command and aborts.
  2. Desired behavior: WP-CLI's wp optimole media rollback_images command should check whether a rollback is currently active or in progress (or allow execution if offload_media is disabled due to an ongoing rollback state), rather than strictly requiring offload_media to be enabled.
  3. Acceptance Criteria:
  • Running wp optimole media rollback_images succeeds when an image rollback operation has been initiated from the dashboard (where offload_media is disabled or set to rollback mode).
  • The CLI command only rejects execution if no offloaded images exist or if offload media was never configured/active.

Customer Context

The customer needed to roll back 11,000+ offloaded images. The background WP-Cron process stalled due to server cron restrictions. When support instructed the customer and host to run wp optimole media rollback_images via SSH/terminal, the WP-CLI command failed because selecting 'Transfer back from Optimole' in the plugin dashboard had set offload_media to disabled.

Root Cause Analysis

The customer needed to restore offloaded media back to the local WordPress Media Library. The plugin's UI dashboard action 'Transfer back from Optimole' sets the plugin's offload storage mode to rollback, which sets the offload_media option value to disabled. When background WP-Cron stalled and support instructed the host to run wp optimole media rollback_images via WP-CLI, the CLI command failed because it enforces a strict check requiring offload_media to be enabled before initiating or resuming a rollback. The root cause is a workflow/validation contradiction in the plugin code: initiating a rollback in UI turns off offload_media, but the CLI command requires offload_media to be enabled.

Alternative Suggestions

Relax or adjust the option check in Optml_Media_Offload / WP-CLI rollback command handler so that wp optimole media rollback_images checks whether offloaded images exist or whether storage mode is in rollback state, rather than strictly asserting offload_media == enabled.

Reasoning

The customer experienced a failure running the CLI rollback command wp optimole media rollback_images because selecting 'Transfer back from Optimole' in the WordPress admin dashboard saved the storage mode as rollback, which updated offload_media option to disabled. Consequently, when attempting to run wp optimole media rollback_images via CLI as recommended for reliable or large background operations, WP-CLI halts with Error: You need to have the offload_media option enabled in order to use this command. The CLI rollback command should automatically permit execution when offload_media is in a rollback state or automatically bypass this option check during a rollback operation.


Source: HelpScout #3456031569
Generated by feature-request-triage workflow (ID: feature-request-triage_6ab502db326f90.60727165)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions