Add your description here
Project description
google-cloud-helper
This repository contains common functions for easy access to Google Cloud Infrastructure, such as Big Query or Google buckets.
Example Usage
from google_cloud_helper.BigQueryHelper import BigQueryHelper
from google_cloud_helper.GoogleBucketHelper import GoogleBucketHelper
from google_cloud_helper.SecretManagerHelper import SecretManagerHelper
# BigQuery
bq_helper = BigQueryHelper("your-gcp-project-id")
exists = bq_helper.table_exists("your-gcp-project-id.dataset.table")
print(f"Table exists: {exists}")
# Google Cloud Storage
bucket_helper = GoogleBucketHelper("your-gcp-project-id")
bucket_exists = bucket_helper.bucket_exists("your-bucket-name")
print(f"Bucket exists: {bucket_exists}")
# Secret Manager
secret_helper = SecretManagerHelper()
my_secret = secret_helper.get_secret("your-gcp-project-id", "your-secret-id")
print("Successfully retrieved secret!")
Available Functions
BigQueryHelper
| Function | Description |
|---|---|
table_exists(table_id) |
Checks if a specific BigQuery table exists. |
create_dataset(dataset_id) |
Creates a new BigQuery dataset if it doesn't already exist. |
delete_table(table_id) |
Deletes a BigQuery table. |
create_table_from_df(...) |
Creates and populates a table from a pandas DataFrame, with options for partitioning and clustering. |
upload_df_to_table(table_id, df) |
Appends a pandas DataFrame to an existing BigQuery table. |
incremental_insert_with_deduplication(...) |
Inserts new rows from a DataFrame, avoiding duplicates based on a unique key. |
generate_bigquery_schema(df) |
Infers a BigQuery schema from a pandas DataFrame. |
GoogleBucketHelper
| Function | Description |
|---|---|
download_as_text(bucket, path) |
Downloads a file from a Google Cloud Storage bucket as text. |
bucket_exists(bucket_name) |
Checks if a specific Google Cloud Storage bucket exists. |
SecretManagerHelper
| Function | Description |
|---|---|
get_secret(project_id, secret_id) |
Retrieves the latest version of a secret from Secret Manager. |
Testing
To run the tests, execute the following command:
uv run pytest
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file google_cloud_helper-0.1.3.tar.gz.
File metadata
- Download URL: google_cloud_helper-0.1.3.tar.gz
- Upload date:
- Size: 8.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c43fd5ba6fb079e5faeb466ee5988fbe83b78851a19236135688727fda5edc2e
|
|
| MD5 |
f06939b691501db1f9d61b1cb613d0fc
|
|
| BLAKE2b-256 |
bb8d6fd4413af1c540250680c40008233665be842a7105cc949782807abb698b
|
File details
Details for the file google_cloud_helper-0.1.3-py3-none-any.whl.
File metadata
- Download URL: google_cloud_helper-0.1.3-py3-none-any.whl
- Upload date:
- Size: 10.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
547e9cac6ed4cf6e6ddc21c38c7a6ece466ae0ad6de98cc205f5f7f4421fd181
|
|
| MD5 |
cc6f724a2951694da46ffa2fdd2dfbf5
|
|
| BLAKE2b-256 |
e9217dd9da027a046f11248ca21a42a05ee074bfde8046a043b85843fa9361d2
|