Skip to main content

A utility package for AWS S3 and MongoDB operations

Project description

ripikutils

ripikutils is a Python package designed to provide utility functions for MongoDB operations and AWS S3 interactions, specifically tailored for internal use at Ripik Tech.

PyPI version License: MIT

Table of Contents

Creation of Secret Manager

Every secret manager added should follow these guidelines:

  • Format: ripikutils/{clientName}/{useCase}
  • Data added inside the secret should at least include the following values:
    • mongoURI
    • dbName
    • useCase
    • s3Bucket

Installation

You can install ripikutils using pip:

pip install ripikutils

Features

  • MongoDB data filtering, insertion, updating, and deletion
  • AWS S3 operations (upload, download, delete, list)
  • Temporary directory management for image processing

Usage

MongoDB Operations

Initialize Mongo Client

Initialize MongoDB client using client name and its usecase

from ripikutils import initialize_mongo

mongo_client = initialize_mongo(client_name, usecase)

Apply Filter

Apply basic filter to your MongoDB query

filtered_data = mongo_client.apply_filter(collection, filter_params)

Insert Document

Insert documents to your MongoDB collection

mongo_client.insert(collection, document)

Update Document

Update a document in your MongoDB collection

mongo_client.update(collection, filter_params, update_params)

Delete Document

Delete a document from your MongoDB collection

mongo_client.delete(collection, filter_params)

AWS S3 Operations

Initialize AWS s3 Client

Initialize S3 Client using client name and usecase

from ripikutils import initialize_s3

s3_client = initialize_s3(client_name, usecase)

Upload Object/File

Upload a file to S3 using previously created s3_client

s3_client.upload_s3_object(file_path, object_name)

Download Object/File

Download a file from S3 using previously created s3_client

s3_client.download_s3_object(object_name, local_file_path)

Delete Object/File

Delete a file from S3 using previously created s3_client

s3_client.delete_s3_object(bucket_name, object_name)

Get Presigned URL

Get a presigned URL for a file in S3 using previously created s3_client

presigned_url = s3_client.get_presigned_url(object_name)

List Objects in S3 Bucket

List objects in a S3 bucket using previously created s3_client

objects = s3_client.list_s3_objects()

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contact

For any queries or support, please contact the Ripik Tech team at vaibhav@ripik.ai.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ripikutils-0.9.1.tar.gz (9.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ripikutils-0.9.1-py3-none-any.whl (12.5 kB view details)

Uploaded Python 3

File details

Details for the file ripikutils-0.9.1.tar.gz.

File metadata

  • Download URL: ripikutils-0.9.1.tar.gz
  • Upload date:
  • Size: 9.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.10.16

File hashes

Hashes for ripikutils-0.9.1.tar.gz
Algorithm Hash digest
SHA256 c7410b6d18dbf3d6c404ec797398281618705984c08e78a91fb2276452dd65fd
MD5 3200cef97e5dcd85eae9f304d39028e6
BLAKE2b-256 1b5a10299ce2e76da892bc0a2e1f080dc83ed794a39f5eb80d8aa4c13866f303

See more details on using hashes here.

File details

Details for the file ripikutils-0.9.1-py3-none-any.whl.

File metadata

  • Download URL: ripikutils-0.9.1-py3-none-any.whl
  • Upload date:
  • Size: 12.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.10.16

File hashes

Hashes for ripikutils-0.9.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a393cf5427c0722a8b9bea5d4d7dcdaab8b78ab2ba1011f6b8ed3a86a9ae5606
MD5 a209f87f2d92133581f02239711dee57
BLAKE2b-256 d6536d69e6adfe35213ddcfabd611c9f0f3e7912e625209c6f0c533be3e8f50a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page