Git version information in Symfony2 WDT

At LeaseWeb we are migrating from SVN to Git. Not only because we like to work with cutting-edge technology, but also because Git allows different ways of working, like “pushing to production“.

We mentioned before that we have the LswVersionInformationBundle that shows Subversion information in Symfony2’s Web Debug Toolbar. We are proud to tell you that the same bundle now supports Git as well! Screenshots:

git_info

Picture 1: Git information in the Symfony2 web debug toolbar

git_pane

Picture 2: This information is shown when you click the Git icon in the toolbar

svn_info

Picture 3: Subversion information in the Symfony2 web debug toolbar

svn_pane

Picture 4: This information is shown when you click the SVN icon in the toolbar

The code can still be found on Github and installed using composer.

Subversion information in Symfony2

version_information

In december 2011 we created the lwTestingInformationPlugin for Symfony1. A lot has happened since: we migrated to Symfony 2.0 and later even to Symfony 2.1. Therefor we can no longer use that old plugin. We miss it, because it really helped our testers to identify the branche/tag or revision they were testing. That is why we ported it to Symfony2. We also added it to packagist so you can easily load it using composer. To install add the following to your ‘composer.json’ file:

{
    require: {
        "leaseweb/version-information-bundle": "dev-master"
        ...
    }
}

The next thing you should do is install the bundle by executing the following command:

   php composer.phar install leaseweb/version-information-bundle

Finally, add the bundle to the registerBundles function of the AppKernel class in the ‘app/AppKernel.php’ file:


public function registerBundles()
{
    $bundles = array(
        // ...
        new Lsw\VersionInformationBundle\LswVersionInformationBundle(),
        // ...
    );

Now the Subversion information should show up with a little ‘svn’ icon in your debug toolbar.

Do you like our bundles? You can find them on GitHub and Packagist!

Subversion revision information in the Symfony debug toolbar

At LeaseWeb we are very serious about software development and that is why we hire software testers. These people do risk analysis, think of new test cases, execute them and organize them in test suites using TestLink. We also use PHP and are great fans of the Symfony MVC framework. Being serious about Agile software development means that we do TDD using unit tests and functional test. For this we use the Symfony build-in unit and functional tests. We also use Selenium for creating browser-driven test suites. The advantages of Selenium over the functional tests in Symfony are cross browser testing and JavaScript testing.

We have this product called “SSC” (this is the hosting control panel for the customers) and we test it thoroughly and often. For this product we have a DTAP environment to do testing and acceptance testing. Within the tests of this product the testers encountered a challenge: How do the testers know what revision of our application they are testing and what branch they are testing? This is especially a problem with acceptance testing where interactions between various systems are tested. Because the testers do not have command line access on the Linux machines that run the acceptance environment they cannot simply issue the “svn info” command like developers can.

To solve this problem we wrote a Symfony plugin called “lwTestingInformationPlugin”. It shows the “svn info” command output in a popup that is accessible from the Symfony debug toolbar. Even though it was extremely easy to write, it could be very useful. We made it available for download, so if you think it might be useful for your project as well, please try it and send us your feedback!

Click here to download the plugin (lwTestingInformationPlugin.tar)

TestLink = http://www.teamst.org/
Symfony = http://www.symfony-project.org
Selenium = http://seleniumhq.org/
Subversion = http://subversion.apache.org