0

私は技術的ではないクライアントのためにRailsプロジェクトに取り組んできました。ただし、彼らは私に展開スクリプトを送信してほしいと思っています。これは、ネットワーク担当者がアプリケーションを展開するために使用します。

私はcapistranoを使用しています。ただし、問題は、上限がアプリ自体に大きく依存していることです。必要なのはスクリプトです。このスクリプトはcapとconfig/deploy.rbを使用しますが、ローカルシステムで最小限のセットアップが必要です。バックボーンのリポジトリはgitベースです。

これがcapistranoによって達成できない場合、他のデプロイメントユーティリティを知っている人はいますか?それにより、capが独立して機能するようになりますか?..(シンボリックリンクを作成し、:after_updateブロックでいくつかのrakeタスクを実行します)。

ありがとう、ハッサン

4

3 に答える 3

0

実行する Ruby 環境をセットアップするcap deployことが、「ネットワーク担当者」が喜んで行うものではない場合、かなり困難な戦いに直面することになります。これを軽減するためのいくつかの提案:

  • railsreadyスクリプトを使用して環境をセットアップしてもらいます。
  • インスタンスのデプロイに使用できる仮想マシン (おそらく Vagrant ボックス?) を提供します。
  • git ベースのデプロイを行っている場合は、デプロイヤー キーを設定する (そしてこれを配布する) か、それらを github プロジェクトに追加する (github を使用している場合) 必要があります。
  • プロジェクト全体をまとめて tarball として配布する (または rpm に入れる) ことを検討し、この方法で展開することを検討してください (これを行うための迅速で汚い方法は、本番環境と同じディストリビューションを実行しているマシンに展開し、展開を tar することです)。ディレクトリ)
  • Tomcat にデプロイするためのJRuby やwarblerなど、ネットワーク スタックにより適したスタックの使用を検討する
  • 最初のインストールでは、ペア プログラミングを行うか、少なくとも画面共有を行います。プラットフォームを好むか嫌いかの違いは、問題が発生したときにヘルプを利用できるかどうかにかかっている場合があります。
于 2012-07-30T07:54:21.017 に答える
0

Minaは Capistrano に似ていますが、Rails アプリケーション ディレクトリ内にあることに依存しません。

于 2012-08-14T09:27:23.197 に答える
0

1 つのオプションは、capistrano を使用して展開する Jenkins のようなものをセットアップすることです。クライアントは、jenkins ビルド URL をカールしてデプロイをトリガーできます。

于 2013-08-31T22:14:48.227 に答える