PHPackages                             pantheon-systems/site-audit-tool - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. pantheon-systems/site-audit-tool

ActiveDrupal-drush[Utility &amp; Helpers](/categories/utility)

pantheon-systems/site-audit-tool
================================

Drush global extension to run Site Audit checks on Drush 8 and 9

1.2.17(1y ago)1116.4k↓30%7[1 issues](https://github.com/pantheon-systems/site-audit-tool/issues)GPL-2.0-or-laterPHPPHP &gt;=5.6CI passing

Since May 31Pushed 3mo ago44 watchersCompare

[ Source](https://github.com/pantheon-systems/site-audit-tool)[ Packagist](https://packagist.org/packages/pantheon-systems/site-audit-tool)[ RSS](/packages/pantheon-systems-site-audit-tool/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (11)Versions (72)Used By (0)

Experimental Site Audit Tool
============================

[](#experimental-site-audit-tool)

[![Build Status](https://camo.githubusercontent.com/7f9f28d609e46ec49a62b4ac4857557fd18bd54fb56b4eaccf804225d9d615ff/68747470733a2f2f7472617669732d63692e6f72672f70616e7468656f6e2d73797374656d732f736974652d61756469742d746f6f6c2e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/pantheon-systems/site-audit-tool)[![Actively Maintained](https://camo.githubusercontent.com/2ae5ff81f271fb028d720adee6b3595770166f3707a4705a4a2a3b71c332b249/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f50616e7468656f6e2d4163746976656c795f4d61696e7461696e65642d79656c6c6f773f6c6f676f3d70616e7468656f6e26636f6c6f723d464644433238)](https://pantheon.io/docs/oss-support-levels#actively-maintained-support)

This is an experimental Drush extension.

Goal: Create a Global Drush command that runs all of the checks in the Site Audit 2.x branch.

Potential future goal: Share checks between the Global Drush command in the Site Audit 3.x branch.

See the [\#3052993](https://www.drupal.org/project/site_audit/issues/3052993) in the Site Audit issue queue.

Usage
-----

[](#usage)

Ideally, this Drush command will become a dependency of the Site Audit module; if that happens, it will be available once the Site Audit module is installed into a Composer-managed site.

You may also install this module to any location that Drush searches for global or site-local commands. It does not need its vendor directory.

Development
-----------

[](#development)

In development, clone this repository, then set up the System Under Test (sut) via:

```
composer install
composer drupal:scaffold

```

That will set up your local project to run and test with Drush 9. To use Drush 8 instead:

```
composer scenario drush8

```

The [Composer Test Scenarios](https://github.com/g1a/composer-test-scenarios) project is used to manage the Composer dependencies needed to test different scenarios of this project. Running `composer scenario` is like running `composer install`; it will install the appropriate dependencies for the requested testing scenario. Run `composer install` to return to the default installation.

To use this extension as a global Drush command, set up your global drush.yml file as follows:

```
drush:
  paths:
    include:
      - '${env.home}/path/to/drush-extensions'

```

Then install this project to `~/path/to/drush-extensions/Commands/site-audit-tool`

Running Tests
-------------

[](#running-tests)

Set up for 'development' as described in "Development" section. Then, run:

```
composer test

```

Ad-hoc Testing
--------------

[](#ad-hoc-testing)

In development:

```
composer drush audit:best-practices

```

This will run the given Drush command against a local test Drupal site, the "system under test". Run the tests once to install the Drupal site.

Testing via Tagged Deploy
-------------------------

[](#testing-via-tagged-deploy)

- After your work is ready to test in a production environment, cut a new RC tag from your branch and push that tag to github.
- Check out the [cos-framework-clis repo](https://github.com/pantheon-systems/cos-framework-clis/)
- Update the `drush/Dockerfile` to use the tag you just pushed as the value for `site_audit_tool_version`
- At present, you must build the containers locally to push them to `quay.io`, so from the `cos-framework-clis` repo:
    - `cd drush`
    - `make build-drush10` (or whichever version needed)
    - `docker push {BUILD-TAG-NAME}`
        - Tag name should be something like `quay.io/getpantheon/cos-drush:v10-sandbox-eco-cef2a7a-dirty-689f4da`
        - If tag name is only a short name like `v10`, DO NOT PUSH OR YOU WILL DEPLOY IMMEDIATELY TO PRODUCTION.
- SSH into a Ygg node
    - `ygg /sites/{SITE}/environments/{ENVIRONMENT}/workflows -X POST -d '{"type": "change_environment_image", "params": {"server_type": "appserver", "container_name": "drush", "tag": "{TAG}"}}' | jq .`
- Your site will now be using the new site-audit-tool version and all related functionality can be tested.

###  Health Score

51

—

FairBetter than 96% of packages

Maintenance65

Regular maintenance activity

Popularity34

Limited adoption so far

Community26

Small or concentrated contributor base

Maturity69

Established project with proven stability

 Bus Factor1

Top contributor holds 53.4% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~58 days

Recently: every ~240 days

Total

38

Last Release

382d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/b34cc6bd882277b6c6dda19bf6631ae5c3a909fd667c826a15121642cdc051b2?d=identicon)[greg.1.anderson](/maintainers/greg.1.anderson)

![](https://www.gravatar.com/avatar/5a89f5f15357797cbd6ec7833a28626478ae3c0ceb5fa1faa8a26d0960584c65?d=identicon)[pantheon-systems](/maintainers/pantheon-systems)

---

Top Contributors

[![greg-1-anderson](https://avatars.githubusercontent.com/u/612191?v=4)](https://github.com/greg-1-anderson "greg-1-anderson (55 commits)")[![helen-yan](https://avatars.githubusercontent.com/u/39502847?v=4)](https://github.com/helen-yan "helen-yan (22 commits)")[![rwagner00](https://avatars.githubusercontent.com/u/1789035?v=4)](https://github.com/rwagner00 "rwagner00 (8 commits)")[![namespacebrian](https://avatars.githubusercontent.com/u/87093053?v=4)](https://github.com/namespacebrian "namespacebrian (7 commits)")[![sarahg](https://avatars.githubusercontent.com/u/667501?v=4)](https://github.com/sarahg "sarahg (2 commits)")[![AnaisPantheor](https://avatars.githubusercontent.com/u/208500581?v=4)](https://github.com/AnaisPantheor "AnaisPantheor (2 commits)")[![pwtyler](https://avatars.githubusercontent.com/u/8714062?v=4)](https://github.com/pwtyler "pwtyler (1 commits)")[![TohaUA](https://avatars.githubusercontent.com/u/4780023?v=4)](https://github.com/TohaUA "TohaUA (1 commits)")[![chx](https://avatars.githubusercontent.com/u/193045?v=4)](https://github.com/chx "chx (1 commits)")[![EdwardAngert](https://avatars.githubusercontent.com/u/17991901?v=4)](https://github.com/EdwardAngert "EdwardAngert (1 commits)")[![KostenetskyiAndrii](https://avatars.githubusercontent.com/u/99037292?v=4)](https://github.com/KostenetskyiAndrii "KostenetskyiAndrii (1 commits)")[![kporras07](https://avatars.githubusercontent.com/u/2217820?v=4)](https://github.com/kporras07 "kporras07 (1 commits)")[![pantheon-ci-bot](https://avatars.githubusercontent.com/u/26102846?v=4)](https://github.com/pantheon-ci-bot "pantheon-ci-bot (1 commits)")

### Embed Badge

![Health badge](/badges/pantheon-systems-site-audit-tool/health.svg)

```
[![Health](https://phpackages.com/badges/pantheon-systems-site-audit-tool/health.svg)](https://phpackages.com/packages/pantheon-systems-site-audit-tool)
```

###  Alternatives

[jfcherng/php-diff

A comprehensive library for generating differences between two strings in multiple formats (unified, side by side HTML etc).

4705.1M51](/packages/jfcherng-php-diff)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
