2016-11-19 4 views
2

私は、それぞれ異なるGitリポジトリにあるフロントエンドとバックエンドのコードベースで構成されるアプリを持っています。Capistrano 3 - 複数のGitリポジトリから取得する

Capistrano v3を使用して、両方のコンポーネントを1台のサーバーに展開したいと考えています。
キャップを両方のリポジトリにフェッチする方法を教えてください。私は唯一の設定で、単一のURLを指定することもできますので...

おかげ

答えて

2

カピストラーノはコアでこれをサポートしていません。

私がこれを処理した主な方法は、各リポジトリのCapistranoデプロイメントスクリプトを用意し、個別に展開することです。彼らがお互いがどこにいるかを知る必要がある場合は、shared_dirsとシンボリックリンクを使用してリンクします。このアプローチの欠点は、フロントエンドに新しいコードを、バックエンドに古いコードを使用している場合、またはその逆の場合があります。

これが受け入れられない場合、あなたは...

...リポジトリをマージすることができます。それらが密接に結合されているため、別々に展開できない場合は、1つのコードベースにする必要があります。

... Gitサブモジュールを使用して、リポジトリの1つを他のリポジトリに埋め込みます。

...リポジトリの1つをチェックアウトするために自分のCapistranoタスクを作成します(エラーが発生する可能性があります)。

...別のデプロイメントツールを使用してください。カピストラーノは常にあらゆる場合に適切なツールではありません。

関連する問題