PHPackages                             continuousphp/deploy-agent - 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. continuousphp/deploy-agent

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

continuousphp/deploy-agent
==========================

Deploy agent for continuousphp

0.2.2(9y ago)15939[2 issues](https://github.com/continuousphp/deploy-agent/issues)Apache-2.0PHPPHP &gt;=5.5.0

Since Jun 26Pushed 9y ago10 watchersCompare

[ Source](https://github.com/continuousphp/deploy-agent)[ Packagist](https://packagist.org/packages/continuousphp/deploy-agent)[ Docs](https://github.com/continuousphp/deploy-agent)[ RSS](/packages/continuousphp-deploy-agent/feed)WikiDiscussions master Synced 2mo ago

READMEChangelog (4)Dependencies (9)Versions (12)Used By (0)

Continuous Deploy Agent
=======================

[](#continuous-deploy-agent)

Master :
[![Master branch status](https://camo.githubusercontent.com/262a053aef741018bc2e6d5a8651568fffb05ed55441ca7bb50129a3eeb9a660/68747470733a2f2f7374617475732e636f6e74696e756f75737068702e636f6d2f6769742d6875622f636f6e74696e756f75737068702f6465706c6f792d6167656e743f746f6b656e3d38613364646231382d643861612d343561662d386535612d373138613761363638646261266272616e63683d6d6173746572)](https://continuousphp.com/git-hub/continuousphp/deploy-agent)
Develop :
[![Develop branch status](https://camo.githubusercontent.com/cdb2d41d47e1c9f02a39b07c610437d6ab2f03b3c52d89c8e70e154c9c8b6d04/68747470733a2f2f7374617475732e636f6e74696e756f75737068702e636f6d2f6769742d6875622f636f6e74696e756f75737068702f6465706c6f792d6167656e743f746f6b656e3d38613364646231382d643861612d343561662d386535612d373138613761363638646261266272616e63683d646576656c6f70)](https://continuousphp.com/git-hub/continuousphp/deploy-agent)

Automated deployment agent to install on your servers.

It manages automated deployment workflows based on webhooks for your projects.

Requirements
============

[](#requirements)

- PHP 5.5+
- PHP mcrypt extension
- **sqlite** or other doctrine compatible SGBD (sqlite is currently the only one officially supported)

⚠️ the PHP sqlite extension is not installed by default.

Installation by Docker ( Container Service )
============================================

[](#installation-by-docker--container-service-)

You can use our [Docker image](https://hub.docker.com/r/continuous/deploy-agent/) as a container service. The container is isolated from the rest of your Server and you have not to worry about server dependencies or security.

Thanks to report to [Docker-Hub documentation](https://hub.docker.com/r/continuous/deploy-agent/).

Installation by Composer
========================

[](#installation-by-composer)

- Download [Composer](https://getcomposer.org/download/): `curl -sS https://getcomposer.org/composer.phar -o composer.phar`
- Install the Deploy Agent: `php composer.phar create-project continuousphp/deploy-agent`
- Start using the agent: `cd deploy-agent && ./agent`

HTTP server config
------------------

[](#http-server-config)

To setup apache, setup a virtual host that points to the public/ directory of the project and you should be ready to go! It should be something similar to:

```

    DocumentRoot /path/to/deploy-agent/public

        DirectoryIndex index.php
        AllowOverride All
        Order allow,deny
        Allow from all

```

Also enable apache mod rewrite in order to support webhook routes

`a2enmod rewrite`

Usage
=====

[](#usage)

List your applications
----------------------

[](#list-your-applications)

```
./agent list applications

```

Create an application
---------------------

[](#create-an-application)

```
./agent add application [--provider=] [--token=] [--repository-provider=] [--repository=] [--pipeline=] [--name=] [--path=]

```

- **--provider** The application provider to use (currently, continuousphp is the only supported application provider)
- **--token** A valid token to consume the provider API (ie: continuousphp API token)
- **--repository-provider** The repository provider to use (ie: git-hub, bitbucket...)
    *(for continuousphp only)*
- **--repository** The repository key to use (ie: continuousphp/deploy-agent)
- **--pipeline** The pipeline to use (ie: refs/heads/master)
    *(for continuousphp only)*
- **--name** The name of the application
- **--path** The destination path of the application

### Token

[](#token)

The `token` depends on the Provider. At this time, the continousphp API is the only one supported. You can retrieve your personal `token` on your Profile page at [continuousphp.com/profile](https://continuousphp.com/profile/)

Deploy an application
---------------------

[](#deploy-an-application)

```
./agent deploy application [--name=] [--build=]

```

- **--name** The name of the application
- **--build** The ID of the build to deploy

Application path
================

[](#application-path)

When a deployment occurs, the Deploy Agent creates a new folder for every build in its dedicated workspace. To enable the new build, it will create/update a symlink to the current build

```
[application-path]
        |
        +---[/current] (symlink to current build)
        |
        +---[/build-1]
        |
        +---[/build-2]

```

Hooks
=====

[](#hooks)

During the deployment workflow the Deploy Agent can execute project specific commands through hooks to define in a continuous.yml file as following:

```
# continuous.yml
deployment:
  hooks:
    AfterInstall:
      - command: echo 'the application is successfully installed'
    BeforeActivate:
      - command: echo 'the application is going to start'
    AfterActivate:
      - command: echo 'the application has started'
```

Webhook setup
=============

[](#webhook-setup)

The URL of the hook to implement in [continuousphp](https://continuousphp.com) is `/webhook/continuousphp`. Configure it as following: [![continuousphp setup](https://raw.githubusercontent.com/continuousphp/deploy-agent/master/resources/img/continuousphp-setup.png)](https://raw.githubusercontent.com/continuousphp/deploy-agent/master/resources/img/continuousphp-setup.png)

Events
------

[](#events)

- **AfterInstall :** triggered just after the application package has been extracted
- **BeforeActivate :** triggered just before the symlink update
- **AfterActivate :** triggered just after the symlink update

Contributing
============

[](#contributing)

Please note that this project is released with a [Contributor Code of Conduct](http://contributor-covenant.org/version/1/2/0/). By participating in this project you agree to abide by its terms.

Feel free to fork the project, create a feature branch, and send us a pull request!

###  Health Score

30

—

LowBetter than 64% of packages

Maintenance17

Infrequent updates — may be unmaintained

Popularity20

Limited adoption so far

Community19

Small or concentrated contributor base

Maturity55

Maturing project, gaining track record

 Bus Factor2

2 contributors hold 50%+ of commits

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 ~40 days

Recently: every ~30 days

Total

6

Last Release

3406d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/8b2264c73d9620e61d22343c339b9c51db7bfa037677aa1b1863d666a1e4da82?d=identicon)[continuousphp](/maintainers/continuousphp)

---

Top Contributors

[![Zenzumai](https://avatars.githubusercontent.com/u/1436728?v=4)](https://github.com/Zenzumai "Zenzumai (33 commits)")[![sotino](https://avatars.githubusercontent.com/u/2804659?v=4)](https://github.com/sotino "sotino (15 commits)")[![ppaulis](https://avatars.githubusercontent.com/u/1609503?v=4)](https://github.com/ppaulis "ppaulis (11 commits)")[![Pierozi](https://avatars.githubusercontent.com/u/5133487?v=4)](https://github.com/Pierozi "Pierozi (9 commits)")[![oswaldderiemaecker](https://avatars.githubusercontent.com/u/1754435?v=4)](https://github.com/oswaldderiemaecker "oswaldderiemaecker (1 commits)")

---

Tags

continuous-deploymentcontinuousphpdeploymentdevopstoolcontinuousphpAgentdeploymentbuild

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/continuousphp-deploy-agent/health.svg)

```
[![Health](https://phpackages.com/badges/continuousphp-deploy-agent/health.svg)](https://phpackages.com/packages/continuousphp-deploy-agent)
```

###  Alternatives

[ondram/ci-detector

Detect continuous integration environment and provide unified access to properties of current build

22249.4M33](/packages/ondram-ci-detector)[jalogut/magento2-deployer-plus

Magento 2 deployment tool based on deployer.org

201415.5k](/packages/jalogut-magento2-deployer-plus)[timokoerber/laravel-one-time-operations

Run operations once after deployment - just like you do it with migrations!

6481.7M11](/packages/timokoerber-laravel-one-time-operations)[andres-montanez/magallanes

The Deployment Tool for PHP Applications

6901.1M6](/packages/andres-montanez-magallanes)[dg/ftp-deployment

A tool for automated deployment of web applications to an FTP server.

615845.5k8](/packages/dg-ftp-deployment)[easycorp/easy-deploy-bundle

The easiest way to deploy Symfony applications

468310.2k](/packages/easycorp-easy-deploy-bundle)

PHPackages © 2026

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