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.
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-0.4.0.tar.gz
(12.7 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-0.4.0.tar.gz.
File metadata
- Download URL: csc_essentials-0.4.0.tar.gz
- Upload date:
- Size: 12.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","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 |
37fc4091fdac078bcd08cfb867c199bd296a75a39dfff2486ff015a1f2c7b9d6
|
|
| MD5 |
9c8cc108069d6130e329f05525f4d4c1
|
|
| BLAKE2b-256 |
257f835f7d050820d535904f7c1af8197bba12a6a90f2571613b06a7cc4029d7
|
File details
Details for the file csc_essentials-0.4.0-py3-none-any.whl.
File metadata
- Download URL: csc_essentials-0.4.0-py3-none-any.whl
- Upload date:
- Size: 13.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","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 |
76601c1fb7dc61cb505b710d3dcf6e85a0ef317231aae28a50e4a16f38bfc17e
|
|
| MD5 |
378dff09fd49103b7d2201aa43088cfb
|
|
| BLAKE2b-256 |
81c33359cb571e8ecc5015b001645d68abc062cd431ac60341d0d2cea8ee7622
|