Skip to content

gviuns/walle-web

 
 

Repository files navigation

Walle - A Deployment Tool

Build Status Packagist Yii2

A web deployment tool, Easy for configuration, Fully functional, Smooth interface, Out of the box. support git/svn Version control system, no matter what language you are, php/java/ruby/python, just as jenkins. you can deploy the code or output to multiple servers easily on walle, just See home page for more information, 中文说明.

Now, there are more then ten companies hosted walle for deployment, star walle if you like : )

  • Support git/svn Version control system.
  • User signup by admin/develop identity.
  • Developer submit a task, deploy task.
  • Admin audit task.
  • Multiple project.
  • Multiple Task Parallel.
  • Quick rollback.
  • Group relation of project.
  • Task of pre-deploy(e.g: test ENV var).
  • Task of post-deploy(e.g: mvn/ant, composer install for vendor).
  • Task of pre-release(e.g: stop service).
  • Task of post-release(e.g: restart service).
  • Check up file md5.

Requirements

  • Bash(git、ssh)
  • LNMP/LAMP(php5.4+)
  • Composer

That's all. It's base package of PHP environment!

Installation

git clone [email protected]:meolu/walle-web.git
cd walle-web
vi config/web.php # set up module db mysql connection info
composer install  # error cause by bower-asset, install:composer global require "fxp/composer-asset-plugin:*"
./yii run/setup   # init walle

Or The Most Detailed Installation Guide, any questions refer to FAQ

Quick Start

  • Signup a admin user(admin/admin exists), then configure a project, add member to the project, detect it.
  • Signup a develop user(demo/demo exists), submit a deployment.
  • Project admin audit the deployment.
  • Developer deploy the deployment.

Custom

you would like to adjust some params to make walle suited for your company.

  • Set suffix of email while signing in

    vi config/params.php
    
    'mail-suffix'   => [  // specify the suffix of email, multiple suffixes are allow.
        'huamanshu.com',  // e.g: allow [email protected] only
    ]
  • Configure email smtp

    vi config/web.php +25
    
    # 配置mail smtp模块
    'class'      => 'Swift_SmtpTransport',
    'host'       => 'smtp.huamanshu.com',    # smtp host
    'username'   => '[email protected]', # smtp username
    'password'   => 'password',              # smtp password
    'port'       => 25,                      # smtp port
    'encryption' => 'tls',                   # smtp protocol
    
    
    vi config/params.php
    
    'support.email' => '[email protected]', // 与config/web.php 中mail模块的username一致
  • Configure the path for log

    vi config/params.php
    
    'log.dir'   => '/tmp/walle/',
  • Configure language

    vi config/web.php +73
    
    'language'   => 'en',  # zh => 中文,  en => english

To Do List

  • Travis CI integration
  • Mail events:specify kinds of events
  • Gray released:specify servers
  • Websocket instead of poll
  • A manager of static source
  • Configure variables;
  • Support Docker
  • Open api
  • Command line

Update

git pull
./yii migrate # update db

Architecture

git/svn, user, host, servers

deployment flow

Screenshots

project config

sumbit a task

list of task

demo show

CHANGELOG

CHANGELOG

Discussing

About

A Web Deployment Tool (web代码部署工具)

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • HTML 71.6%
  • PHP 27.7%
  • CSS 0.5%
  • JavaScript 0.1%
  • ApacheConf 0.1%
  • Batchfile 0.0%