Skip to main content

A tool for database operations with encryption and decryption, configurable table and column names, and additional CLI features.

Project description

DCheck Logo

dsqlenv-Env

dsqlenv is a SQL database operation tool designed to help developers quickly synchronize common variables, such as API keys, across different environments or hosts. All variables stored in the database are encrypted using AES for enhanced security.

Table of Contents

Features

  • Environment Variable Management: Search and update environment variables using keywords or regular expressions.
  • Database Operations: Perform basic SQL operations like get, insert, update, and delete records securely.
  • AES Encryption: All variables stored in the database are encrypted to ensure sensitive information is protected.

Installation

To install dsqlenv, follow these steps:

  1. Clone the repository:

    git clone https://gitee.com/iint/dsqlenv.git
    cd dsqlenv
    
  2. Install the required dependencies:

    pip install -r requirements.txt
    
  3. Create a .env file in the root directory and define the necessary environment variables, as explained in the next section.

or

pip install dsqlenv

Configuration

Before using dsqlenv, ensure that your environment variables contain the following database information:

DB_USER='<username>'  # Database username for authentication
DB_PASSWORD='<password>'  # Password for the database user
DB_NAME='xxx'  # The name of the database to connect to
DB_HOST='xxx'  # Hostname or IP address of the database server
DB_PORT='xxx'  # Port number for the database connection (default for MySQL is 3306)
AES_KEY='xxx'  # AES encryption key for securing sensitive data
TABLE_NAME='dagent_info'  # The name of the table to perform operations on
ID_COLUMN='name'  # The column name that acts as the unique identifier for records
INFO_COLUMN='data'  # The column name that stores the data you want to retrieve or update

Make sure to replace the placeholder values with your actual database credentials.

Quick Usage

To get started with dsqlenv, you can use the command-line interface (CLI) for quick database and environment variable operations.

Basic Commands

  • Get a Record:

    dsqlenv db --action get --id <Record ID>
    
  • Insert a Record:

    dsqlenv db --action insert --id <Record ID> --data <Record data>
    
  • Update a Record:

    dsqlenv db --action update --id <Record ID> --data <Record data>
    
  • Delete a Record:

    dsqlenv db --action delete --id <Record ID>
    

Python Usage Examples

You can also use the dsqlenv library directly in your Python code.

from dsqlenv.core import SQL
from dsqlenv.config import load_config

# Load configuration
config = load_config()
db = SQL(config)

# Insert a new record
db.insert_data("api_key", "your_api_key")

# Get a record by ID
data = db.get_data_by_id("api_key")
print(data)

# Update a record
db.update_data("api_key", "new_api_key")

# Delete a record
db.delete_data("api_key")

CLI Usage Examples

Here are some examples of how to use the CLI effectively:

  • Search for Environment Variables:

    dsqlenv search-env --keyword SECRET
    
  • Update an Environment Variable:

    dsqlenv update-env --key API_KEY --value new_value
    
  • Search using Regular Expressions:

    dsqlenv re search '^SECRET'
    
  • Update using Regular Expressions:

    dsqlenv re update '^API_' 'new_value'
    

License

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

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

dsqlenv-1.0.1.tar.gz (12.8 kB view details)

Uploaded Source

Built Distribution

dsqlenv-1.0.1-py3-none-any.whl (11.3 kB view details)

Uploaded Python 3

File details

Details for the file dsqlenv-1.0.1.tar.gz.

File metadata

  • Download URL: dsqlenv-1.0.1.tar.gz
  • Upload date:
  • Size: 12.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.9

File hashes

Hashes for dsqlenv-1.0.1.tar.gz
Algorithm Hash digest
SHA256 3e485474ced3a6c584e0e9b419c0eedad61ec31f8488e26a2eb63e26456a04b0
MD5 fa6437dcdcca48239ba3c1b6c8182618
BLAKE2b-256 b9b9af37f553ce2112b9df9ff2caa96c148a48d9525e0eb88be057b6b64ea29c

See more details on using hashes here.

File details

Details for the file dsqlenv-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: dsqlenv-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 11.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.9

File hashes

Hashes for dsqlenv-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 cb0c9ae5006f22806fb6ffe66ecbac7304a18bbc8694c2b1fcf4cbde0da9778c
MD5 f16d567e02632c299d3e0dca01f1e674
BLAKE2b-256 d0fee73abdfbbc3ddc27e4f0ff64175143aba4caa850208a380a160e42b4f9aa

See more details on using hashes here.

Supported by

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