joyent/php-manta

Joyent Manta Object Store SDK for PHP

2.0.0 2016-01-28 07:23 UTC

This package is not auto-updated.

Last update: 2024-04-19 08:04:37 UTC


README

php-manta is a community-maintained PHP SDK for interacting with Joyent's Manta system.

Build Status MPL licensed

Required PHP Framework Features

  • OpenSSL
  • JSON - Installed by default in newest versions
  • PHP 5.6+ or HHVM

Installation

Install using the packagist package via composer:

composer require joyent/php-manta

Configuration

Php-manta can be configured using its constructor or by passing nulls and letting environment variables and defaults configure the client. Here's a list of available environment variables and their defaults.

Default Environment Variable Description
https://us-east.manta.joyent.com:443 MANTA_URL URL to access Manta
MANTA_USER User account
MANTA_SUBUSER Subuser account
MANTA_KEY_ID RSA fingerprint id
$home/.ssh/id_rsa MANTA_KEY_PATH Path to RSA key
20 MANTA_TIMEOUT Timeout in seconds before failing a request
3 MANTA_HTTP_RETRIES Times to retry failed requests
GuzzleHttp\Handler\StreamHandler MANTA_HTTP_HANDLER PHP HTTP implementation name
false MANTA_NO_AUTH Disables authentication

Usage

For usage examples, see the directory examples for some sample scripts that use the API.

Subuser Difficulties

A common problem with subusers is that you haven't granted the subuser access to the path within Manta. Typically this is done via the Manta CLI Tools using the mchmod command.

For example:

mchmod +subusername /user/stor/my_directory

Contributing

We are seeking active contributors right now. Pull requests are welcome.

Credits

Kudos to the original author of php-manta - Robert Bates. He developed the library to be used with the Drupal Backup & Migrate Manta plugin and did all of the initial heavy lifting. On January 4th 2016, Robert transferred ownership of the repository to Joyent and changed the license from the GPLv3 to the MPLv2.

License

PHP Manta is licensed under the MPLv2. Please see the LICENSE file for more details.