SDK for building baqup backup agents in Python
Project description
baqup-agent
SDK for building baqup backup agents in Python.
⚠️ This is a placeholder package. Full implementation coming soon.
What is baqup?
baqup is a container-native backup orchestration system. Agents are stateless containers that perform backup and restore operations on behalf of the controller.
This SDK provides everything needed to build a compliant baqup agent:
- Contract types -
ExitCode,AgentState,LogLevel - Structured logging - JSON logs with required fields
- Redis communication - Bus client with filesystem fallback
- Heartbeat management - Background thread with intent signalling
- Staging utilities - Atomic writes, checksums, path validation
- Secret handling - Wrapper preventing accidental exposure
Installation
pip install baqup-agent
Usage (Preview API)
from baqup_agent import ExitCode, AgentState, LogLevel
# Exit codes are already available
print(ExitCode.SUCCESS) # 0
print(ExitCode.USAGE_CONFIG_ERROR) # 64
# Agent states
print(AgentState.RUNNING) # 'running'
# Secret wrapper (available now)
from baqup_agent import Secret
password = Secret("my-secret-password")
print(password) # [REDACTED]
print(password.reveal()) # my-secret-password
Contract Compliance
This SDK implements the baqup Agent Contract Specification:
| Section | Feature |
|---|---|
| §1 Lifecycle | State machine, signal handling |
| §2 Config | Environment variable loading |
| §3 Communication | Redis protocol, fallback |
| §4 Output | Atomic completion, manifests |
| §5 Errors | Exit code taxonomy |
| §6 Observability | Structured logging |
| §7 Security | Path validation, secrets |
Related Packages
| Package | Description |
|---|---|
baqup-schema |
Schema validation |
baqup-agent |
Agent SDK (this package) |
Links
License
Fair Source License - see LICENSE for details.
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
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 baqup_agent-0.0.1.tar.gz.
File metadata
- Download URL: baqup_agent-0.0.1.tar.gz
- Upload date:
- Size: 4.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b455f736e163651b58c82a6f5ba6cb7d325ff16d17ffc4db61e32b9a543df8b6
|
|
| MD5 |
bf73326a999b891280316b58edb93070
|
|
| BLAKE2b-256 |
a9fa40def33b0d1389ff0812fbfc89b2c98df8564bec34f1e68615af368649ac
|
File details
Details for the file baqup_agent-0.0.1-py3-none-any.whl.
File metadata
- Download URL: baqup_agent-0.0.1-py3-none-any.whl
- Upload date:
- Size: 5.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
63a99abae21816c10f9322394426b554b382c651cbc261df68bd63f58638b898
|
|
| MD5 |
21bed12b2c36f53d23e75e2259a6921c
|
|
| BLAKE2b-256 |
f0ccabfacb93ce4c9a78d58f1d9e607d1f76260ca2ad697361963cfab07919f5
|