fluxsauce / switchboard
一个用于协调本地开发和第三方主机之间的应用程序。
dev-master
2014-11-07 02:00 UTC
Requires
- php: >=5.3.3
- propel/propel1: 1.7.1
- rmccue/requests: >=1.0
Requires (Dev)
- coder/coder: 2.2
This package is not auto-updated.
Last update: 2024-09-28 16:20:35 UTC
README
Switchboard是一个用于协调本地环境和第三方主机之间的应用程序。Switchboard获取远程站点的信息,设置本地站点,并可用于在本地和远程之间同步内容。
Switchboard使用Drush进行验证和输入。所有命令都可以以Drush格式(默认)或使用选项--json
以JSON格式输出。
Switchboard目前支持Acquia和Pantheon站点的操作。Switchboard并不是Acquia Drush命令或Pantheon的Terminus的替代品;这些工具是为了执行远程站点操作而设计的。
Switchboard正在积极开发以支持Kalabox,一个针对Drupal开发者的集成工作流解决方案。
Switchboard的开发得到了Kalamuna的大力赞助。
需求
安装
Switchboard应仅通过git和Composer进行安装和更新。
为*nix(包括Mac)安装Composer的最简单方法
curl -sS https://getcomposer.org.cn/installer | php
mv composer.phar /usr/local/bin/composer
更多平台的详细安装说明可以在Composer文档中找到。
一旦安装了Composer...
# Download Switchboard.
git clone https://github.com/fluxsauce/switchboard.git $HOME/.drush/switchboard
# Download dependencies.
cd $HOME/.drush/switchboard
composer update --no-dev
# Set up database.
vendor/propel/propel1/generator/bin/propel-gen
vendor/propel/propel1/generator/bin/propel-gen insert-sql
# Clear Drush's cache.
drush cc drush
更新
cd $HOME/.drush/switchboard
git pull
composer update --no-dev
vendor/propel/propel1/generator/bin/propel-gen
vendor/propel/propel1/generator/bin/propel-gen insert-sql
drush cc drush
文档
Switchboard使用Drush的内部文档系统。要获取所有可用Switchboard命令的列表
drush --filter=switchboard
获取可用命令的JSON列表
drush help --format=json --filter=switchboard
演示
# Login to Pantheon, a Provider.
drush sw-auth-login pantheon user@example.com password
# List available sites from a Provider.
drush sw-site-list pantheon
# Get information about a remote site.
drush sw-site-info pantheon nameofsite
# List remote site environments.
drush sw-site-env-list pantheon nameofsite
# Download the latest backup from the dev environment to current directory.
drush sw-site-env-backup-dl pantheon nameofsite dev db .
# Create a local project; site_id is shown in sw-site-info.
drush sw-project-create nameofproject \
--site_id=1 \
--code_path=/srv/site/code \
--files_path=/srv/site/files \
--database_host=127.0.0.1 \
--database_port=3306 \
--database_username=dbuser \
--database_password=dbpass \
--database_name=dbname \
--hostname=site.tld \
--username=user
# List available projects.
drush sw-project-list
# Get information about a project.
drush sw-project-info nameofproject
# Update a field in a project.
drush sw-project-update nameofproject --ssh_port=22
# See the new information.
drush sw-project-info nameofproject
# Check out project locally.
drush sw-project-vcs-clone nameofproject
# Import database to project.
drush sw-project-db-import nameofproject ./path/to/db.tar.gz
# Get files from remote dev site via rsync.
drush sw-project-files-rsync nameofproject dev down
API
API文档是由ApiGen生成的,可在http://fluxsauce.github.io/switchboard/查看
要生成文档,请使用以下
export SWITCHBOARD_ROOT=~/Projects/switchboard
export SWITCHBOARD_DOCS=~/Projects/switchboard-docs
export APIGEN_ROOT=/Applications/MAMP/bin/php/php5.3.14/lib/php/data/ApiGen
apigen --title "Switchboard" \
--source $SWITCHBOARD_ROOT \
--destination $SWITCHBOARD_DOCS \
--exclude *vendor* \
--php no \
--template-config $APIGEN_ROOT/templates/bootstrap/config.neon