jcornide / deployer

Deployer is a free and open source deployment tool.

Home Page:http://phpdeployment.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Deployer

Deployer is a PHP Application deployment system powered by Laravel 5.2, written & maintained by Stephen Ball.

Check out the releases, license, screenshots, and contribution guidelines.

Gitter

Current Build Status

StyleCI Build Status Code Climate Test Coverage SensioLabs Insight

Release Status

PHP Dependency Status Node Dependency Status Latest Version

What it does

  • Deploys applications to multiple servers accessible via SSH
  • Clones your project's git repository
  • Installs composer dependencies
  • Runs arbitrary bash commands
  • Gracefully handles failure in any of these steps
  • Keeps a number of previous deployments
  • Monitors that cronjobs are running
  • Allows deployments to be triggered via a webhook

What it doesn't do

Usage in production

The master branch of this repository is a development branch and should not be used in production. Changes are merged into the release branch when they are considered stable and may then be tagged for release at any time. It is recommended that you use the latest tag release for production. For information on contributing see contribution guidelines.

Requirements

Optional extras

  • Supervisor to keep the queue listener and Node.js socket server running
  • A caching server, unless you expect a lot of traffic the default file cache is probably enough

Installation

  1. Clone the repository

    $ git clone https://github.com/REBELinBLUE/deployer.git
  2. Checkout the latest release

    $ git checkout 0.0.30
  3. Install dependencies

    $ composer install -o --no-dev
    $ npm install --production
  4. Make sure the storage and upload directories are writable

    $ chmod -R 777 storage
    $ chmod -R 777 public/upload
  5. Run the installer and follow the instructions

    $ php artisan app:install
  6. (Optional) Make any additional configuration changes

    $ editor .env
  7. Configure your web server to point to public/, see examples/ for Apache and nginx sample configuration files.

  8. Start socket server and setup cron jobs. If you are not configuring supervisor you will need to manually start the socket server with node socket.js (listens on port 6001 by default) and setup cron jobs, see examples/crontab. If you are configuring supervisor see examples/supervisor.conf

Updating

  1. Get the latest code

    $ git fetch --all
    $ git checkout 0.0.30
  2. Update the dependencies

    $ composer install -o --no-dev
    $ npm install --production
  3. Run the updater

    $ php artisan app:update

License

Deployer is licensed under The MIT License (MIT).

About

Deployer is a free and open source deployment tool.

http://phpdeployment.org

License:MIT License


Languages

Language:PHP 60.5%Language:JavaScript 19.5%Language:HTML 19.2%Language:CSS 0.4%Language:Shell 0.3%Language:ApacheConf 0.0%