How to retrieve your password?

We currently use a hand-rolled setup and configuration script and a hand-rolled continuous integration script to build and deploy our application. I am looking at formalizing this somewhat with a third party system designed for these purposes.

I have looked into Phing before, and I get that it’s basically like Ant. But, my Ant experience is somewhat limited so that doesn’t help me much. (Most of the Java work I have done was just deployed as a jar file).

I have looked into Cruise Control before, and I understand that phpUnderControl is a plug-in for CC. But, Phing says it also works with CC. So I am not clear on the overlap here. Do I need both Phing and phpUnderControl to work with CruiseControl, or are they mutually exlclusive?

What I need exactly is something that can:

Check out source from SVN
Install the database from SQL file
Generate some local configuration files from a series of templates and an ini file
Run all of our unit tests (currently ST, but easy to convert to PHPUnit) and send an email to the dev team if any tests break (with a stack trace of course)
Generate API documentation for the application and put it somewhere
Run a test coverage report
Now, we have just about all of this in one form or another. But, it’d be nice to have it all automated and bundled together in one process.

2 ANSWERS

February 16, 2017 at 9:55 am admin_lifexite

We’ve been using Phing, and the cost to set it up has been very low; it’s really easy to learn even if you don’t know ANT. I’ve had very bad experiences with CruiseControl (instability – going down randomly) – so I like the simplicity of Phing. Plus, it’s easily extensible using PHP (in case you have a custom task that they don’t support out of the box).

February 16, 2017 at 9:55 am admin_lifexite

phing is pretty much ant written in PHP where phpUnderControl adds support for PHP projects to CruiseControl and uses phing or ant on the backend to parse the build.xml file and run commands.

I just set up CruiseControl and phpUnderControl and it’s been working great. It checks out my SVN, runs it through phpDocumentor, PHP_CodeSniffer, and PHPUnit whenever we do a check in. Since it’s all based off of the build.xml file you can run just about any software you want through it.

Viewing 2 replies - 1 through 2 (of 2 total)

You must be logged in to reply to this topic.