coms-consume-roan
Paquete de Python que consulta tickets del webservice SOAP "COMS" de CA ServiceDesk y los inserta en la base de datos MySQL automcae a través de stored procedures.
Flujo
- Control-M dispara la ejecución (3 veces al día).
DatabaseConexionesControlM.get_tabla_ejecuciones()obtiene el número de ejecución y el rango de horas a consultar. - Se calcula el rango de timestamps (hora de inicio del día anterior, hora de fin del día actual) y se consulta el webservice
consulta_tck_completede ServiceDesk (hasta 10 reintentos). - Cada ticket recibido se clasifica según su estado (
RE= resuelto,OP= abierto) y si es PBX, y se inserta en la tabla correspondiente vía stored procedure. - Se marca la ejecución como exitosa o fallida en la tabla de control.
Instalación
pip install coms-consume-roan
Configuración de credenciales
La conexión a la base de datos no usa variables de entorno para host/usuario/password: usa un archivo cifrado.
- Crear un archivo
access.txtcon el formato:host=... user=... password=... database=... port=... - Colocarlo en el directorio de datos seguros (ver variable de entorno abajo).
- Al ejecutar el paquete por primera vez,
access.txtse cifra encredentials.enc+secret.keyy se borra automáticamente.
Variable de entorno COMS_SECURE_DATA_DIR
Define dónde vive access.txt / credentials.enc / secret.key. Si no se define, se usa secure_data/ anclado a la raíz del proyecto (solo válido en desarrollo local, no en una instalación vía pip).
$env:COMS_SECURE_DATA_DIR = "C:\ruta\a\secure_data"
Logs
Cada módulo escribe su propio log bajo C:\logs\<módulo>\<módulo>_AAAAMMDD.log, con una subcarpeta errors\ para los mensajes de nivel error. Ruta no configurable actualmente.
Uso
Instalado, expone el comando:
coms-consume
Equivalente en desarrollo (sin instalar el paquete):
python -m coms_consume_roan.main
Nota: este comando reemplaza al antiguo
python main.py. Si el proceso está agendado en Control-M, hay que actualizar el comando invocado.
Tests
Pruebas unitarias con unittest en tests/. Todas las conexiones externas (BD, WS SOAP, cifrado de credenciales) están mockeadas — no requieren VPN, BD real ni access.txt.
python -m unittest discover -s tests -v
Build y publicación
python -m build
twine check dist/*
twine upload dist/*
Requisitos
Python 3.10 o superior. Acceso a la base de datos MySQL automcae y al WSDL de ServiceDesk requiere estar dentro de la red interna / VPN.
Metadata
Release files for coms-consume-roan 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| coms_consume_roan-0.1.0.tar.gz | 22.0 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| coms_consume_roan-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 38.8 kB
Release files / coms_consume_roan-0.1.0.tar.gz
| Download URL | coms_consume_roan-0.1.0.tar.gz |
|---|---|
| Size | 22.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8f4cfaab5a03d6f14a959e2d87ab30eb7b4050d8ddb197cc7f3b7e862face9d3
|
|
BLAKE2b-256 checksum How to use checksums |
1ba15e17a95b054ee6c8d337be79e27f2aef149dc2da70755a57bc7dac10fcef
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.6
|
Release files / coms_consume_roan-0.1.0-py3-none-any.whl
| Download URL | coms_consume_roan-0.1.0-py3-none-any.whl |
|---|---|
| Size | 16.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
05d5ad8a683cee1eba93b308c990efc4909e5a84f92d0204db24a91d02650a77
|
|
BLAKE2b-256 checksum How to use checksums |
48f9a32efb74b204a763bbfd70fd82457b90ce4a649015e80184ab8a6459865a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.6
|
Security for coms-consume-roan 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.