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 1mo 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

29

—

LowBetter than 59% of packages

Maintenance33

Infrequent updates — may be unmaintained

Popularity9

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity55

Maturing project, gaining track record

 Bus Factor1

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

849d 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 (3 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

[deployer/deployer

Deployment Tool

11.1k25.4M207](/packages/deployer-deployer)[appwrite/server-ce

End to end backend server for frontend and mobile apps.

55.3k84.2k](/packages/appwrite-server-ce)[pragmarx/health

Laravel Server &amp; App Health Monitor and Notifier

2.0k1.0M2](/packages/pragmarx-health)[felixfbecker/language-server-protocol

PHP classes for the Language Server Protocol

22476.7M6](/packages/felixfbecker-language-server-protocol)[heroku/heroku-buildpack-php

Toolkit for starting a PHP application locally, with or without foreman, using the same config for PHP and Apache2/Nginx as on Heroku

8161.3M10](/packages/heroku-heroku-buildpack-php)[tiamo/phpas2

PHPAS2 is a php-based implementation of the EDIINT AS2 standard

4674.7k](/packages/tiamo-phpas2)

PHPackages © 2026

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