What is a recommended setup in terms of source control, builds, testing, bug tracking, and deployment for a downloadable PHP application (a la Wordpress, phpBB, Magento, etc.)? As a developer working on the application, what would you expect? What about as a user of the application? Please describe a setup and workflow, as well as any resources you think might be relevant or helpful.
- Anybody can ask a question
- Anybody can answer
- The best answers are voted up and rise to the top
I've found the following approach to be workable for the app I maintain:
From the developer point of view I would prefer two ways:
But as a user I would prefer a download package (*.zip and *.tar.gz).
There should be
If you install the software there shoul be an installer.php, which checks the requirements and does the configuration work.
As far as I remember the roundcube webmailer had one of the best installer I know.
As a user
Everything that's been said already (single tarball, with an install script that does all the necessary environment checks).
Depending on the target market, don't require CLI access - some shared hosts don't allow this, and a lot of new users won't know how to use it anyway.