Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/connor-makowski/azure_utils
https://github.com/connor-makowski/azure_utils
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/connor-makowski/azure_utils
- Owner: connor-makowski
- License: mit
- Created: 2023-08-15T20:09:57.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-01-11T19:37:45.000Z (about 1 year ago)
- Last Synced: 2024-09-16T23:59:19.541Z (4 months ago)
- Language: Python
- Size: 159 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Azure Utils
[![PyPI version](https://badge.fury.io/py/azure_utils.svg)](https://badge.fury.io/py/azure_utils)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)Azure Utilities for python
## Documentation
[Technical documentation](https://connor-makowski.github.io/azure_utils/azure_utils/blob_storage.html) can be found [here](https://connor-makowski.github.io/azure_utils/azure_utils/blob_storage.html).## Setup
Make sure you have Python 3.6.x (or higher) installed on your system. You can download it [here](https://www.python.org/downloads/).
Recommended (but Optional) -> Expand this section to setup and activate a virtual environment.
- Install (or upgrade) virtualenv:
```
python3 -m pip install --upgrade virtualenv
```
- Create your virtualenv named `venv`:
```
python3 -m virtualenv venv
```
- Activate your virtual environment
- On Unix (Mac or Linux):
```
source venv/bin/activate
```
- On Windows:
```
venv\scripts\activate
``````
pip install azure_utils
```### Basic Usage
```py
import os, sys
from azure_utils.blob_storage import AZContainer# Get the working directory of this file
wd=os.path.abspath(os.path.dirname(sys.argv[0]))# Create a container object
az = AZContainer(
account_url="https://.blob.core.windows.net",
account_key="",
container_name=""
)# Get a list of all files in the container and print the first 5
files = az.list_files(remote_folderpath='/')
print(files[:5])# Upload a file to the container
az.upload_file(
remote_filepath='/test.csv',
local_filepath=f'{wd}/test_data/upload/test.csv',
overwrite=True
)# Download the file from the container
az.download_file(
remote_filepath='/test.csv',
local_filepath=f'{wd}/test_data/download/test.csv',
overwrite=True,
smart_sync=True
)# Delete the file from the container
az.delete_file(
remote_filepath='/test.csv'
)# Upload a folder to the container
az.sync_to_remote(
remote_folderpath='/',
local_folderpath=f'{wd}/test_data/upload/',
overwrite=True,
)# Download the folder from the container
az.sync_to_local(
remote_folderpath='/',
local_folderpath=f'{wd}/test_data/download/',
overwrite=True,
smart_sync=True,
)# Delete all files in the container
az.delete_folder(
remote_folderpath='/',
)# Delete all local metadata
az.clear_local_meta(f'{wd}/test_data/')
```Contributors:
- Alice Zhao
- Connor Makowski