Karo é um companheiro de linha de comando para um aplicativo Rails que torna mais fácil executar comandos de rotina localmente ou no servidor.
Github – https://github.com/rahult/karo
Site – http://rahult.github.io/karo/
Exemplo de coisas que pode fazer, para descansar, consulte karo help
karo db pull # Will sync the production MySQL database on to local machine
karo db console # Will open MySQL console on the server
karo console # Will open Rails console on the server
karo assets pull -e staging # Will sync the dragonfly assets from staging on to the local machine
karo log -f # Will tail the production log with -f argument
Você também pode escrever seus comandos personalizados
karo server {command} # Will try to find a command from .karo.yml or execute the one provided on the server
karo client {command} # Will try to find a command from .karo.yml or execute the one provided on the client
Poucas Suposições
- Você tem acesso SSH aos seus servidores
- Você tem a estrutura de diretório de implantação do Capistrano em seu servidor
[implantar para]
[implantar para] / releases
[implantar para] / releases / 20080819001122
[implantar para] / releases / …
[implantar para] / shared
[implantar para] / shared /config/database.yml
[implantar em] / shared / log
[implantar em] / shared / pids
[implantar em] / shared / system
[implantar em] / current -> [deploy_to] / releases / 20100819001122 - Você está usando MySQL como servidor de banco de dados
- Você está usando o Dragonfly para armazenar seus ativos
Estou trabalhando no suporte a outros bancos de dados e gerenciadores de ativos para versões futuras
Instalação
Karo é lançado como uma Ruby Gem. A gem deve ser instalada em um
aplicativo Ruby on Rails. Para instalar, basta adicionar o seguinte ao seu Gemfile:
# Gemfile
gem 'karo'
Depois de atualizar seu pacote, você pode usar a função Karo a partir da linha de comando
Uso (linha de comando)
karo help
Arquivo de configuração padrão (.karo.yml)
production:
host: example.com
user: deploy
path: /data/app_name
commands:
server:
memory: watch vmstat -sSM
top_5_memory: ps aux | sort -nk +4 | tail
client:
deploy: cap production deploy
staging:
host: example.com
user: deploy
path: /data/app_name
commands:
server:
memory: vmstat -sSM
client:
deploy: ey deploy -e staging -r staging