PHPackages                             culabs/deployment - 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. culabs/deployment

ActiveLibrary

culabs/deployment
=================

System for deployment Symfony application

v7.7.1(10y ago)039MITPHP

Since Apr 27Pushed 10y ago1 watchersCompare

[ Source](https://github.com/aprezcuba24/CULabsDeployment)[ Packagist](https://packagist.org/packages/culabs/deployment)[ Docs](http://deployment.culabs.org)[ RSS](/packages/culabs-deployment/feed)WikiDiscussions master Synced 1mo ago

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

CULabsDeployment
================

[](#culabsdeployment)

Resumen
-------

[](#resumen)

Este proyecto es con el objetivo de automatizar el despleigue de aplicaciones. Fue creado para symfony2, pero puede ser utilizado para cualquier otro framework. El proyecto surigió para dar respuesta al siguiente problemática: Se cuenta con una aplicación symfony, donde a través de variables de entornos se le inyectan la configuración de la base de datos. Luego con una misma instancia de la aplicación, utilizando distintos dominios (cada uno con una configuración de base datos diferentes) la aplicación se comporta como aplicaciones independientes. Con esta filosofía se puede crera un ambiente trabajo para varios clientes.

Instalación
-----------

[](#instalación)

```
php composer.phar global require "culabs/deployment:dev-master" --prefer-dist

```

Incluir el directorio `~/.composer/vendor/bin/` en la variable $PATH para poder ejecutar el comando.

Uso
---

[](#uso)

Detro de la aplicación crear una carpeta con el nombre `deployment` y dentro crear una estructura de ficheros como esta:

```
deployment
  - data
    - schema.sql
  - config.yml
  - config_base.yml
  - site_test.yml

```

Aclarar que esto es un ejemplo, eres libre de hacer la configuración que desees.

Dentro de `config_base.yml` se pondría algo como esto:

```
parameters:
    DocumentRoot: %APP_DIR%/web
    database_user: root
    database_password: root
    vars_environment:
        SYMFONY__DATABASE__NAME: %database_name%
        SYMFONY__DATABASE__USER: %database_user%
        SYMFONY__DATABASE__PASSWORD: %database_password%
    supervisor_options:
        autorestart: 'true'
        user: www-data
        redirect_stderr: 'false'
        stdout_logfile: %APP_DIR%/app/logs/supervisor_%database_name%.log
        stdout_logfile_maxbytes: 10MB
deployment:
    up:
        database_create:
            service: command
            command: php app/console doctrine:database:create -n
            env: %vars_environment%
        schema_create:
            service: command
            command: mysql --user=%database_user% --password=%database_password% %database_name% < %APP_DIR%/deployment/data/schema.sql
        database_migrations:
            service: command
            command: php app/console doctrine:migrations:migrate -n
            env: %vars_environment%
        cache_clear:
            service: command
            command: php app/console cache:clear -e=prod
            env: %vars_environment%
        supervisor_command1:
            service: supervisor
            key: %database_name%_command1
            filename: %APP_DIR%/app/supervisor/%database_name%.conf
            command: 'php %APP_DIR%/app/console app:command1 -e=prod'
            options: %supervisor_options%
            vars_environment: %vars_environment%
        supervisor_command2:
            service: supervisor
            append: true
            key: %database_name%_command2
            filename: %APP_DIR%/app/supervisor/%database_name%.conf
            command: 'php %APP_DIR%/app/console app:command2 -e=prod'
            options: %supervisor_options%
            vars_environment: %vars_environment%
        supervisor_restart:
            service: command
            command: service supervisor restart
        vhost:
            SetEnv: %vars_environment%
            DocumentRoot: %DocumentRoot%
            ServerName: %ServerName%
    update:
        database_update:
            service: command
            command: php app/console doctrine:migrations:migrate -n
            env: %vars_environment%
        cache_clear:
            service: command
            command: php app/console cache:clear -e=prod
            env: %vars_environment%
    down:
        vhost:
            ServerName: %ServerName%
        database_drop:
            service: command
            command: php app/console doctrine:database:drop --force -n
            env: %vars_environment%
        supervisor:
            filename: %APP_DIR%/app/supervisor/%database_name%.conf
        supervisor_restart:
            service: command
            command: service supervisor restart
```

Luego `site_test.yml` tendría este contenido

```
imports:
    - { resource: config_base.yml }

parameters:
    ServerName: dev.sittest.com
    database_name: sittest.com
    supervisor_options:
        stdout_logfile: %APP_DIR%/app/logs/supervisor_%database_name%.log
```

Ya con esta configuración se puede instalar una nueva aplicación ejecutando las operaciones de la opción `up` a través del comando:

```
culabs-deployment deployment up --config-file=site_test.yml

```

Para ejecutar actualizaciones se ejecutan las operaciones de la opción `update`

```
culabs-deployment deployment update --config-file=site_test.yml

```

Finalmente se puede desintalar una aplicación con el comando:

```
culabs-deployment deployment down --config-file=site_test.yml

```

En el caso que se tenga varias aplicaciones configuradas y se desee hacer un update a todas ellas, se debe crear el fichero `config.yml` con lo siguiente:

```
deployment:
    batch:
        - site_test.yml
        - site_test_1.yml
        - site_test_2.yml
```

Luego se ejecuta el comando:

```
culabs-deployment deployment batch

```

###  Health Score

28

—

LowBetter than 54% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity67

Established project with proven stability

 Bus Factor1

Top contributor holds 100% 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 ~21 days

Total

5

Last Release

3955d ago

Major Versions

v1.0.0 → v2.7.02015-07-02

V2.7.1 → v7.7.12015-07-20

### Community

Maintainers

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

---

Top Contributors

[![aprezcuba24](https://avatars.githubusercontent.com/u/1106566?v=4)](https://github.com/aprezcuba24 "aprezcuba24 (12 commits)")

---

Tags

symfony

### Embed Badge

![Health badge](/badges/culabs-deployment/health.svg)

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

###  Alternatives

[shopware/platform

The Shopware e-commerce core

3.3k1.5M3](/packages/shopware-platform)[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.4k5.6M651](/packages/sylius-sylius)[sulu/sulu

Core framework that implements the functionality of the Sulu content management system

1.3k1.3M152](/packages/sulu-sulu)[prestashop/prestashop

PrestaShop is an Open Source e-commerce platform, committed to providing the best shopping cart experience for both merchants and customers.

9.0k15.4k](/packages/prestashop-prestashop)[ec-cube/ec-cube

EC-CUBE EC open platform.

78527.0k1](/packages/ec-cube-ec-cube)[contao/core-bundle

Contao Open Source CMS

1231.6M2.4k](/packages/contao-core-bundle)

PHPackages © 2026

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