joblogic-automation-sdk
Reusable SDK for Joblogic automation projects. Provides common infrastructure: Jicro client, audit logging (Cosmos DB), Slack/Teams notifications, PostgreSQL helpers, auth middleware, and shared enums/utilities.
Installation
# Full install (all extras)
pip install "joblogic-automation-sdk[all] @ git+https://joblogicltd@dev.azure.com/joblogicltd/JobLogic%20Automations/_git/joblogic-automation-sdk@uat"
# Core only (JicroClient, ExecutionResult, config)
pip install "joblogic-automation-sdk @ git+https://joblogicltd@dev.azure.com/joblogicltd/JobLogic%20Automations/_git/joblogic-automation-sdk@uat"
# Selective extras
pip install "joblogic-automation-sdk[audit,db] @ git+https://joblogicltd@dev.azure.com/joblogicltd/JobLogic%20Automations/_git/joblogic-automation-sdk@uat"
Quick Start
from joblogic_sdk.jicro import JicroClient, JicroError
from joblogic_sdk.config import get_settings
async with JicroClient() as client:
result = await client.execute(
tenant_id=get_settings().tenant_id,
service_name="core",
message_signature="SearchJobMsg",
payload={"searchText": "example", "pageSize": 10},
)
Modules
| Module | Import | Extra |
|---|---|---|
| Config | from joblogic_sdk.config import get_settings |
(core) |
| Jicro Client | from joblogic_sdk.jicro import JicroClient, JicroError |
(core) |
| Execution Result | from joblogic_sdk.models import ExecutionResult |
(core) |
| Database | from joblogic_sdk.db import query, execute |
db |
| Notifications | from joblogic_sdk.notifications import slack_notification, teams_notification |
(core) |
| Audit | from joblogic_sdk.audit import AuditManager, AuditData, audit_router |
audit |
| Auth | from joblogic_sdk.auth import get_tenant_id |
auth |
| Common | from joblogic_sdk.common import EntityType, AuditAction, AuditStatus |
(core) |
Environment Variables
| Variable | Module | Description |
|---|---|---|
JICRO_BASE_URL |
jicro | Jicro API base URL |
JICRO_AUTH_TOKEN |
jicro | Jicro auth token |
TENANT_ID |
config | Single-tenant automations |
DATABASE_URL |
db | PostgreSQL connection |
AUDIT_MONGODB_CONNECTION_STRING |
audit | Cosmos DB (MongoDB API) connection |
AUDIT_DB_NAME |
audit | MongoDB database name |
AUDIT_COLLECTION_NAME |
audit | MongoDB collection name |
SLACK_ENABLED |
notifications | Enable Slack (true/false) |
SLACK_SUCCESS_WEBHOOK |
notifications | Slack success webhook |
SLACK_FAILURE_WEBHOOK |
notifications | Slack failure webhook |
SLACK_PARTIAL_FAILURE_WEBHOOK |
notifications | Slack partial failure webhook |
TEAMS_ENABLED |
notifications | Enable Teams (1/0) |
TEAMS_WORKFLOW_URL |
notifications | Teams workflow webhook |
APPLICATION_ENVIRONMENT |
config | Environment name |
IDP_CLIENT_ID |
config | OAuth2 client ID |
IDP_AUTHORITY |
config | IDP authority URL |
SCHEDULER_CRON_HOUR |
config | Timer cron hour |
SCHEDULER_CRON_MINUTE |
config | Timer cron minute |
Development
# Install with dev dependencies
pip install -e ".[all,dev]"
# Run tests
pytest tests/ -v
Metadata
Release files for joblogic-automation-sdk 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 | |
|---|---|---|---|
| joblogic_automation_sdk-0.1.0.tar.gz | 29.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| joblogic_automation_sdk-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 61.0 kB
Release files / joblogic_automation_sdk-0.1.0.tar.gz
| Download URL | joblogic_automation_sdk-0.1.0.tar.gz |
|---|---|
| Size | 29.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c8191f8d59ce13e2691df829c9e15c2c4bd451a569c5fa8d3362651f29378269
|
|
BLAKE2b-256 checksum How to use checksums |
c3c463db6ab0e93f9a58739520ff1f129f7f81b5d2cefa6ddc34d983bd8f27a8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.9
|
Release files / joblogic_automation_sdk-0.1.0-py3-none-any.whl
| Download URL | joblogic_automation_sdk-0.1.0-py3-none-any.whl |
|---|---|
| Size | 32.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9e756dcfae2b9e1d13d8ea0d26c0d9e56058824f10f2919d1413c516766085f1
|
|
BLAKE2b-256 checksum How to use checksums |
c8a31671c0df7b38a6b577947b48da955217357c70df684551d9224101b44490
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.9
|