ping について質問があります。アプリケーションを展開するためにローカルの開発マシンで使用するか、それとも本番マシンから ssh 経由で呼び出すか? Eran Galperin ( What is your preferred PHP deployment strategy )の手順をどこで実行すればよいかわかりません。私は展開スクリプトの初心者です。だから許してください:)
マルコ
ping について質問があります。アプリケーションを展開するためにローカルの開発マシンで使用するか、それとも本番マシンから ssh 経由で呼び出すか? Eran Galperin ( What is your preferred PHP deployment strategy )の手順をどこで実行すればよいかわかりません。私は展開スクリプトの初心者です。だから許してください:)
マルコ
通常、デプロイ スクリプトは 2 つあり、1 つはローカルで実行し、リモート サーバーに ssh 接続してからリモート スクリプトを開始します。
ローカル スクリプトは、svn export
最初にコンテンツを zip してリモート サーバーにプッシュ (scp) することがあります。リモート スクリプトは、移行、サービスの再起動などを行います。
基本的な戦略は、ローカル マシンでビルド (基本的にはオンラインに配置できる Web アプリケーションのコピー) を作成し、それをサーバーにデプロイすることです。
これをローカル マシンで実行すると、PHPing が運用サーバーに接続され、Web サイトがデプロイされます。:)
Phing はさまざまな方法で適用できます。
展開方法に関するディレクティブがない場合、通常、最初にローカル コピーから "テスト ビルド" を生成し、それが意図したとおりに機能しているかどうかをチェックしてから、生産的なビルドを生成するのが最善の方法です。
開発環境で特定のルールに従わなければならない場合は、それらの要求を満たすように Phing を簡単に適応させることができます。
私は phing deploy スクリプトを開発し、あなたが説明した両方の方法でそれを使用しました。Phing ライブラリと依存関係がローカルまたはリモート マシンにインストールされている限り、どちらの方法でも実行できます。実際、どの環境からでも実行できることは利点です。
私の経験を詳しく説明しますが、すべての人は自分のプロジェクト/スタジオのニーズと要件の縮図の中に住んでいるので、私にとってうまくいくものは他の人にはうまくいかない可能性があることに注意してください.
展開は通常、ビジネスにとって非常に重要であり、毎回まったく同じ方法で行う必要があると思います。多数の人が展開を行っている場合、悪い習慣や手順が発散しやすく、ミスが発生する可能性があります。誰もが同じ手順を使用している場合、ミスの可能性がはるかに低くなるため、phng による自動展開は便利です。開発者は「phing deploy」や「phing build」などの簡単なコマンドを実行するだけでよいため、Phing を使用すると厳密な手順に従うことが容易になります。
元の質問に戻りますが、これらの手順をローカルの開発マシンだけでなく、ステージング、テスト、運用サーバーでも遵守することも役立ちます。人間と同じように、マシンにはマシンごとに異なる小さな特異性がある可能性があるためです。phing を使用すると、どのエンタープライズ マシンでも同じ結果が得られるスクリプトを開発できます (コードの強度と意図にもよりますが、phing はその理想を簡単に満たすことができる形式になっています)。したがって、開発ボックスから phing ビルドを実行すると、理想的には、テスト ボックスまたは運用サーバーから実行した場合と同じ効果が得られます。どのマシンでも同じ方法でデプロイを実行できれば、
コードを本番環境にデプロイするときとまったく同じ手順で、コードをローカル マシンにデプロイできるのは本当に素晴らしいことです。
何をするのが最善かというと、上記のすべてではないのはなぜですか? ローカルで実行できる場合は、リモートで実行できます。展開手順が強力な場合、結果は同じになります。
両方の方法で行うことができます。開発中にツールをローカルで実行してテストを実行し、一般的にコードが良好な状態であることを確認できます。サーバーの自動化 (選択した場合) は、テストを実行し、ドキュメントを生成し、テストまたは運用セットアップに変更をデプロイすることもできます。
ローカルで実行すると、プロセスがサーバーのセットアップで停止する可能性が減少しますが、CI は定期的に機能して、間違いによって何も壊れていないことを確認します。