/** * @param array $options * * @return Service */ private function getDefaultIdentityService(array $options) : Service { if (!isset($options['authUrl'])) { throw new \InvalidArgumentException("'authUrl' is a required option"); } return Service::factory(new Client(['base_uri' => Utils::normalizeUrl($options['authUrl']), 'handler' => HandlerStack::create()])); }
private function httpClient(string $baseUrl, HandlerStack $stack) : ClientInterface { $clientOptions = ['base_uri' => Utils::normalizeUrl($baseUrl), 'handler' => $stack]; if (isset($this->globalOptions['requestOptions'])) { $clientOptions = array_merge($this->globalOptions['requestOptions'], $clientOptions); } return new Client($clientOptions); }
public static function getAuthOptsV2() { $httpClient = new Client(['base_uri' => TransportUtils::normalizeUrl(getenv('OS_AUTH_URL')), 'handler' => HandlerStack::create()]); return ['authUrl' => getenv('OS_AUTH_URL'), 'region' => getenv('OS_REGION_NAME'), 'username' => getenv('OS_USERNAME'), 'password' => getenv('OS_PASSWORD'), 'tenantName' => getenv('OS_TENANT_NAME'), 'identityService' => Service::factory($httpClient)]; }
/** * Load a token for the Compute Service * * @param String $opt serialized token * * @return void */ public function loadComputeBackup($opt) { $options = $this->optionsGlobal['Common']; $options['catalogName'] = 'nova'; $options['catalogType'] = 'compute'; $options['region'] = 'RegionOne'; $this->backup['Compute'] = $opt; $token = $this->unserializeToken($this->backup['Compute']['token']); $baseUrl = $this->backup['Compute']['baseUrl']; $stack = HandlerStack::create(); $stack->push(Middleware::authHandler($options['authHandler'], $token)); $this->addDebugMiddleware($options, $stack); $options['httpClient'] = new Client(['base_uri' => Utils::normalizeUrl($baseUrl), 'handler' => $stack]); $this->saveBackup('Compute', array('token' => $token, 'baseUrl' => $baseUrl)); $this->optionsGlobal['Compute'] = $options; }