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.1.2.tar.gz
(16.5 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.1.2.tar.gz.
File metadata
- Download URL: csc_essentials-1.1.2.tar.gz
- Upload date:
- Size: 16.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.11 {"installer":{"name":"uv","version":"0.10.11","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 |
81a91594db5731094420a02a987ff59471418e76e6b9d3c8c9f3cf42625b805a
|
|
| MD5 |
6e65869112007e88d295599379cdb4ec
|
|
| BLAKE2b-256 |
828899accfdb73de05ae87c6c6a6294877e610e25231839350a5be4a5b5cb795
|
File details
Details for the file csc_essentials-1.1.2-py3-none-any.whl.
File metadata
- Download URL: csc_essentials-1.1.2-py3-none-any.whl
- Upload date:
- Size: 17.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.11 {"installer":{"name":"uv","version":"0.10.11","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 |
19e288900cd953d53628e12a70275b48cf960a10373aa1477b667f1a7a39c288
|
|
| MD5 |
3f1b6303d4d06900d1c7b6ee639a5769
|
|
| BLAKE2b-256 |
1e517f3e373d03da390e5a225d7ad4e8cfcab801d70aa03d6c0513480a6bb336
|