<?php

/**
 * Copyright 2012-2014 Rackspace US, Inc.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
require dirname(__DIR__) . '/../vendor/autoload.php';
use OpenCloud\OpenStack;
// 1. Instantiate an OpenStack client.
$client = new OpenStack('{authUrl}', array('username' => '{username}', 'password' => '{password}'));
// 2. Obtain an Orchestration service object from the client.
$orchestrationService = $client->orchestrationService(null, '{region}');
// 3. Get stack.
$stack = $orchestrationService->getStack('{stackName}');
// 4. Get resource in stack.
$resource = $stack->getResource('{stackResourceName}');
// 5. Get stack resource event.
/** @var $resourceEvent OpenCloud\Orchestration\Resource\Event **/
$resourceEvent = $resource->getEvent('{stackResourceEventId}');
예제 #2
0
 public function testLoggerServiceInjection()
 {
     // Create a new client, pass stub via constructor options argument
     $stubLogger = $this->getMock('Psr\\Log\\NullLogger');
     $client = new OpenStack(Rackspace::US_IDENTITY_ENDPOINT, $this->credentials, array('logger' => $stubLogger));
     $client->addSubscriber(new MockSubscriber());
     // Test all OpenStack factory methods on proper Logger service injection
     $service = $client->objectStoreService('cloudFiles', 'DFW');
     $this->assertContains("Mock_NullLogger", get_class($service->getLogger()));
     $service = $service->getCdnService();
     $this->assertContains("Mock_NullLogger", get_class($service->getLogger()));
     $service = $client->computeService('cloudServersOpenStack', 'DFW');
     $this->assertContains("Mock_NullLogger", get_class($service->getLogger()));
     $service = $client->orchestrationService(null, 'DFW');
     $this->assertContains("Mock_NullLogger", get_class($service->getLogger()));
     $service = $client->volumeService('cloudBlockStorage', 'DFW');
     $this->assertContains("Mock_NullLogger", get_class($service->getLogger()));
     $service = $client->identityService();
     $this->assertContains("Mock_NullLogger", get_class($service->getLogger()));
     $service = $client->imageService('cloudImages', 'IAD');
     $this->assertContains("Mock_NullLogger", get_class($service->getLogger()));
     $service = $client->networkingService(null, 'IAD');
     $this->assertContains("Mock_NullLogger", get_class($service->getLogger()));
 }