PHPアプリケーションを配布するのに最適なセットアップは何ですか?
https://softwareengineering.stackexchange.com/questions/6510
-
16-10-2019 - |
質問
ダウンロード可能なPHPアプリケーション(A La WordPress、PHPBB、Magentoなど)のソースコントロール、ビルド、テスト、バグ追跡、展開に関して推奨されるセットアップは何ですか?アプリケーションに取り組んでいる開発者として、何を期待しますか?アプリケーションのユーザーとしてはどうですか?セットアップとワークフロー、および関連性があるか、役立つと思われるリソースについて説明してください。
解決
私が維持しているアプリに対して、次のアプローチが実行可能であることがわかりました。
- アプリは単一のzipとして配布されており、動作中のPHPサーバーで解凍する必要があります。
- アプリに移動すると、一連の正気チェック(PHP環境、アプリの構成)が自動的に実行されます。エラーは、現れた問題を修正する方法を簡単に説明しています。
- 最初の実行時に、Sanity Checksが通過すると、構成ウィザードが起動されます。これは、設定ファイルが存在するとすぐに無効になります。
- すべての顧客の変更は、アプリの特別なサブフォルダーで行われ、古いインストールからコピーできます(このフォルダーの逆互換性が維持されます)。ファイルを解凍し、いくつかのフォルダーを中心にコピーすることでアップグレードを実行できることは、便利な機能です。
- ZIPファイル自体は、ソースリポジトリにチェックされるコマンドラインPHPスクリプトで構築されています。ビルドを実行することは、SVNアップデートと同じくらい簡単です。その後、build.phpへの呼び出しが続きます。
- 開発者ビルドは、リリースビルドと同じ方法で作成されます。これは、ビルドスクリプトに渡された「-no-optimize」フラグでのみ、削除と連結を防ぎます。
- ビルドスクリプト自体がPHPであるという事実は、開発者がビルドサーバーにログインすることなく、ビルドの作成方法に変更を加えることができることを意味します。
他のヒント
開発者の観点からは、2つの方法を好みます。
- SVN / Gitからソースを取得します
- パッケージバージョンのダウンロード
しかし、ユーザーとしては、ダウンロードパッケージ( *.zipおよび *.tar.gz)を好みます。
あるべきです
- readme.txt(またはpdfまたはhtml)
- install.txt(またはpdfまたはhtml)
- すべてのパラメーターのドキュメントを備えたデモ構成ファイル
ソフトウェアをインストールすると、shoulはinstaller.phpであり、要件をチェックして構成が機能します。
私が覚えている限り RoundCube WebMailerには、私が知っている最高のインストーラーの1つがありました。
ユーザーとして
すでに言われていることはすべて既に言われています(単一のターボール、必要なすべての環境チェックを行うインストールスクリプトを備えています)。
ターゲット市場に応じて、CLIアクセスを必要としないでください - 一部の共有ホストはこれを許可しません、そして、多くの新しいユーザーはとにかくそれを使用する方法を知りません。
所属していません softwareengineering.stackexchange