srf/cloud-stack-client-bundle

Symfony bundle 'SRFCloudStackClientBundle' to generate and use client services for cloudstack.

Installs: 46

Dependents: 0

Stars: 3

Watchers: 18

Open Issues: 5

Language: PHP

v0.3.0 2013-04-02 06:18 UTC

README

Latest Stable Version Build Status

knpbundles.com SensioLabsInsight

Description

Integrates a full-functional cloudstack API client into symfony. The bundle itself provides a client class generator and a bunch of symfony-services utilizing the generated PHP client classes.

Visit the project page mmz-srf.github.com/SRFCloudStackClientBundle

Features

  • Feature complete cloudstack API client in PHP
  • Facade classes for each documentation topic
  • All facades are available as Symfony2 services
  • API client generator, which creates PHP classes and Symfony services from API documentation so you can easyly generate client classes for your cloudstack version
  • Use it as Symfony2 bundle or standalone
  • Logger and profiler for cloudstack API requests
  • Fully configurable

Installation

Get the Bundle

Choose your version from packagist.org and add a requirement to your composer.json:

Using the console:

php composer.phar require srf/cloud-stack-client-bundle:v0.2

Composer will add the dependency to your configuration.

Alternatively, you can edit your composer.json manually and add the following line:

"require": {
    ...
    "SRF/CloudStackClientBundle": "dev-master"
}

Register the Bundle

Add the bundle in your app/AppKernel.php like this:

public function registerBundles()
{
    $bundles = array(
        // ...
        new SRF\Bundles\CloudStackClientBundle\SRFCloudStackClientBundle(),

Update your dependencies

Run php composer.phar update srf/cloud-stack-client-bundle

Configuration

Add the basic configuration for your cloudstack API endpoint to your app/config/config.yml:

srf_cloud_stack_client:
    generator:
        api_doc_url: "http://download.cloud.com/releases/3.0.6/api_3.0.6/TOC_Domain_Admin.html"

    client:
        settings:
            endpoint: "https://my.cloudstack.tld/client/api"
            api_key: "my1234api89key"
            secret_key: "my2198371very0219381long2983719238u1api213324872secret32131"

The full configuration reference can be found here.

Clear the caches

Run php app/console cache:clear

Contributing

For bug reporting, please use the GitHub issue tracker.

Pull Requests are welcome. When contributing to this Bundle, you must follow the Symfony Coding Standards Please use this template for PR's.

License

The Bundle is licensed under MIT. For details, see LICENSE.

Maintained by @ymc-frne and @mms-gianni.