# drupal-db-module

Checks which Drupal modules are enabled or disabled by querying the database via drush pm:list. Use this to verify module state in a running environment where exported config may not reflect the live database.

Check type: drupal-db-module

# Fields

Field Type Required Description
name string yes Label shown in output
severity string no low, normal, high, or critical (default: normal)
drush-path string no Path to the Drush binary (default: vendor/drush/drush/drush)
alias string no Drush site alias (e.g. @prod)
required list no Module names that must be enabled
disallowed list no Module names that must not be enabled

# Example

checks:
  drupal-db-module:
    - name: Required security modules (live DB)
      required:
        - seckit
        - shield
      disallowed:
        - devel

# Behaviour

Shipshape runs drush [alias] pm:list --status=enabled --format=json and parses the output. Any module in required that is not enabled is reported as a breach. Any module in disallowed that is enabled is reported as a breach.

# Remediation

This check does not support automatic remediation. Enable or disable modules using Drush (drush pm:enable, drush pm:uninstall) or the Drupal UI.