Biblioteca de utilitários essenciais para projetos CSC
Project description
csc-essentials
Pequeno utilitário para integração com Google Cloud (BigQuery, Secret Manager, Cloud Logging, Compute).
Instalação
pip install csc-essentials
Quickstart (exemplo rápido)
from google.cloud import bigquery
from csc_essentials.logging import GeradorLog
from csc_essentials.secrets import get_secrets
from csc_essentials.database import inserir_banco_dados
log = GeradorLog("exemplo")
# Ler segredo do Secret Manager (ex.: token Slack)
raw = get_secrets("projects/MEU_PROJ/secrets/SLACK_SECRET/versions/latest")
# Preparar cliente BigQuery
client = bigquery.Client()
# Carregar arquivo NDJSON para uma tabela
inserir_banco_dados(
arquivo_path="/tmp/dados.ndjson",
projeto="meu-projeto",
dataset="meu_dataset",
tabela="minha_tabela",
log=log,
client=client,
wait_job=True,
)
print("Upload iniciado")
Documentação
- Documentação por módulo em
docs/(vejadocs/overview.md). - Principais módulos:
logging,secrets,utils,database,oracle.
Contribuindo
- Abra uma issue descrevendo o problema ou feature.
- Envie um Pull Request com testes e descrição clara das mudanças.
- Formato de código: siga o estilo existing do projeto e execute os testes (
pytest).
Licença
Este repositório está licenciado conforme o arquivo LICENSE na raiz.
Notas rápidas
- Verifique permissões GCP ao usar
bigquery.Client()esecretmanager.SecretManagerServiceClient. - Em desenvolvimento local, você pode desativar o envio para Cloud Logging configurando
GCP_LOGGING_ATIVO=false.
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
csc_essentials-1.2.8.tar.gz
(17.4 kB
view details)
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 csc_essentials-1.2.8.tar.gz.
File metadata
- Download URL: csc_essentials-1.2.8.tar.gz
- Upload date:
- Size: 17.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d33ecb409c765bfb68792eef515a2d7c07a00b15898e8bdaca77911e1afc5244
|
|
| MD5 |
db9a73d2a6f925f2cf4f2d29190ae7a8
|
|
| BLAKE2b-256 |
6ed42ccbc29945aa16900294479fad29269f9bcdcf06cdbaaa330e4b082f5271
|
File details
Details for the file csc_essentials-1.2.8-py3-none-any.whl.
File metadata
- Download URL: csc_essentials-1.2.8-py3-none-any.whl
- Upload date:
- Size: 18.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e29d6de3fb01f48e6987abaf205cf24a0e44e286a54253a898da91bc2b061e21
|
|
| MD5 |
3eda909a26557a236aeed4a3f5733769
|
|
| BLAKE2b-256 |
a1b343f18040d6307bf7a0053b6366f1f27d9c6bbe037479a007dfd2ecc5e997
|