2017 © Pedro Peláez
 

symfony-bundle version-information-bundle

Adds output of SVN and Git 'status' commands to the Web Debug Toolbar

image

leaseweb/version-information-bundle

Adds output of SVN and Git 'status' commands to the Web Debug Toolbar

  • Wednesday, January 13, 2016
  • by LeaseWeb
  • Repository
  • 17 Watchers
  • 26 Stars
  • 20,380 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 5 Forks
  • 1 Open issues
  • 10 Versions
  • 0 % Grown

The README.md

LswVersionInformationBundle

screenshot, (*1)

screenshot, (*2)

How do the testers know what revision of our application they are testing and what branch or tag 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" and "svn status" (or "git log -1" and "git status") commands like developers can., (*3)

Read the LeaseWebLabs blog about LswVersionInformationBundle, (*4)

To solve this problem we wrote a Symfony bundle called LswVersionInformationBundle. It shows the output of the "svn info" and "svn status" (or "git log -1" and "git status") commands in a tab in the Symfony2 debug toolbar. This bundle is actually a rewrite of the Symfony1 "lwTestingInformationPlugin" we wrote a year ago that can be found on the link below., (*5)

Read the LeaseWebLabs blog about the Symfony1 version, (*6)

Installation

To install LswVersionInformationBundle with Composer just add the following to your 'composer.json' file:, (*7)

{
    require: {
        "leaseweb/version-information-bundle": "*",
        ...
    }
}

The next thing you should do is install the bundle by executing the following command:, (*8)

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

Finally, add the bundle to the registerBundles function of the AppKernel class in the 'app/AppKernel.php' file:, (*9)

``` php <?php // app/AppKernel.php, (*10)

public function registerBundles() { ..., (*11)

if (in_array($this->getEnvironment(), array('dev', 'test'))) {
    ...
    $bundles[] = new Lsw\VersionInformationBundle\LswVersionInformationBundle();
}

}, (*12)


Now the Subversion (or Git) information should show up with a little 'svn' (or 'Git') icon in your debug toolbar. ### Configuration If you are using a custom folder structure in your Symfony2 application you have to modify your `root_dir` parameter. Otherwise `collector` won't be able to locate your vcs folder. In your `config.yml` (if you have enabled the bundle only for dev environment use `config_dev.yml` instead)

LSW Version Information configuration

lsw_version_information: root_dir: path/to/your/root, (*13)



All options available with default values:

LSW Version Information configuration

lsw_version_information: root_dir: %kernel.root_dir%/../ settings: show_icon: true show_current_branch: true show_latest_revision: false show_dirty_files: true collectors: hg: Lsw\VersionInformationBundle\DataCollector\HgRevisionInformationCollector git: Acme\DemoBundle\DataCollector\MyOwnGitCollectorImplementation # This is how to override the default git implementation ```, (*14)

Registering additional collectors

Additional collectors can be registered through the collectors configuration (see above). A collector must implement the class Lsw\VersionInformationBundle\RevisionInformation\RevisionInformationCollectorInterface., (*15)

Equally, you can override the default git and svn collectors by specifying the collector key as git or svn respectively., (*16)

The Versions