blackpanda-media / etcd-php
Fork of PHP client for Etcd v3
Installs: 3 304
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 0
Forks: 39
Open Issues: 0
Requires
- php: 7.4.* || 8.0.* || 8.1.*
- ext-json: *
- guzzlehttp/guzzle: 7.4.*
Requires (Dev)
- friendsofphp/php-cs-fixer: 3.*
- phpmd/phpmd: 2.*
- phpstan/phpstan: 1.*
- phpunit/phpunit: 9.*
- roave/security-advisories: dev-master
- squizlabs/php_codesniffer: 3.*
This package is not auto-updated.
Last update: 2024-11-21 11:11:58 UTC
README
PHP client for Etcd v3
Requirements
- PHP 7.4, 8.0 or 8.1
- Composer
Installation
composer require blackpanda-media/etcd-php
Usage
<?php require 'vendor/autoload.php'; $client = new \BPM\Etcd\Client('127.0.0.1:2379'); /*********** kv ***********/ // set value $client->put('redis', '127.0.0.1:6379'); // set value and return previous value $client->put('redis', '127.0.0.1:6579', ['prev_kv' => true]); // set value with lease $client->put('redis', '127.0.0.1:6579', ['lease' => 7587822882194199413]); // get key value $client->get('redis'); // get all keys $client->getAllKeys(); // get keys with prefix $client->getKeysWithPrefix('/v3/service/user/'); // delete key $client->del('redis'); // compaction $client->compaction(7); /************ lease *****************/ $client->grant(3600); // grant with ID $client->grant(3600, 7587822882194199413); // revoke a lease $client->revoke(7587822882194199413); // keep the lease alive $client->keepAlive(7587822882194199413); // retrieve lease information $client->timeToLive(7587822882194199413); /************ auth role user **************/ // enable authentication $client->authEnable(); // disable authentication $client->authDisable(); // get auth token $client->authenticate('user', 'password'); // set auth token $client->setToken($token); // clear auth token $client->clearToken(); // add a new role $client->addRole('root'); // get detailed role information $client->getRole('root'); // delete a specified role $client->deleteRole('root'); // get lists of all roles $client->roleList(); // add a new user $client->addUser('user', 'password'); // get detailed user information $client->getUser('root'); // delete a specified user $client->deleteUser('root'); // get a list of all users. $client->userList(); // change the password of a specified user $client->changeUserPassword('user', 'new password'); // grant a role to a specified user $client->grantUserRole('user', 'role'); // revoke a role of specified user $client->revokeUserRole('user', 'role'); // grant a permission of a specified key or range to a specified role $client->grantRolePermission('admin', \BPM\Etcd\Client::PERMISSION_READWRITE, 'redis'); // revoke a key or range permission of a specified role $client->revokeRolePermission('admin', 'redis');