2017 © Pedro Peláez
 

library acquia-php-sdk-v2

A PHP SDK for Acquia CloudAPI v2

image

typhonius/acquia-php-sdk-v2

A PHP SDK for Acquia CloudAPI v2

  • Friday, April 27, 2018
  • by typhonius
  • Repository
  • 1 Watchers
  • 4 Stars
  • 50,247 Installations
  • PHP
  • 2 Dependents
  • 0 Suggesters
  • 5 Forks
  • 2 Open issues
  • 7 Versions
  • 83 % Grown

The README.md

Acquia PHP SDK for CloudAPI v2

Build Status Total Downloads Coverage Status Quality Status Mutation testing badge, (*1)

License Latest Stable Version Latest Unstable Version, (*2)

This library provides the capability to develop tooling which integrates with the new version (2.0) of Cloud API., (*3)

The original Acquia Cloud SDK has been deprecated so build tools requiring modern PHP versions and packages should use this library., (*4)

Installation

The SDK can be installed with Composer by adding this library as a dependency to your composer.json file., (*5)

{
    "require": {
        "typhonius/acquia-php-sdk-v2": "^2"
    }
}

Generating an API access token

To generate an API access token, login to https://cloud.acquia.com, then visit https://cloud.acquia.com/#/profile/tokens, and click Create Token., (*6)

  • Provide a label for the access token, so it can be easily identified. Click Create Token.
  • The token has been generated, copy the api key and api secret to a secure place. Make sure you record it now: you will not be able to retrieve this access token's secret again.

Usage

Basic usage examples for the SDK., (*7)

<?php

require 'vendor/autoload.php';

use AcquiaCloudApi\Connector\Client;
use AcquiaCloudApi\Connector\Connector;
use AcquiaCloudApi\Endpoints\Applications;
use AcquiaCloudApi\Endpoints\Environments;
use AcquiaCloudApi\Endpoints\Servers;
use AcquiaCloudApi\Endpoints\DatabaseBackups;
use AcquiaCloudApi\Endpoints\Variables;
use AcquiaCloudApi\Endpoints\Account;

$key = 'd0697bfc-7f56-4942-9205-b5686bf5b3f5';
$secret = 'D5UfO/4FfNBWn4+0cUwpLOoFzfP7Qqib4AoY+wYGsKE=';

$config = [
    'key' => $key,
    'secret' => $secret,
];

$connector = new Connector($config);
$client = Client::factory($connector);

$application = new Applications($client);
$environment = new Environments($client);
$server      = new Servers($client);
$backup      = new DatabaseBackups($client);
$variable    = new Variables($client);
$account     = new Account($client);

// Get all applications.
$applications = $application->getAll();

// Get all environments of an application.
$environments = $environment->getAll($applicationUuid);

// Get all servers in an environment.
$servers = $server->getAll($environmentUuid);

// Create DB backup
$backup->create($environmentUuid, $dbName);

// Set an environment varible
$variable->create($environmentUuid, 'test_variable', 'test_value');

// Download Drush 9 aliases to a temp directory
$client->addQuery('version', '9');
$result = $account->getDrushAliases();
$drushArchive = tempnam(sys_get_temp_dir(), 'AcquiaDrushAliases') . '.tar.gz';
file_put_contents($drushArchive, $aliases, LOCK_EX);

// Download database backup
// file_put_contents loads the response into memory. This is okay for small things like Drush aliases, but not for database backups.
// Use curl.options to stream data to disk and minimize memory usage.
$client->addOption('sink', $filepath);
$client->addOption('curl.options', ['CURLOPT_RETURNTRANSFER' => true, 'CURLOPT_FILE' => $filepath]);
$backup->download($environmentUuid, $dbName, $backupId);

Documentation

Documentation of each of the classes and methods has been automatically generated by phpDocumentor and exists in the gh-pages branch. This is available for browsing on GitHub., (*8)

I just want to talk to the API without having to write code

The Acquia Cli Robo application creates a command line tool for communicating with the API using this SDK. Its purpose is to provide a simple mechanism for interacting with the API without having to write a line of code., (*9)

The Versions

27/04 2018

dev-logstream

dev-logstream

A PHP SDK for Acquia CloudAPI v2

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adam Malone

12/04 2018

dev-master

9999999-dev

A PHP SDK for Acquia CloudAPI v2

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adam Malone

12/04 2018

dev-deploy-code

dev-deploy-code

A PHP SDK for Acquia CloudAPI v2

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adam Malone

13/12 2017

1.0.2

1.0.2.0

A PHP SDK for Acquia CloudAPI v2

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adam Malone

27/11 2017

1.0.1

1.0.1.0

A PHP SDK for Acquia CloudAPI v2

  Sources   Download

MIT

The Requires

 

The Development Requires

by Adam Malone