typhonius / acquia-php-sdk-v2
Acquia CloudAPI v2 的 PHP SDK
3.3.1
2024-08-18 17:56 UTC
Requires
- php: ^8.0 | ^8.1 | ^8.2
- guzzlehttp/guzzle: ^7.2
- league/oauth2-client: ^2.4
- symfony/cache: ^5 | ^6
- symfony/filesystem: ^5.4 | ^6
Requires (Dev)
- ext-json: *
- eloquent/phony: dev-main as 5.0.2
- eloquent/phony-phpunit: ^7
- overtrue/phplint: ^9
- php-coveralls/php-coveralls: ^2.0.0
- phpstan/phpstan: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- phpunit/phpunit: ^9
- slevomat/coding-standard: ^8.4
- squizlabs/php_codesniffer: ^3.9.1
- dev-master
- 3.3.1
- 3.3.0
- 3.2.1
- 3.2.0
- 3.1.1
- 3.1.0
- 3.0.9
- 3.0.8
- 3.0.7
- 3.0.6
- 3.0.5
- 3.0.4
- 3.0.3
- 3.0.2
- 3.0.1
- 3.0.0
- 2.6.0
- 2.5.0
- 2.4.0
- 2.3.0
- 2.2.0
- 2.1.0
- 2.0.17
- 2.0.16
- 2.0.15
- 2.0.14
- 2.0.13
- 2.0.12
- 2.0.11
- 2.0.10
- 2.0.9
- 2.0.8
- 2.0.7
- 2.0.6
- 2.0.5
- 2.0.4
- 2.0.3
- 2.0.2
- 2.0.1
- 2.0.0
- 1.1.x-dev
- 1.1.2
- 1.1.1
- 1.1.0
- 1.0.4
- 1.0.3
- 1.0.2
- 1.0.1
- 1.0.0
- dev-dependabot/composer/dependencies-2b7ff6b82c
- dev-danepowell-patch-2
- dev-danepowell-patch-1
- dev-grasmash-patch-1
- dev-add-linked-resources
This package is auto-updated.
Last update: 2024-09-09 20:58:10 UTC
README
这个库提供了开发与 Cloud API 新版(2.0)集成的工具的能力。
原始的 Acquia Cloud SDK 已弃用,因此需要现代 PHP 版本和包的构建工具应使用此库。
安装
SDK 可以通过将此库作为依赖项添加到 composer.json 文件中使用 Composer 安装。
{ "require": { "typhonius/acquia-php-sdk-v2": "^2" } }
生成 API 访问令牌
要生成 API 访问令牌,请登录到 https://cloud.acquia.com,然后访问 https://cloud.acquia.com/#/profile/tokens,并点击 创建令牌。
- 为访问令牌提供一个标签,以便易于识别。点击 创建令牌。
- 令牌已生成,将 API 密钥和 API 密钥复制到安全的地方。请确保您现在记录它:您将无法再次检索此访问令牌的秘密。
使用方法
SDK 的基本使用示例。
<?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);
文档
每个类和方法的文档都已由 phpDocumentor 自动生成,并位于 gh-pages
分支中。 这些文档可在 GitHub 上浏览。
我只是想与 API 通信,而不必编写代码
Acquia Cli Robo 应用程序 使用此 SDK 创建了一个用于与 API 通信的命令行工具。其目的是提供一个无需编写代码即可与 API 交互的简单机制。