Skip to content

Improve disposable MySQL diagnostics when Docker is unavailable #2006

Description

@chubes4

Problem

The canonical wordpress.phpunit MySQL runtime fails with only Managed runtime service failed: wordpress-database and diagnostic: { code: 'provision-failed' } when the host has no docker executable.

Observed while running Homeboy's WordPress extension against a component declaring database_type=mysql:

RuntimeServiceProvisionError: Managed runtime service failed: wordpress-database
...
diagnostic: { code: 'provision-failed' }

The host-level cause was confirmed separately: docker: command not found.

Expected

The WP Codebox runtime-service owner should preserve a bounded actionable cause such as provider-unavailable / docker executable not found, including the missing provider command, rather than collapsing process-spawn failures into the generic provision failure.

Scope

  • Keep MySQL fail-closed; do not substitute SQLite.
  • Improve the structured diagnostic emitted by provisionMysqlDockerService for an unavailable provider executable.
  • Add coverage for process spawn ENOENT.

This was discovered while addressing Extra-Chill/data-machine-events#546; DME will retain the canonical MySQL declaration and will not work around the missing provider.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions