タグ

capistranoに関するaki77のブックマーク (54)

  • 9分43秒のデプロイを19秒にした話 - Akatsuki Hackers Lab | 株式会社アカツキ(Akatsuki Inc.)

    背景 アカツキではRailsゲームサーバを開発しています。インフラはAWSにあり、CloudFormation, Chef, Capistrano を用いて、Infrastructure as Code を実現しています。 エンジニアは普段ローカルマシンで開発していますが、ディレクター、レベルデザイナーなどは定義ファイルを変えた後、それを反映して動作を確認するための検証サーバ(以下、検証環境)を使っています。 検証環境へのデプロイも Capistrano で自動化しており、最初は問題が無かったのですが、ゲーム上のデータが増えることによって、一度のデプロイで10分程度かかるようになっていました。 以下、Capistrano ver.2系の話にはなりますが、検証環境のデプロイを高速化したので、その内容を紹介したいと思います。 現状分析 rsync について、capistrano_rsync_

    9分43秒のデプロイを19秒にした話 - Akatsuki Hackers Lab | 株式会社アカツキ(Akatsuki Inc.)
  • Capistrano 3への手引き - 今日のごはんは素麺です

    Capistrano、便利ですよね。 capistrano/capistrano 最近メジャーバージョンアップがあったのですが、使い方、というかスクリプトの書き方やお作法が変わり、「Capistrano 3にアップデートしたはいいけど全然動かなくてどうなってんだ」という流れはもはやお約束みたいです。 試しに僕も個人で作ってるウェブサイトのCapistranoをアップデートしてみたので、その上でこんなところに気を付けたいな、と思うポイントでも書いておきます。 capifyは使わない Capistranoを使うときは$ bundle installをし、次に$ bundle exec capify .とするのがお約束の流れですが、これからはcapifyを使ってもcap installを使ってねと言われます。 ですので: $ bundle exec cap installとしましょう。 マルチス

    Capistrano 3への手引き - 今日のごはんは素麺です
  • Capistrano3のデプロイフレームワークの使い方 - Qiita

    Capistranoはバージョン3から汎用的なデプロイフレームワークになりました。タスクのフックを利用することで簡単に自分のアプリケーション環境に特化したデプロイプロセスを記述することができます。 稿では、この汎用化されたデプロイ機能の使い方に焦点を絞って解説したいと思います。より基的なCapistrano3の解説は 入門 Capistrano 3 ~ 全ての手作業を生まれる前に消し去りたい | GREE Engineers' Blog がよくまとまっているので、そちらを参考にしてください。この参考記事では "5. Capistranoデフォルトタスクの消去" でCapistranoの新規導入時のコストを下げる目的で、このフレームワーク機能を消去しています。稿はこのフレームワーク機能の使い方を解説するものです。 deployとframeworkの2つの抽象度が用意されている Capi

    Capistrano3のデプロイフレームワークの使い方 - Qiita
  • capistrano をバージョン 3 にアップデートして時代の流れに乗る · けんごのお屋敷

    2013 年 6 月頃に capistrano のバージョン 3 がリリースされました。かなり久しぶりのメジャーバージョンアップで色々変わっているようです。 Intobox でもデプロイには capistrano を使っていて、今回 capistrano のバージョンアップをしましたので手順の紹介とハマったことなどをまとめたいと思います。 capistrano v3 capistrano v3 は、より良いモジュール化、より簡単なデバッグ、より高速なデプロイ、などを設計目標として掲げています。 変更点が多いのでアップグレードガイドが公式サイトより提供されています。基的にはここを見ながら進めていくのですが、やることといえば Gemfile に gem 'capistrano', '~> 3.0' を追加 bundle install bundle exec cap install をやって

  • Upgrade to Capistrano 3.0 - Qiita

    はじめに 「Capistrano のバージョンが上がったので使おうとしたら丸一日ハマっていた。」 「な… 何を言ってるのか わからねーと思うが (ry」 Table of Contents Gemfile cap install Capfile config/deploy.rb config/deploy/production.rb | staging.rb 参考文献 基的な使い方などはREADMEを読んでください。 まあ、読んでてもアレだったんですけどね。 Gemfile Capistranoはどのような言語やフレームワークからでも利用可能」by 公式サイトとのことで、もはやRailsだけのものではありません(以前からですけど)。 よって、体とは別に、プラグイン形式でGemを追加していきます。 group :development do # ... gem 'capistrano'

    Upgrade to Capistrano 3.0 - Qiita
  • 入門 Capistrano 3 ~ 全ての手作業を生まれる前に消し去りたい | GREE Engineering

    はじめに この記事はGREE Advent Calendar 2013年の21日目です。お楽しみください! こんにちは、アゴひげがダンディーだと評判の九岡です。GREEでは、JavaScalaを布教するための土台を固めるため、デプロイや監視の仕組みづくりなどを横断的にやっています。今回はその過程で得られた知識を「Capistrano 3の入門記事」という形で共有させていただきます。 この記事ではCapistrano 3の基礎をご紹介します。Capistrano 3はRubyをベースにしたサーバ操作およびデプロイの自動化ツールです。Capistrano 3を利用することで、デプロイなどの複雑なサーバ操作を自動化することができます。ここの記事では、特にデプロイに焦点をあてながら、Capistranoでサーバ操作を自動化する考え方と実現方法をご説明していきます。 Capistrano 3の習得

    入門 Capistrano 3 ~ 全ての手作業を生まれる前に消し去りたい | GREE Engineering
  • Chef の気まぐれ環境構築 〜季節の Capistrano を添えて〜 #jawsug

    Ansible、Vagrant、Serverspec などを用いた 「インフラのコード化」 手法について、初心者向けに解説します。

    Chef の気まぐれ環境構築 〜季節の Capistrano を添えて〜 #jawsug
  • cap shellにヒストリ機能をつけるGem作った - hitode909の日記

    デプロイツールのCapistranoに含まれる便利コマンドであるcap shellというので,いい感じにサーバーにsshみたいなことができる.サーバーのIPを書かずに,プロキシサーバーにつないでログを見るとか,設定を観察するとかできて便利. しかし,cap shellは,順番に標準入力を受け取ってサーバーで実行するだけという素朴な実装方法で,ヒストリを保存してくれない,という問題がある. 毎回アクセスログのファイル名をがんばって書いたりする必要があった. capistrano_shell_historyというGemを作った.これを使うと,cap shell上で実行したコマンドの履歴がファイルに保存されて,普通のシェルと同じ感じに,次にcap shellしたときに履歴が復元される.Readlineの機能が使えるので,Ctrl-rでログを検索とかできる. hitode909/capistran

    cap shellにヒストリ機能をつけるGem作った - hitode909の日記
  • デプロイツール比較 CapistranoとFabric

    by @dekokun on 2013/05/21 23:46 Tagged as: Capistrano, Fabric. 最近、Fabric, Capistranoと立て続けに2種類のデプロイツールを使ってデプロイ環境を構築する機会がありましたので、その際に感じた両者の利点を書いてみたいと思います。 両者の簡単な解説 そもそもCapistrano, Fabricについて、「片方は知っているけど片方は知らないよ」という人がいるかと思いますので、簡単な説明をします。 両方とも何かを知らない人は…「自動デプロイ」とかそのあたりで検索してみるといいんじゃないですかね。 Capistranoとは Ruby製のFabricみたいなものです Fabricとは Python製のCapistranoみたいなものです Fabricは私の中ではデプロイツールという認識なのですが、最近Chefと比較されること

    デプロイツール比較 CapistranoとFabric
  • Shinobra.com

    Shinobra.com Related Searches: Hyun Shin Shine Music The Shining The Shining Music Privacy Policy

  • A remote server automation and deployment tool written in Ruby.

    role :demo, %w{example.com example.org example.net} task :uptime do on roles(:demo), in: :parallel do |host| uptime = capture(:uptime) puts "#{host.hostname} reports: #{uptime}" end end Capistrano extends the Rake DSL with methods specific to running commands on() servers. For Any Language Capistrano is written in Ruby, but it can easily be used to deploy any language. If your language or framewor

  • webistranoを使ってたとえばZendFrameworkをデプロイしてみる

    Ruby on Rails のデプロイ自動化でよく使われる capistrano と、そのGUI環境の webistrano ですが、もちろん Ruby on Rails 以外にも使うことができます。 今回は ZendFramework のデプロイをしてみようと思います。 ゴール ここでは、以下のような状況のもと番環境にデプロイする準備をします。 github 上の master ブランチにあるソースコードをデプロイする。 リポジトリでは ZendFramework 体やログディレクトリなどは管理していない。 インストール capistrano は ruby 製です。まずは ruby がないと始まらないので最初に ruby をインストールします。1.8.6 以上が必要です。それから webistrano は DB として mysql を利用しますので、こちらもインストールしておきます。

  • デプロイ用gem CapistranoとMinaの比較 - 130単位

    no title no title Capistrano 多機能 capify -> cap setup -> cap deploy Capfile, config/deploy.rb バージョン管理しない共通ファイル/ディレクトリの管理に一工夫いる symlinkを張るタスクを定義する必要あり バージョン管理しない共通ファイル/ディレクトリは :shared_children 変数で管理できる 2013/06/10追記:[twitter:@znz]さんご指摘ありがとうございます git以外のSCMにも対応 remote-cache strategyは--recursiveなnon-bareリポジトリを保持 submodulesがあっても早い scpによるstrategyもある リリースパスにコピーしたあと.gitは消さない リリースのバージョンはタイムスタンプ capistrano-ex

  • 今更聞けないCapistranoでリリースの自動化 - プログラマでありたい

    ここ数年で開発の現場でAgile開発の文化や手法が、ずいぶんと取り入れられるようになってきているようです。アジャイル開発はその根底に文化が大事ですが、それを支えるツールというのも重要になってきます。ソース管理やビルド管理、テストの自動化と色々ありますが、今回はリリースの自動化のお話です。その中で主にRails使われることが多いCapistranoの設定と使い方です。 環境の説明 ・Ruby 1.9 ・Rails 3.2 ・Passenger ・GitSQLite3 目指す構成 今回は単純化する為に、1サーバの中にGitのリポジトリもApache+PassengerもDBも入れておきます。また複数の環境(開発、ステージング、番)にデプロイ出来るように、それぞれの構成を別けて記述するようにします。(capistrano-extを使用) 設定 必要モジュールのインストール $gem ins

    今更聞けないCapistranoでリリースの自動化 - プログラマでありたい
  • [Symfony][Capistrano] Capifony で Symfony2 のアプリケーションをデプロイする - Issei.M's Techlog

    今回は Symfony アプリを Capistrano で簡単にデプロイできる Capifony (http://capifony.org) の使い方を紹介します。 実行環境は Ruby 1.9.1 + Capistrano 2.14.2 です。 Capifony をインストールする RubyGems でインストールします。 $ gem install capifony 続いてデプロイする Symfony プロジェクト上で capifony コマンドを実行し、イニシャライズします。 $ cd /path/to/own_sf2pj $ capifony . これで Capifile と app/config/deploy.rb の2ファイルが自動生成されました。 更に次のコマンドで、実行できるタスクを確認してみます。 $ cap -T しかしここで以下のエラーが…。 "raise_if_co

    [Symfony][Capistrano] Capifony で Symfony2 のアプリケーションをデプロイする - Issei.M's Techlog
  • WebistranoをRails3.2.9に対応させた - yo_waka's blog

    アプリのデプロイやDBのマイグレーションに Capistrano を使っているのですが、PM やディレクターでもテンプレートの修正くらいならコミットしてデプロイできるようなやり方をいろいろ探していて、Capistrano の WebUI であるWebistrano に行き着きました。 これめっちゃいいじゃん!と思って見てみると、なんと最後の更新が2年前でRailsも2.3ではないか・・ あきらめずにググってみたら、id:antipopさんがRails3.2.5対応しているのを発見した。神対応すぎる。 Webistranoをruby1.9.3-p194 + Rails 3.2.5で動くようにした ペパボも Webistrano 使ってるのかー ただ、記事にも書かれている通り、元のリポジトリからかなり変更が加わっている感じで外部ライブラリのアップデートで簡単に死ぬ感じはする。 デプロイツールの

    WebistranoをRails3.2.9に対応させた - yo_waka's blog
  • CakePHP2アプリケーションをCapistranoでデプロイする

    アプリケーションのデプロイを自動化すべきなのは言うまでもないことです。 一応手動でデプロイを行う場合の問題点について整理しておくと以下になります。 プロジェクトの期間中そして運用に入ってからも何度も手でデプロイするということはとてつもなく多くの時間を手作業に費やすことになるデプロイ先の環境の数が多くなればなるほど作業の時間も増える手作業で作業すると間違えやすい。特に手順が複雑だったり環境が多かったりすると確率は飛躍的にあがるもしデプロイしたアプリケーションに問題があってすぐに戻さなければならない場合に多くの時間がかかる。場合によってはビジネス上の機会損失に繋がる来は価値を生むフィーチャーを実装することに時間をかけたいはずが、こういうことをやっているとどんどん時間がなくなっていきます。また手作業のリスクや消費される時間を恐れてデプロイの回数を減らしてしまうのは、ビジネス側からみると納得いか

    CakePHP2アプリケーションをCapistranoでデプロイする
  • Capistrano の対抗馬? Mina の導入方法 - Qiita

    # set: キーに対して値を設定する (Mina の設定用) set :user, 'username' p user # => "username" (set したデータはメソッドとして呼び出せる) # desc: task の前に書いてタスクに説明を付ける desc "タスクの説明" # task: タスクを定義する task :mytask => [:subtask] do # subtask を前提タスクとして mytask を定義 # queue: リモートで "touch hoge.txt" を実行するコマンドを実行キューに追加 queue 'touch hoge.txt' # queue!: --verbose モードでコマンドが出力される以外は queue と同じ queue! 'rm -f hoge.txt' # invoke: タスク another を実行 invo

    Capistrano の対抗馬? Mina の導入方法 - Qiita
  • Mina

    Mina lets you build and run scripts to manage your app deployments on servers via SSH. $ gem install mina $ mina Really bloody fast Mina works really fast because it’s a deploy Bash script generator. It generates an entire procedure as a Bash script and runs it remotely in the server. $ mina deploy --verbose -----> Creating the build path $ mkdir tmp/build-128293482394 -----> Cloning the Git repos

    aki77
    aki77 2012/11/02
    デプロイツール
  • Capistranoでタスクの実行対象サーバを絞り込む方法 - idesaku blog

    Railsアプリのデプロイツールとしてデファクトスタンダード的な位置にあるCapistranoについて。 TL;DR HOSTSとROLESではなく、HOSTFILTERとHOSTROLEFILTERを使え。 タスクの実行先制限方法 Capistranoは、デプロイ先サーバに"ロール"を設定し、特定のロールに所属するサーバ全てに対して一括でなにかしらの処理を実行させることができる。 # deploy.rb server 'webserver1' :web server 'webserver2' :web server 'dbserver', :db, :primary => true ... task :do_something, :roles => :web do ... end cap do_something #=> webserver1, webserver2に対してのみdo_so

    Capistranoでタスクの実行対象サーバを絞り込む方法 - idesaku blog