PHPackages                             codenamephp/deploymentchecks.async - 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. [DevOps &amp; Deployment](/categories/devops)
4. /
5. codenamephp/deploymentchecks.async

ActiveLibrary[DevOps &amp; Deployment](/categories/devops)

codenamephp/deploymentchecks.async
==================================

Package that let's you run the deployment checks in parallel.

1.0.0(2y ago)0102[1 PRs](https://github.com/codenamephp/deploymentchecks.async/pulls)Apache-2.0PHPPHP ^8.2CI passing

Since Jan 20Pushed 1y ago1 watchersCompare

[ Source](https://github.com/codenamephp/deploymentchecks.async)[ Packagist](https://packagist.org/packages/codenamephp/deploymentchecks.async)[ RSS](/packages/codenamephp-deploymentchecksasync/feed)WikiDiscussions release Synced 2w ago

READMEChangelog (1)Dependencies (3)Versions (3)Used By (0)

deploymentchecks.async
======================

[](#deploymentchecksasync)

[![Packagist Version](https://camo.githubusercontent.com/ee92b15c9d9f7854243fa82239368ffe5307dd91e7947a296be96b198a59c392/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f636f64656e616d657068702f6465706c6f796d656e74636865636b732e6173796e63)](https://camo.githubusercontent.com/ee92b15c9d9f7854243fa82239368ffe5307dd91e7947a296be96b198a59c392/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f636f64656e616d657068702f6465706c6f796d656e74636865636b732e6173796e63)[![Packagist PHP Version Support](https://camo.githubusercontent.com/f07698c1a8ec6773a0c9250d324ca584d5e9c9bf15967e13191581c1b2991ca3/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f636f64656e616d657068702f6465706c6f796d656e74636865636b732e6173796e63)](https://camo.githubusercontent.com/f07698c1a8ec6773a0c9250d324ca584d5e9c9bf15967e13191581c1b2991ca3/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f636f64656e616d657068702f6465706c6f796d656e74636865636b732e6173796e63)[![Lines of code](https://camo.githubusercontent.com/1243bdf74b7d492d912826a5dfe3d2a3208d1e8e3896a4ea7c764743052ce374/68747470733a2f2f696d672e736869656c64732e696f2f746f6b65692f6c696e65732f6769746875622f636f64656e616d657068702f6465706c6f796d656e74636865636b732e6173796e63)](https://camo.githubusercontent.com/1243bdf74b7d492d912826a5dfe3d2a3208d1e8e3896a4ea7c764743052ce374/68747470733a2f2f696d672e736869656c64732e696f2f746f6b65692f6c696e65732f6769746875622f636f64656e616d657068702f6465706c6f796d656e74636865636b732e6173796e63)[![GitHub code size in bytes](https://camo.githubusercontent.com/5ada4771fb7b657785700532d1b13350e1b10634e8ed9908565954389439130d/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c616e6775616765732f636f64652d73697a652f636f64656e616d657068702f6465706c6f796d656e74636865636b732e6173796e63)](https://camo.githubusercontent.com/5ada4771fb7b657785700532d1b13350e1b10634e8ed9908565954389439130d/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c616e6775616765732f636f64652d73697a652f636f64656e616d657068702f6465706c6f796d656e74636865636b732e6173796e63)[![CI](https://github.com/codenamephp/deploymentchecks.async/workflows/CI/badge.svg)](https://github.com/codenamephp/deploymentchecks.async/workflows/CI/badge.svg)[![Packagist Downloads](https://camo.githubusercontent.com/5eed477076e9ae6a6612b3a7e9f70ad5636648046f92d99c76a62230e3767668/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f636f64656e616d657068702f6465706c6f796d656e74636865636b732e6173796e63)](https://camo.githubusercontent.com/5eed477076e9ae6a6612b3a7e9f70ad5636648046f92d99c76a62230e3767668/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f636f64656e616d657068702f6465706c6f796d656e74636865636b732e6173796e63)[![GitHub](https://camo.githubusercontent.com/d3ab6e419ba38e7cb589e720747c5da7ed8d7386095de48527d6ed870ce31fb0/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f636f64656e616d657068702f6465706c6f796d656e74636865636b732e6173796e63)](https://camo.githubusercontent.com/d3ab6e419ba38e7cb589e720747c5da7ed8d7386095de48527d6ed870ce31fb0/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f636f64656e616d657068702f6465706c6f796d656e74636865636b732e6173796e63)

Package that let's you run the deployment checks in parallel.

Installation
------------

[](#installation)

Easiest way is via composer. Just run `composer require codenamephp/deploymentchecks.async` in your cli which should install the latest version for you.

You should also explicitly install the codenamephp/deploymentchecks.base package since you will end up using it directly in almost all cases.

Important note
--------------

[](#important-note)

Because spatie/async (the package that provides the underlying async functionality) passes data between the processes/threads with serialize/unserialize the packages that want to be compatible with this MUST make sure the checks are serializable. This means that the checks MUST NOT contain any resources, closures or other non-serializable data.

Usage
-----

[](#usage)

Just use it like any other deployment check collection. Only difference is that you need to provide a pool and some factories. The number of threads can also be configured with the pool.

```
use de\codenamephp\deploymentchecks\async\Check\Factory\FromCheck\WithErrorHandlerFactory;
use de\codenamephp\deploymentchecks\async\Collection\AsyncCheckCollection;
use de\codenamephp\deploymentchecks\base\Check\Result\Collection\ResultCollection;
use de\codenamephp\deploymentchecks\base\Check\Result\WithExitCodeInterface;
use de\codenamephp\deploymentchecks\base\ExitCode\DefaultExitCodes;
use de\codenamephp\deploymentchecks\http\RunTestsOnHttpResponse;
use de\codenamephp\deploymentchecks\http\Test\StatusCode;
use GuzzleHttp\Psr7\Request;

require_once __DIR__ . '/../vendor/autoload.php';

$result = (new AsyncCheckCollection( // This is the collection that will run the checks instead of the default sequential collection
new \Spatie\Async\Pool(), // This is the pool that will run the checks in parallel
  new ResultCollection(), // This is the result collection that will be filled with the results of the checks
  new WithErrorHandlerFactory(), // This is the factory that will create the checks from the checks that are passed to the collection
  new RunTestsOnHttpResponse( // These are the checks that will be run, in this case from the codenamephp/deploymentchecks.http package
    new Request('GET', 'https://localhost'),
    'Frontpage should be available',
    new StatusCode(200),
  ),
  new RunTestsOnHttpResponse(
    new Request('GET', 'https://localhost/admin'),
    'Admin login page should be available',
    new StatusCode(401),
  )
))->run();

exit($result instanceof WithExitCodeInterface ? $result->exitCode() : ($result->successful() ? DefaultExitCodes::SUCCESSFUL->value : DefaultExitCodes::ERROR->value));
```

###  Health Score

28

—

LowBetter than 51% of packages

Maintenance30

Infrequent updates — may be unmaintained

Popularity9

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity56

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 90.9% 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

Unknown

Total

1

Last Release

939d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/6865819?v=4)[Bastian Schwarz](/maintainers/bastianschwarz)[@bastianschwarz](https://github.com/bastianschwarz)

---

Top Contributors

[![bastianschwarz](https://avatars.githubusercontent.com/u/6865819?v=4)](https://github.com/bastianschwarz "bastianschwarz (10 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (1 commits)")

### Embed Badge

![Health badge](/badges/codenamephp-deploymentchecksasync/health.svg)

```
[![Health](https://phpackages.com/badges/codenamephp-deploymentchecksasync/health.svg)](https://phpackages.com/packages/codenamephp-deploymentchecksasync)
```

###  Alternatives

[pomander/pomander

Deployment for PHP

19615.7k2](/packages/pomander-pomander)[symfony-tools/docs-builder

The build system for Symfony's documentation

3668.5k1](/packages/symfony-tools-docs-builder)[enygma/composerclean

An additional command for Composer that removes configured files/directory

171.8k](/packages/enygma-composerclean)

PHPackages © 2026

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