You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
74 lines
1.8 KiB
74 lines
1.8 KiB
# arango |
|
|
|
A simple Python wrapper for connecting to and interacting with ArangoDB. |
|
|
|
## Installation |
|
|
|
Install dependencies: |
|
|
|
```bash |
|
pip install -r requirements.txt |
|
``` |
|
|
|
You also need to install `env_manager` to help set up environment variables for ArangoDB: |
|
|
|
```bash |
|
pip install git+https://github.com/lasseedfast/env_manager.git |
|
``` |
|
|
|
## Usage |
|
|
|
Environment variables: |
|
|
|
- `ARANGO_HOST` |
|
- `ARANGO_DB` |
|
- `ARANGO_USERNAME` |
|
- `ARANGO_PWD` |
|
|
|
The package will use `env_manager` to set them automatically (first time you may need to provide a password). |
|
|
|
Example: |
|
|
|
```python |
|
from _arango import arango |
|
|
|
results = arango.execute_aql("FOR doc IN my_collection RETURN doc") |
|
``` |
|
|
|
## AdminArango: Database and User Administration |
|
|
|
The `AdminArango` class provides administrative functionality for ArangoDB, such as creating and deleting databases, managing users, and setting permissions. It connects to the `_system` database for these operations. |
|
|
|
Example usage: |
|
|
|
```python |
|
from _arango.arango import AdminArango |
|
|
|
admin = AdminArango() |
|
admin.create_database("mydb") |
|
admin.create_user("username", password="secret") |
|
admin.set_user_permission("username", "rw", "mydb") |
|
admin.list_databases() |
|
admin.delete_user("username") |
|
admin.delete_database("mydb") |
|
``` |
|
|
|
Features: |
|
- Create and delete databases |
|
- List all databases |
|
- Create and delete users |
|
- Set user permissions for databases and collections |
|
|
|
## Using as a Base for Your Own Project |
|
|
|
If you want to use this package as a starting point for your own ArangoDB utilities, you can clone the repository: |
|
|
|
```bash |
|
git clone https://git.edfast.se/lasse/arango.git |
|
``` |
|
|
|
You can then add your own methods and modify the code as needed. If you do not plan to sync changes back to the original repository, consider to remove or change the remote origin to avoid accidentally pushing changes to the original repo: |
|
```bash |
|
git remote remove origin |
|
``` |
|
|
|
|